学号:012091034001课程设计题目超市收银数据库设计学院计算机科学与技术学院专业计算机科学与技术专业班级计算机009班姓名旭指导教师耿枫2012 年7 月 4 日目录课程设计任务书 (2)超市收银数据库设计 (3)1.系统描述: (3)1.1设计内容: (3)1.2可行性分析: (3)1.3上下文环境图: (3)2系统目标和建设原则: (3)2.1系统目标: (4)2.2建设原则: (4)3支撑环境规划: (5)3.1网络逻辑结构: (5)3.2软件环境及开发工具: (6)4系统总体结构: (6)4.1总体DFD图: (7)4.2功能结构: (8)4.2.1功能结构图: (8)4.2.2主要功能说明: (10)4.3数据库结构: (10)4.3.1数据字典: (10)4.3.2E-R图: (13)4.3.3关系数据库模式: (16)5总体实施计划: (18)6研制报告: (22)6.1研制过程: (22)6.2规划评价: (23)6.3收获体会: (23)7参考文献: (23)本科生课程设计成绩评定表 (24)课程设计任务书学生姓名:旭专业班级:计算机009班指导教师:耿枫工作单位:计算机学院题目:超市收银数据库设计初始条件:用来在超市中实现顾客结帐功能,并能反映出指定时段中超市的销售情况等信息。
收银员通过输入商品条码,能够在帐单上打印出商品单价及总额等各项信息,并且能够处理商品打折等各种情况。
要求完成的主要任务:1.根据上述的初始条件,进行调查分析并设计适当的属性。
设计一个仓库数据库,DBMS可选Ms SQL Server、Access、VFP等。
2.完成课程设计说明书,其格式遵守学校今年的新规定。
主要内容包括:需求分析,概念设计,逻辑设计,物理实现等。
3.基于该数据库,最好实现一个或多个应用程序(自己确定功能),程序设计语言(工具)任选。
这一项是选作,不作硬性要求。
时间安排:本学期第20周:1.消化资料、系统调查1天2.系统分析1天3.总体设计,实施计划2天4.撰写报告1天指导教师签名:年月日系主任(或责任教师)签名:年月日超市收银管理系统数据库设计1系统描述1.1设计内容超市收银管理系统数据库设计:用来在超市中实现顾客结帐功能,并能反映出指定时段中超市的销售情况等信息。
收银员通过输入商品条码,能够在帐单上打印出商品单价及总额等各项信息,并且能够处理商品打折等各种情况。
1.2可行性分析设计背景超市是一个很繁忙的地方,每天有很多的顾客要买东西,收银员要和很多的顾客结算,并且要给这些结算存档,以便日后查看。
如果只用人工的方法去处理这些结算和计算的数据将是一件很繁琐的事情,将投入大量的人力物力,为了解决这个问题,实现科学化、现代化的超市收银管理,我们就必须设计开发超市收银系统,并用于实践。
而超市收银管理系统是对超市的收款信息进行管理的计算机网络软件系统,它可完成超市中各种货品的收银工作,并对可以对特定时间段的出售信息进行查询。
1.3上下文环境图图1.1是一幅上下文环境图,它演示了该超市收银管理系统的外部实体和系统接口。
图1.1超市收银管理管理系统的上下文环境图2系统目标和建设原则2.1系统目标近期目标该系统可以使超市的收银工作变得轻松了许多,超市的管理员不必将大量的时间用在对厚厚的账本的管理上,可以直接查询数据库来相关的信息。
因此,开发超市收银系统可以提高收银员和管理员的工作效率,利用计算机的方便、快捷、友好的操作环境,来完成相对比较复杂、繁琐的事务,使用户可以轻松地完成对商品的查找等操作,大大提高工作效率。
远期目标随着超市规模的扩大,商品种类的日益增加,对商品库存的管理越来越复杂,功能也需要不断的加强和扩充,本系统希能够通过不同版本的升级来完成业务功能的不断扩充和更新以完成更加复杂的工作。
最终目标是方便超市收银员和管理员的各项操作。
2.2建设原则在本次课程设计中,应该以实际情况为主,在此基础上实现对实际情况的抽象,并设计和建立数据库,完成应用程序界面的人性化地编写。
应该把所学的知识应用于实践。
比如怎样使设计的数据库满足第一范式、第二范式、第三范式、数据完整性约束等等条件。
另外,对数据库的设计因遵循以下步骤:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施以及数据库运行和维护。
最后,应该严格按照课程设计任务书和指导老师的要求,详细认证地完成对本次课程设计说明书的撰写。
3支撑环境规划3.1网络逻辑结构该超市收银管理系统系统是为了方便超市收银员和管理员的操作而设计的,为每个商品管理人员和收银员配备了一台电脑,并把所有的电脑联入超市局域网内,以方便管理。
为了对数据的安全性、准确性地保护,这些电脑都共享一个后台数据库。
本系统采用下图局域网模式来构建的:图3.1 超市收银管理系统的局域网逻辑结构设计3.2软件支撑环境及开发工具软件支撑环境本系统是在下列系统配置下完成的:(1) 操作系统: Microsoft Windows XP Professional (SP2)(2) 中央处理器(CPU): Inter(R) Pentium(R) 4 CPU 2.40GHz Prescott Processor(3) 主板: P4i65PE-M(4) 显卡: NVIDIA GeForce FX 5200 (显存128M)(5) 硬盘: SAMSUNG SP0812C 80G 7200转/分(6) 内存: DDR 400(PC3200) 512MB开发工具本系统是在下列开发环境下完成的:(1) 应用程序开发环境:Microsoft Visual Studio 6.0/Microsoft Visual C++ 6.0(2) 后台数据库开发工具:Microsoft SQL Server 2000(3) 文档开发环境:Microsoft Office Word 20034系统总体结构4.1 总体DFD 图图4.1 超市收银管理系统总体数据流图4.2 功能结构在此次设计中,依据系统结构化设计方法,把本系统划分为若干个功能模块,某些模块又可以划分为多个子模块,某些子模块又可划分为多个二级子模块,经层层分解后,最小的子模块的功能便十分明确和简单了。
这样做,不仅展现了一个应用软件系统的整体性和层次性,而且通过屏幕对每个应用模块有明显的提示,在这些提示下,用户可以方便地进入系统的每一层进行操作,可以非常方便地使用这一数据库应用系统。
4.2.1功能结构图(a)(b)(c)(d)(e)图4.2超市收银管理系统功能结构图(a)~(e)4.2.2主要功能说明本系统主要分成四个功能模块,每个模块都独立的完成了自己的功能,以下是对各功能模块的说明:(1) 用户信息管理功能。
该功能模块可以实现系统用户对自己基本信息的修改,不过只限于对登录密码的修改,因为用户帐号都是超市为了方便管理而事先分配好了的,是不能改变的。
出于对用户信息的安全性考虑,只能修改当前登录的用户的密码。
(2) 商品入库信息管理功能。
该功能模块是实现对即将入库的商品的统计,由于商品信息的庞大、复杂,在入库前需要对其进行详细地记录管理,为商品的库存管理打下良好的基础。
需要记录的内容有:入库商品的商品号、名称、类型、价格、同类商品的数量、采购员、验收员、生产厂商、产地、入库时间等。
同时能够实现对商品入库信息的添加、修改、删除和查询功能。
(3) 商品库存信息管理功能。
该功能模块是当入库的商品放入超市后,对库存商品进行统计管理,主要入库信息来源于(2)中的商品入库信息记录。
需要记录的内容有:库存商品的名称、类型、入库价格、销售价格、库存量、入库时间、有效期等,同时能够实现对商品库存信息的添加、修改、删除和查询功能。
在商品批量销售后,在表中能够同时删除相应的商品的数量。
(4) 商品销售信息管理功能。
该功能模块是把要销售的商品从超市中取出来,并对库存商品进行相应的记录管理,并且把顾客的购买信息打印下来给顾客做凭证。
需要记录的内容有:出售商品的名称、类型、销售价格、数量、销售时间等,同时能够实现对商品销售信息的添加、修改、删除和查询功能。
4.3 数据库结构4.3.1数据字典注:数据字典中的某些模块在初期设计中尚未实现。
4.3.2 E-R 图为了把系统的数据要求清楚、准确地描述出来,系统分析员通常建立一个概念性的数据模型(E-R 图)。
它描述了从用户角度看到的数据,它反映了用户的显示环境,而且与在软件中的实现方法无关。
以下便是本系统的E-R 图表示:(a)上图(b)下图(c)(d)图4.3 超市收银管理管理系统E-R图(a)~(d)4.3.3关系数据库模式在本系统的数据库设计中,设计了四个基本数据库表:用户资料表USERS,商品入库资料表GOODS_IMPORT,库存商品资料表GOODS_INFO,商品销售资料表GOODS。
具体结构图如下列表所示:表4.1 USERS表表4.2 GOODS_IMPORT表表4.3 GOODS_INFO表表4.4 GOODS表5总体实施计划(1) 首先,根据所作的需求分析,完成基本的功能界面设计,并且把界面设计成方便、易用和人性化的用户界面。
(2) 根据(1)中界面设计,把每个功能通过代码来实现,以完成功能的定义。
(3) 根据4.3.3关系数据库模式中的数据库表的设计,并通过SQL Server 2000建立数据库。
(4) 把设计好的界面和数据库连接起来,使整个系统能够运行。
使用ODBC建立连接配置:测试:(5) 选取几个典型的例子对该系统进行测试,不断地发现问题和解决问题,最终使该系统能够正常的运行,完成相应的任务。
(6) 以下是该系统的主要界面,用MFC进行设计的:图5.1 登录界面图5.2 主控界面图5.3 收银员界面图5.4 查询已出售商品界面这些主要界面代表了系统中的主要风格,功能和界面都大致与这些界面设计的一样。
所以不再一一列出。
6 研制报告6.1 研制过程(1) 需求分析首先,我在拿到课程设计题目时就开始做前期的需求分析,比如详细调查现实世界里的超市商品管理是怎么样的一个系统、它有哪些功能、明确它的用户、需要对哪些数据进行操控以及该系统要做什么不能做什么等等,并画出系统高层抽象图以及简要的数据流图和数据字典来帮助分析。
(2) 概念结构设计其次,我根据搜集的信息资料掌握一个大概的系统框架,把框架分成几个小的功能模块,并逐个的进行分析设计。
在不断的返回进行需求分析时,进行数据抽象、局部视图的设计(分E-R图),把个局部视图集成(总E-R图),并优化E-R 图。
(3) 逻辑结构设计然后,把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。