




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
超市进销存系统设计与开发(完整版)资料(可以直接使用,可编辑优秀版资料,欢迎下载)
超市进销存系统设计与开发超市进销存系统设计与开发(完整版)资料(可以直接使用,可编辑优秀版资料,欢迎下载)1.
引言
1.1
项目来源(受客户委托、基于问题探索、对已有应用模式的改进)定稿时去掉原始超市的管理方法往往都采用员工的手工纸张管理方式。当发生交易的时候,销售人员需要到记录商品价格的记账本中查询客户所选的每种商品的价格,根据每种商品的单价及数量计算出该商品金额小计,并算出该客户所选购的商品的金额总计,在收到客户的交款之后,根据收款额及本次购买的总额,算出该找还给客户的零钱。该笔交易要由销售员手工记录在流水账中。当该笔交易完成后,销售员要通知仓库管理员对应调整相应的库存并将订单记录给仓库管理员做参考。仓库管理员根据订单的记录在库存记录表中减去相应的交易量,计算出当日每种商品的库存,当商品的库存量小于最小库存量时,通知相关的负责人,及时做出进货的决策。做出进货决定后,从供应商的记录表中找到该商品的供应商及相关信息,联系供应商并向供应商发出订单,进行订货,补充不足的库存。所有的信息由相应的管理人员记录在纸张数据库中,当需要查找信息时要翻阅厚厚的纸张,数据修改及查询极不方便,数据保存的安全性也比较低,数据容易丢失。目前,无论公司还是企业对于货物都实行了信息化管理,以提高管理水平和工作效率,同时也可以最大限度地减少手工操作带来的错误。特别是中小型超市原有的系统非常的简单,只有单一的收银系统,很多的功能都无法实现,也经常出现库存混乱,财物数据不一致,单据丢失等问题,带来不必要的经济损失和人力资源的浪费。给管理者的管理和统计分析工作带来很多的不便。综合以上的现行系统的分析,超市需要开发一个具有进销存一体化的管理系统,以实现进货、销售、库存及报损的自动化管理。节省时间及人力物力,给超市带来更大的效益。1.2
任务目标(仅完成分析与设计、建立原型系统、实现局部应用、实现整体应用)新的超市进销存管理系统是在原有系统的基础上,进行详细系统分析及设计的,以优化业务流程及数据流程,完善系统功能为前提,使用VB开发语言和Access数据库开发的一个更适合企业使用,能给企业节省更多资源,制造更多利润的安全的进销存管理系统,该系统实现了如下目标:(1)为企业员工节省工作时间和体力;(2)方便员工快捷的进行采购,销售、库存及报损的管理;(3)给管理者提供更全面更详细的精确的数据,帮助管理者做出正确的分析和决策,提高管理质量和效率;(4)保证数据的安全性和整合性;(5)系统特别提供了数据库管理的功能,允许具有管理权限的人员对系统数据库进行操作,包括添加、删除、修改记录;2.
项目规划
2.1
项目资源
硬件设备(计算机、打印机、扫描仪、读卡器、网络连接器等)超市进销存管理系统的硬件软件要求都是能够容易达到的,配置要求如下表所示:表1系统软硬件配置要求硬、软件配置CPUAMD3800+,双核内存1G硬盘160G监视器Windows系统支持的监视器,可以显示32位打印机Windows98,WindowsXP,WindowsNTServer/Workstation支持的各类打印机操作系统中文WindowsXP网络协议TCP/IP
软件环境(操作系统、数据库引擎、支撑软件)(1)操作系统:Windows2003/NT4.0/XP(2)数据库:ACCESS2003
软件工具(分析设计建模工具、软件开发工具等)[1]数据库管理系统:ACCESS2003
[2]编程工具:VisualBasic6.0[3]画图工具:visio20032.2
项目规划
任务描述(使用任务树进行任务分解,并说明每项任务的内容、目标等)系统开发步骤及本系统采用自上而下的项目开发步骤,整个过程主要分为三个阶段。图1任务树第一阶段是系统分析阶段。它包括项目研究、需求研究和项目设计,主要是去各大中小超市进行调查分析,查阅相关资料和构思超市进销存系统的项目方案,包括系统的业务需求的详细分析与系统的总体规划、设计,做出系统需求分析说明书;需求规格说明书;概要设计说明书;详细设计说明书;项目实施计划书。第二阶段是开发阶段。它包括确定超市进销存系统的设计方案,逐步开始方案实施。主要是对超市进销存系统的总体架构、软件结构、数据结构及采购、销售、库存及报损的功能模块系统等内容进行详细设计及界面编码的实现。第三阶段是系统测试和系统评估阶段。主要是进行数据准备、数据初始化、单元测试、模块测试、压力测试、整合测试、超市进销存系统的安装,系统调试等工作。最后邀请指导老师对系统进行评估。
进度安排(设置任务步骤、时间分配、相关资源与里程碑标志等,可使用甘特图或任务网络图直观说明)根据任务描述,在对该系统进行总体规划的基础上进行一个详细的安排。全部开发过程预计用时12周,具体用时分配如下:2009年3月4日至2009年3月102021年3月10至20092021年3月16至2009年4月22日:对整个系统进行可行性分析、业务2009年4月22日至2009年5月22009年5月202009年5月25由于外在因素实际的系统设计是交叉进行的,数据库设计和信息系统开发并行,系统运行和系统测试也是重叠进行。设计中采用原型开发法边设计边测试边运行,测试失败再修改,因此时间进度计划与分配并不完全耦合。活动代号活动内容周次123456789101112A需求分析B生产过程设计C业务流程分析D数据流程分析E数据库设计F信息系统开发G系统测试H系统运行图2系统开发的进度计划3.
系统需求分析
3.1
业务需求
业务组织(说明用户机构的组织结构)超市在总经理办公室的领导下,共有五个职能及业务部门。五个部门分别为销售部门、采购部门、报损部门、财务部门以及仓库管理部门。对超市的组织结构调查分析后,画出该超市的组织结构图。图3系统组织结构图图3中的组织结构的各组成部分的目标职责如下:(1)总经理:企业的法人代表,总管企业各项事务对企业的发展负责。对于系统中的重要信息登录与修改,均要由总经理批准。(2)销售部:由于超市是商品零售行业,对应的客户量大,商品品种多而杂,因此销售部门是组织结构中最重要的、人数最多的部门。销售部门的负责人为销售部经理,负责销售员的协调分工与安排,并负责对员工技能素质的监督与培训。销售员负责所有的销售交易工作。(3)采购部:负责缺货或即将缺货的商品的采购工作。采购员接收到采购需求的同时,确定所需的采购商品、采购数量及供应商。采购部经理审核并确认采购信息。采购员将采购单交给供应商订货,并交给报损部门准备接收时的验收工作。(4)报损部:报损部门负责对应采购单的商品的验收入库及对库存商品质量进行检查及上报。当采购的商品到货时,包损员负责验收商品的数量及质量,合格的商品才能直接入库,否则退回给供应商,再次补货。当检查出库存商品中存在有质量问题时及时上报并进行处理。(5)财务部:监督公司的各项财务信息,由一人负责采购及其他财务需要时的财务出纳工作,一人负责销售收入等的核算工作。并对资金流的入出做出相应的统计分析,交给上级领导察看。(6)仓库管理部门:仓库负责人负责所有商品的存放位置的安排与协调。各仓库管理员对本仓库的所有商品的库存进行看管,以保证物资的安全。
业务定义(说明用户机构的业务边界与业务规则。可使用顶层数据流图或用例图等说明各项业务及其应用接口)数据流程图(DateFlowDiagramDFD)是系统逻辑结构最主要的组成部分,它反映出系统的主要功能、系统与外部环境间的输入输出、系统内部的处理、数据传送、数据存储等情况。通过系统功能需求分析、组织结构分析以及该系统的业务流程的分析,分析出系统的数据流图。(1、这一段文字描述超市和用户、供应商之间的关联关系,不要说数据流程图的定义;2、下图线没画直)图4顶层关联图
业务流程(说明用户的业务步骤。可使用业务流程图或活动图进行直观描述)系统的构成为销售、采购、库存和报损模块。由于采购和销售业务的发生,引起库存及财务信息的变化。当每个客户购买商品的同时,销售单据产生,库存及财务信息根据销售单相应的减少或增加。当查询库存时对于库存少于安全库存的商品进行进货报警。采购部门根据进货报警决定是否采购及采购数量。确定需要采购的商品则输入采购订单,将采购订单交给供应商订货,同时将采购单交给报损部门准备做到货时的验收工作。商品到货时报损部门根据采购单及到货单来进行验收工作,验收合格的商品入库。对于采购、销售过程中发生的各笔财务信息可以通过财务信息查询模块来查询。根据以上的总体业务分析,系统的总体流程图如图6 处理 外部实体数据流 数据存储 图5系统总体流程图系统采购模块分为采购订单输入、采购订单查询、验收信息输入三个功能。采购订单输入及验收信息输入又分别有增加、修改、删除的功能。当采购信息输入完毕后,采购部经理进行审核,若采购数量等信息有所变化时,通过修改功能修改采购订单,若经采购部经理决定,该笔采购不需要的时候,通过删除的功能来删除采购订单。验收员若发现验收工作中有不正确的数据的时候,可以通过修改、删除的操作来处理。已经录入完毕的信息可以通过查询功能来查询结果。根据对于采购模块的增、删、改业务分析,该业务的系统流程图。如图7图6系统采购业务流程图商品入库业务流程。首先是由采购部经理下达本超市的采购计划。再由采购人员制定订单向供应商发送订单,当商品到达时,报损部门要组织收货人员、报损员和仓库管理人员来共同收货,检验商品的质量和数量。收货完毕,将合格送货单交系统管理人员打印入库单交仓库管理部门。如图8所示。图7商品入库业务流程图商品报损业务流程。商品报损是对仓库中没有价值、卖不出去的商品进行处理。首先由报损员填写报损单,由报损部经理签字通过。再由收货员和仓库管理人员共同对报损商品进行审核,通过后在报损单上签字,交仓库管理人员进行库存更新,打印出库单交报损部门。如图9所示。图8商品报损流程图仓库盘点业务流程。仓库盘点是对商品实际库存与系统库存的核对,并统计盘点周期内商品盈亏情况,以及时调整营销策略。仓库盘点首先由仓库管理人员组织本部门员工进行商品清点,再陪同收银员进行商品信息的扫描和数量的输入,进行信息的上传。上传之后由操作员核对商品库存差异,对重大差异的商品通知仓库管理部门进行复盘,检查是否有盘点错误。最后统计和分析此段盘点周期内仓库管理部门的差异情况交财务进行盈亏结算。如图10所示。图9仓库盘点业务流程图3.2
功能需求
功能组成(使用功能树说明功能组成)本超市进销存管理系统主要完成有基本信息维护、进货管理等几个功能,各功能模块的描述及对应的功能模块图、数据流程图及各系统模块流程图,分别表示如下:(1)基本信息的维护●商品类型的建立与维护,包括商品类型的新建、修改和删除等。●商品基本信息管理:包括商品基本信息的新建、修改和删除等。●供货商信息管理:包括供货商信息的新建、修改和删除等。●管理员信息管理:系统管理员的添加、删除和修改密码等。(2)进货管理●商品进货信息管理:商品进货信息包括商品进货数量、单价、供货商等。商品进货管理功能完成进货信息登记、修改和删除等。●分类查看:可以根据商品类型来查看某种商品的进货情况。●更新库存:进货信息的变动直接关系到库存的变化。●进货分析:列出当前进货量最多的前几项商品和进货量最少的前几项商品。●库存分析:列出当前库存量最多的前几项商品和库存量最少的前几项商品。(3)销售管理●商品销售信息管理:商品销售信息包括商品销售数量、单价、统计日期等。商品销售管理功能完成销售信息登记、修改和删除等。●分类查看:可以根据商品类型来查看某种商品的销售情况。●更新库存:销售信息的变动直接关系到库存的变化。●销售分析:列出当前销售量最多的前几项商品和销售量最少的前几项商品。(4)报损管理●商品报损信息管理:商品报损信息包括商品报损数量、报损原因等。商品报损管理功能完成报损信息登记、修改和删除等。●分类查看:可以根据商品类型来查看某种商品的报损情况。●更新库存:报损信息的变动同样直接关系到库存的变化。●报损分析:列出当前报损量最多的前几项商品和报损量最少的前几项商品。对各功能模块的功能描述及系统流程图如图11:图10系统功能模块图
功能逻辑(通过数据流细化说明功能逻辑)超市在业务活动过程中,会伴随着数据的流动。也就是信息的传递和反馈过程。在超市进销存管理过程中,根据上述对超市业务流程的分析得出系统的数据流程图。对系统数据流程的具体分析如下:1.商品采购管理数据流。在这个过程中首先是由是采购部经理发出的,为要货计划或者是采购计划,再由采购员向供货商发出订货单。供应商根据订货单信息将商品送到超市,报损部门对商品进行验收,对不合格商品退回给供应商,合格产品入库。然后再将生成入库单交操作员进行商品数据库信息更新和财务部进行财务管理,2.销售管理数据流。商品销售数据流首先是客户发出的,客户对商品的购买产生销售单,客户退货时将生成回收单,将销售单与回收单一并交给财务部门进行核算和财务更新管理。3.仓库管理数据流。仓库管理包括商品的入库和出库,仓库管理人员根据出入库单进行商品的出入库处理并及时进行库存分析。4、报损管理数据流。报损部门根据报损单单据对商品是否符合报损要求进行审核,并将报损单据交给财务部门及时进行账务更新。图11超市进销存管理系统顶层数据流程图图12对“超市采购过程处理”细化后的1层数据流程图图13对“超市销售过程处理”细化后的1层数据流程图图14对“超市仓库过程处理”细化后的1层数据流程图图15对“超市报损处理”细化后的1层数据流程图3.3
数据需求
数据关系(使用ER图说明现实数据关系)对于整个超市进销存系统的详细分析,将系统中可能用到的数据表进行设计和提炼,并分析各表之间的实体关系,绘制出超市进销存系统的详细E-R图,如图16图16系统E-R图
数据定义(对ER图中的数据给予细节说明)数据字典是关于数据的信息集合,也就是对数据流中包含的所有元素的定义的集合。数据流图和数据字典共同构成系统的逻辑模型。数据字典的任务是对于数据流图中出现的所有被命名的图形元素在数据字典中作为一个词条加以定义,使得每一个图形元素的名字都有一个确切的解释。数据字典包括五部分:数据元素、数据流、数据处理、数据存储、外部项。本系统主要的数据字典如下:表2采购订单数据字典数据存储名:采购订单信息数据存储编号F1说明:对每一笔订单的订单编号、供应商、采购的商品、采购数量、订单金额、订单交货日以及输入订单的时间和员工的代码等信息进行记录。输入数据流:采购订单数据描述:订单编号、供应商代码、商品代码、采购数量、商品采购单价、该商品采购金额、订单交货预定日、订单状态区分、订单输入日期、订单输入者ID表3销售单数据字典数据存储名:销售单信息数据存储编号F2说明:对每一笔订单的订单编号,若会员则记录会员代码,销售的商品及数量、销售金额、销售单状态以及销售的时间和员工的代码等信息进行记录。输入数据流:销售单数据描述:销售单编号、客户类型(会员,非会员)、会员代码、商品代码、数量、商品售价、该商品金额、销售单的当前状态(表明订单是否被退货取消等)、销售单发生日期、销售单发生日期、员工ID表4库存记录数据字典数据存储名:库存记录数据存储编号F3说明:对商品的库存位置,库存数量等信息记录。输入数据流:采购定单输出数据流:销售单数据描述:仓库位置、商品代码、在库数量表5库存调整记录数据字典数据存储名:库存调整记录数据存储编号F4说明:记录库存手动调整的信息,包括调整代码、调整类别、调整的仓库位置、商品代码、调整数量等等。数据描述:调整代码、库存调整类别(增加、减少)、调整的商品代码、调整数量、调整日期、调整担当者。表6商品记录数据字典数据存储名:商品记录数据存储编号F5说明:对超市所销售的所有商品的详细信息记录保存。包括商品的代码、名称、商品种类等等。数据描述:商品代码、商品名称、商品种类、保存场所、销售价格、最低安全库存。表7交易对象记录数据字典数据存储名:交易对象信息数据存储编号F6说明:对系统中关系到的各种交易对象(包括库存)的详细信息保存。记录代码、名称、地址、等等。数据描述:交易对象代码、交易对象名称、交易对象种类(供货商、会员客户、库存位置)、交易对象地址、、、会员积分。表8报损记录数据字典数据存储名:报损记录数据存储编号F7说明:对商品的报损时间、报损单价和报损数量等信息记录。数据描述:报损单编号、商品代码、报损数量、报损日期、报损单价表9系统用户信息数据字典数据存储名:系统用户信息数据存储编号F8说明:记录该系统的使用者ID、名称、密码、权限级别等等数据描述:用户ID、用户名称、密码、用户权限级别。4.
系统结构设计
4.1
总体框架(涉及系统工作模式,组成系统的构件及其关系等。可通过框架图、组件图直观说明)根据面向对象和多层的设计思想,可得出如图17所示的结构设计图图17系统结构设计图4.2
软件结构
软件模型(使用软件结构图、类关系图、对象协作图等进行描述)软件结构图使用矩形框表示模块,使用带箭头的直线段连接上下级模块,以表示上级模块对下级模块的调用。此外,软件结构图还可以在调用箭头旁使用带注释的箭头,以表示上级模块在调用下级模块时参数的传递与结果的返回,该系统的软件结构图。超市进销存系统为顶层模块,其调用基本信息的维护、进销存管理、报损管理及经营分析四个模块,以进行超市在进销存各项业务中商品的管理,基本信息通过对管理员、商品类型及供货商模块调用获得基本信息,进销存管理模块与报损管理模块通过商品的调用,对商品采购与销售中的商品数量、单价及报损原因等进行数据处理。图18系统软件结构图
模块定义(对功能函数或类体进行详细说明。可使用IPO图说明模块内部加工逻辑与接口该系统的各大模块可概括为四大模块,在分析模块定义的时候,首先分析系统的整个模块。系统的HIPO图。如下图19所示。图19系统的H图基本信息处理模块的IPO图系统名称:超市进销存系统模块名称:基本信息处理模块编号:1输入数据:有效的信息数据处理步骤:1.调用“基本信息输入”模块图20基本信息处理模块的IPO图进销存数据处理模块的IPO图系统名称:超市进销存系统模块名称:进销存数据处理模块编号:2输入数据:有效的进销存数据处理输出数据:经处理的进销存数据处理步骤:1.调用“进销存数据输入”模块图21进销存数据处理模块的IPO图报损数据处理模块的IPO图系统名称:超市进销存系统模块名称:报损数据处理模块编号:3输入数据:有效的报损数据处理输出数据:报损数据处理步骤:1.调用“报损数据输入”模块图22报损数据处理模块的IPO图经营分析模块的IPO图系统名称:超市进销存系统模块名称:经营分析模块编号:4输入数据:原始经营数据输出数据:有效的经营数据处理步骤:1.商品购买数量及单价2.商品销售数量及单价3.商品报损数量及单价4.商品库存=原始库存+购买量-销售量5.商品购买成本=购买数量*单价6.商品销售额=销售量*单价图23经营分析模块的IPO图基本信息输入模块的IPO图系统名称:超市进销存系统模块名称:基本信息输入模块编号:1.1输入数据:基本信息的原始数据处理步骤:1.商品名称、数量及单价等基本信息的整理和输入2.商品类型所包含的种类3.供货商名称4.管理员账号和密码图24基本信息输入模块的IPO图进销存数据输入模块的IPO图系统名称:超市进销存系统模块名称:进销存数据输入模块编号:2.1输入数据:商品进销存的原始数据处理步骤:1.商品进货数量、单价的登记、修改和删除2.商品销售数量及单价的新建、修改和删除3.商品库存量的存量的登记、修改和删除图25进销存数据输入模块的IPO图报损数据输入模块的IPO图系统名称:超市进销存系统模块名称:报损数据处理模块编号:3输入数据:有效的报损数据处理处理步骤:1.报损单数据审核2.商品报损数量、单价及原因的登记、修改和删除图26报损数据输入模块的IPO图4.3
数据结构
数据库模型(使用ER图说明数据表之间关系)根据数据项和数据结构,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。根据上面的设计规划出的实体有:商品类型信息实体、商品信息实体、商品单位信息实体、供应商信息实体、进货信息实体、销售信息实体、报损信息实体和管理员信息实体。各个实体具体的描述的E-R图如下。商品类型信息实体E-R图如图27示。图27商品类型信息实体E-R图商品信息实体E-R图如图28示。图28商品信息实体E-R图商品单位信息实体E-R图如图29示。图29商品单位信息实体E-R图进货信息实体E-R图如图30所示。图30进货信息实体E-R图销售信息实体E-R图如图31所示。图31销售信息实体E-R图报损信息实体E-R图如图32。图32报损信息实体E-R图
数据定义(涉及数据表、数据文件、数据视图,以及数据完整性、数据索引等)通过系统的数据需求分析,根据E-R图及E-R实体图可以得到系统中所包含的实体及相关属性,数据定义则是对数据的类型、长度及是否为空等属性进行进一步的说明,通过数据项描述来说明:表10商品类型数据项描述数据项含义说明类型长度取值范围取值含义与其他数据项逻辑关系商品类型号唯一标识int6识别商品类型关联商品类型名称商品类型名nvarchar50识别商品关联商品备注50标识商品表11商品信息数据项描述数据项含义说明类型长度取值范围取值含义与其他数据项逻辑关系商品编号唯一标识Int4识别商品关联商品名称用户名称nvarchar80标识商品商品介绍nvarchar255介绍商品关联商品名称商品类型IDInt4关联商品类型库存量Int10统计数量单位编号Int4关联商品单位备注nvarchar50表12商品单位数据项描述数据项含义说明类型长度取值范围取值含义与其他数据项逻辑关系商品单位编号唯一标识int4识别商品单位关联商品单位单位名称nvarchar10关联商品类型表13供货商信息数据项描述数据项含义说明类型长度取值范围取值含义与其他数据项逻辑关系供货商编号唯一标识int4识别供货商关联供货商名称供货商名称nvarchar50识别供货商关联供货商供货商简介nvarchar255介绍供货商备注nvarchar2000表14商品进货数据项描述数据项含义说明类型长度取值范围取值含义与其他数据项逻辑关系进货ID唯一标识int4识别商品关联商品名称供应商IDint4识别供应商关联供应商商品IDint4标识商品关联商品进货时间日期记录进货时间送货人姓名nvarchar20经手人姓名nvarchar20进货单价单精度型关联商品量购入量int操作员IDnvarchar20识别操作员关联操作员备注nvarchar50表15商品销售数据项描述数据项含义说明类型长度取值范围取值含义与其他数据项逻辑关系销售编号唯一标识int4识别商品关联商品名称商品IDint4标识商品关联商品登记日期日期售出数量nvarchar20卖出单价nvarchar20进货单价单精度型操作员IDnvarchar20识别操作员关联操作员备注nvarchar50表16商品报损数据项描述数据项含义说明类型长度取值范围取值含义与其他数据项逻辑关系报损编号唯一标识int4识别商品关联商品名称商品IDint4标识商品关联商品登记日期日期登记报损时间报损数量int4库存数量报损原因nvarchar255说明原因操作员IDnvarchar20识别操作员关联操作员备注nvarchar50表17管理员数据项描述数据项含义说明类型长度取值范围取值含义与其他数据项逻辑关系账号唯一标识Int20登录账号关联密码用户密码nvarchar50登陆密码关联用户名用户编号int4标识用户关联用户5.
系统详细设计
5.1
程序算法详细设计(对核心程序模块给出关键算法说明)该系统的主要模块包括商品的采购、销售及报损,分别用程序流程图来设计程序算法,其图形分别表示如下:图33进货信息管理模块程序流程图图34销售信息管理模块程序流程图图35报损信息管理模块系统流程图5.2
数据库详细设计
数据库环境配置(对于大型数据库,进行数据库环境配置说明)操作系统:MicrosoftWindowsXP数据库系统:ACCESS2003登陆ID是admin,密码为admin。系统开发语言:VisualBasic6.0企业版
表设计及其关系设置(表、字段、主键、索引、关系等情况的详细说明)数据库的概念结构设计完毕后,现在可以将上面的数据库概念结构转化为某种数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。从系统移植方便性考虑,此处采用Access数据库。进销存管理系统数据库中各个表的设计结果如表3~表10所示。每个表格表示在数据库中的一个表。表3为商品类型信息表(MerchandiseType)。表3商品类型信息表(MerchandiseType)列名数据类型字段大小必填字段默认值说明MT_Id_N自动编号长整型是商品类型号,递增,主键MT_Name_S文本15是商品类型名MT_Remark_R备注是备注表4为商品信息表(Merchandise).表4商品信息表(Merchandise)列名数据类型字段大小必填字段默认值说明MT_Id_N自动编号长整型是商品类型号,递增,主键MT_Name_S文本80是商品名称MT_Introduce_S文本255是商品介绍M_TypeId_N数字长整型是1商品类型IDM_Storage_N数字长整型是0库存量M_UnitId_N数字长整型是1单位编号MT_Remark_R备注是……备注表5为商品单位信息表(Unit)。表5商品单位信息表(Unit)列名数据类型字段大小必填字段默认值说明U_ID_N自动编号长整型是单位编号,递增,主键U_NAME_S文本10是单位名称表6为供货商信息表(Provider)。表6供货商信息表(Provider)列名数据类型字段大小必填字段默认值说明P_Id_N自动编号长整型是供货商编号,主键P_NAME_S文本50是供货商名称P_Introduce_S文本255是……备供货商简介P_Remark_R备注是……备注表7为商品进货信息表(Buy)表7商品进货信息表列名数据类型字段大小必填字段默认值说明B_ID_N自动编号长整型是进货ID,递增,主键B_ProviderId_N文本长整型是供应商IDB_MerchandiseId_N数字长整型是商品IDB_StockDate_D日期短日期是Date()进货时间B_Deliver_S文本20是送货人姓名B_Consignee_S文本20是经手人姓名B_Count_N数字长整型是0购入量B_StockPrice_N数字单精度型是0进货单价B_OperatorId_S文本20是操作员IDB_Remark_R备注是……备注表8为商品销售信息表(Sell)。表8商品销售信息表(Sell)列名数据类型字段大小必填字段默认值说明S_ID_N自动编号长整型是销售编号,递增,主键S_MerchandiseID_N数字长整型是商品IDS_RegDate_D日期短日期是Date()登记日期S_Count_N数字长整型是0售出数量S_SellPrice_N数字单精度型是……卖出单价S_QperatorId_S文本20是操作员IDS_Remark_R备注是……备注表9为商品报损信息表(Dispose)。表9商品报损信息表(Dispose)列名数据类型字段大小必填字段默认值说明D_ID_N自动编号长整型是报损编号,递增,主键D_MerchandiseID_N数字长整型是商品IDD_Regdate_D日期短日期是Date()登记日期D_Count_N数字长整型是0报损数量D_Reason_S文本255是……报损原因D_OperatorId_S文本20是操作员IDD_Remark_R备注是……备注表10管理员信息表(Admins)。表10管理员信息表(Admins)列名数据类型字段大小必填字段默认值说明A_Account_S文本20是帐号,主键A_Pwd_S文本20是密码A_IsDefalt_B是/否是False是否是默认用户根据以上各表,得出各表间关系如下图所示:图36表间关系图5.3界面设计(怎么没序号)系统登录模块:用户正确输入自己账号、类型、密码后就登录进入系统主界面。登录界面如图38考虑系统安全性,数据一致性,系统为每一种不同身份登录的人员设置了不同的操作权限。如以管理员身份登录后,在主界面的业务处理菜单下可以看到进货单填写、销售处理、出入库处理、报损处理及经营分析销售部身份进入的则只能看到订单填写子菜单,以财务部身份登录的只能看到财务处理子菜单,以配送部人员身份进入的就只能进行配送处理。当用户输入的帐号、类型、密码不对时,系统会弹出提示对话框,要求重新输入。当输入错误次数达到三次,系统会无条件的退出登录程序图38用户登陆界面图37系统登陆界面管理员在登陆后可进入系统界面,界面如下图38系统首页图39进货单录入界面该界面登记进货的日期、商品数量、单位、单价、供应商及业务员等相关信息。图40为销售单录入界面图40销售单录入界面该界面登记销售日期、商品数量、单位、单价及业务员等相关信息。图41为销售明细界面图41销售明细界面通过此界面可以清楚的了解超市某段时间商品销售情况,为采购部门提供依据,并给财务部门及经营分析提供了相关数据。图42为库存管理界面图42库存管理界面通过该界面可以清楚的看到仓库的商品储存情况,包括商品名称、商品数量等。图31添加管理员信息界面此界面可以完成添加管理员信息的功能。图32经营分析对话框设计界面6.
系统测试与使用(重写)
6.1
系统测试情况(说明系统测试的计划、方法、用例、过程与评估)强制变量声明对于较大型的系统开发,强制变量声明是要首先要做的,否则你将陷入寻找错误的困境中。做法为:选择菜单[工具]→[选项]命令,打开“选项”对话框,在“编辑器”属性页中,把“要求变量声明”复选框上,或者手工在每个文件的开头加上关键字:OptionExplicit这样在编译时会对没有声明的变量报错,从而减少很多不必要的调试。常见错误的避免程序中常见的错误,多出现在对数据类型的判断、数据与数据库限制相冲突、系统资源的建立与释放等方面。(1)数据类型不匹配数据类型的判断错误,比如一个功能模块,接受传入的数据为id,要求其值必须是正数。如果写程序时,传入的是小数,或者是非数字的字符串,那么程序将会出现错误。又如查询数据表时,使用了WHERE子句,但是数据类型不匹配,数据库中字段类型为数字的值,却使用了字符串去查询,就会出现错误。(2)数据与数据库限制相冲突数据与数据库限制相冲突,可能是其值超过了数据库的上限与下限。比如在数据库中,用户名称字符数量上限是20个字符,而在程序中没有对此进行判别,如果一个添加新商品时名字有21个字符,那在使用SQL语言插入数据记录的时候,就会出错。(3)变量声明错误最后是一些常识性错误,比如在If…Else…EndIf,认为判断只会执行其中的一段代码,于是在两段中都使用DimobjasclsMerch,事实上,编译器在语法分析阶段,是首先将一个函数内声明的全部变量都放符号表中,而不管这个变量的声明是在这个函数的什么位置(但变量作用域并没有因此而受到影响)。又如在SelectCase中,Case的条件是字符串,但是没有加引号,就变成了Case一个空变量。对这些错误的避免,就要求在编写程序过程中要尽量细心。(4)资源的建立与释放在将类实例时,必须使用New关键字,未实例化的类无法使用,例:误:DimobjAsclsMerchclsMerch.AddNew正:DimobjAsclsMerchSetobj=NewclsMerchclsMerch.AddNew同理,在调用Setobj=Nothing后,资源已经释放,无法再调用类内的方法。
6.2
系统使用说明(给出系统使用详细说明)系统登录模块:用户正确输入自己账号、类型、密码后就登录进入系统主界面。登录界面如图8。考虑系统安全性,数据一致性,系统为管理人员登录设置了权限。当用户输入的用户名、密码不对时,系统会弹出提示对话框,要求重新输入。当输入错误次数达到三次,系统会无条件的退出登录程序。管理人员登陆界面后可以根据具体的业务不同对系统进行具体的操作。
7.
项目总结超市进销存管理系统是目前应用于公司或是企业进销存管理系统中的典型代表,涉及到了商品或货物管理中的4个方面,即进货、销售、库存及报损。本设计通过一个小型超市进销存管理系统的例子,介绍了现代企业进销存管理信息化的一般解决方案。本设计的一个亮点在于面向对象设计,将数据模型封装在类中,而且每一个类都有自己的集合类和操作类,使得系统的安全性、可维护性、重用性和扩展性都大大提高。由于系统的开发时间比较短,且开发过程中没有实际的POS系统环境,该系统还存在一些问题和缺陷,这里对系统今后的进一步完善提出以下几点建议:(1)界面的美观化有待进一步提高。大部分时间用于程序功能的编码实现,所以对用户界面的美观性考虑不是很多。(2)系统的分析设计是一人完成的,由于设计时考虑不足,功能方面尚有缺陷,对于财务会计相关的功能,还需继续完善。(3)系统的开发没有实际的超市应用环境,因此对于跟POS系统接口的部分没有办法完成。在系统投入使用之前,根据客户的实际环境,来完成与POS系统接口部分的开发。
附录:系统程序源代码
参考文献[1]VisualBasic数据库开发实例精粹郭瑞军唐邦民谢晗昕等编著VisualBasic数据库开发实例精粹电子工业出版社2005年1月出版;[2]UML及其建模工具的使用殷兆麟王潜平等编著UML及其建模工具的使用清华大学出版社北京交通大学出版社2004年1月出版;[3]VisualBasic编程精选集锦《电脑编程技巧与维护》杂志社主编VisualBasic编程精选集锦科学出版社2003年1月出版;[4]数据库系统基础教程姚春龙丁春欣姜翠霞编著数据库系统基础教程北京航空航天大学出版社2003年3月出版;[5]VisualBasic程序设计基础韦源于平编著清华大学出版社2001年5月出版;[6]VisualBasic.NET网络数据库整合应用精锐创作组编著人民邮电出版社2001年11月出版;[7]VBScript编程指南姜哓铭主编中国石化出版社2000年5月出版;[8]VB问答式教程庞一鸣编著清华大学出版社2002年1月出版;[9]VB6.0中文版教程新智工作室编著电子工业出版社2000年1月出版;[10]VB程序设计胡彧,闫宏印编著电子工业出版社2001年1月出版;[11]VB语言程序设计林卓然编著电子工业出版社2003年1月出版;[12]萨师煊.王珊等编著的《数据库系统概论》高等教育出版社2000版;[13[美]David.Kroenke著,施伯乐,顾宁,孙未未等译.DatabaseProcessingFundamentals,Design,andImplementationEighthEdition(数据库处理—基础、设计与实现)[M].北京:电子工业出版社2003,P53-109.课程设计说明书课程名称:题目名称:超市收银系统设计班级:姓名:学号:指导教师:评定成绩:教师评语:指导老师签名年月日目录TOC\o"1-3"\h\u目录 1摘要 21.概述 12.任务需求分析 13.数据流图、数据字典及实体联系图 44.数据字典 55.系统概要设计 95.1总体设计 105.2系统功能模块图 105.3数据库概念设计 115.4数据库逻辑结构设计 116.详细设计 156.1系统的主要功能 156.2人机界面设计 15一般交互设计 15信息显示设计 16数据输入设计 166.3程序设计过程 17登陆界面 17后台管理操作 187.软件测试 19参考文献 20
摘要随着经济的发展,人们的生活越来越好。日常用品的种类越来越多,超市的规模也越来越大,超市收银员的工作量也越来越大。为了适应超市规模的不断变化,减轻收银员的工作负担,根据超市的实际需要设计了一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的超市收银系统,为超市的决策者和管理者提供超市的各种数据信息、方便的查询和高效便捷的管理。该超市收银系统包括前台操作和后台数据库,后台数据库包括入库记录、销售记录、商品信息、用户信息和会员信息,前台操作是收银、查询和修改商品信息。该系统采用C#实现,系统开发工具是VS2021。关键词:C#;VS2021;数据库;超市收银。1.概述超市收银系统主要功能包括:后台管理和前台操作,其中:后台管理主要包括:进货管理、销售管理、库存管理、相关业务的查询和系统维护等;进货管理:在数据库中存储有各种商品的供应商信息,当需要进货时,可以与供应商联系,同时数据库中会存储各种商品的每一次进货信息,并保持数据的时效性和完整性。销售管理主要包括:随时录入卖出商品信息,如名称,数量,单价等,及时更新数据库数据。货架上商品卖到一定数量时,实时生成提货报告,并提供商品的库存信息,剩余信息。库存管理主要包括:生成库存报告、生成缺货报告、录入更新数据。在需要时(可每隔一个时间段查询一次)生成商品库存情况报告,实时报告商品库存情况,如库存量不足(小于某一自定的数量)时,可生成缺货报告,并提供商品种类,来源等商品属性信息,方便采购人员进行商品采购。采购员采购商品后,及时录入商品信息等数据,在数据库中进行数据更新。前台操作主要包括:前台收银员权限严格控制,支持断网销售、连网销售两种模式,预留对条码扫描、票据打印机、顾显、钱箱、磁卡刷卡机、IC卡读写器、条码打印机、盘点机等POS外设的支持,可直接修改销售数量、单价、折扣等(权限控制),支持赠送(权限控制),会员卡、储值卡消费,收款抹零(权限控制),挂单/取单,前台查询商品、库存,删单、删行、查单(权限控制),特殊操作记录(防止前台作弊),支持电子称散装商品销售,前台支持业务员录入计提,商品促销销售(按时间段),会员价、储值卡价销售,支持无库存商品销售,销售小票格式自定义(标题、脚注、明细格式等)。2.任务需求分析前台操作包括:商品录入:根据超巿业务特点制定相关功能,可以通过输入唯一编号、扫描条形码、商品名称等来实现精确的商品扫描录入。该扫描录入方法可以充分保证各种电脑操作水平层次的人员均能准确快速地进行商品扫描录入。收银业务:通过扫描条形码或者直接输入商品名称(对于同类多件商品采用一次录入加数量的方式)自动计算本次交易的总金额。在顾客付款后,自动计算找零,同时打印交易清单(包括交易的流水账号、每类商品的商品名、数量、该类商品的总金额、交易的时间、负责本次收银的员工号)。如果顾客是本店会员并持有本人会员卡,则在交易前先扫描会员卡,并对所购物品全部实行95折优惠,并将所购物品的总金额累计到该会员的总消费金额中。会员卡的有效期限为一年,满一年未续卡者,该会员卡将被注销。后台管理操作:进货管理:根据销售情况及库存情况,自动制定进货计划(亦可手工制定修改),可以避免盲目进货造成商品积压。按计划单有选择性地进行自动入库登记。综合查询打印计划进货与入库记录及金额。销售管理:商品正常销售、促销与限量、限期及禁止销售控制。综合查询各种销售明细记录、各地收银员收银记录以及交结账情况等。按多种方式统计生成销售排行榜,灵活察看和打印商品销售日、月、年报表。库存管理:综合查询库存明细记录。库存状态自动告警提示。如库存过剩、少货、缺货等。软件为您预警,避免库存商品积压损失和缺货。库存自动盘点计算。人员管理:员工、会员、供货商、厂商等基本信息登记管理。员工操作权限权利、客户销售权限管理。图1系统流程图商品库存程序收银员收银商品销售程序进货报告生成程序商品库存信息文件进货报告输入购物信息显示销售信息显示订货信息
图1系统流程图商品库存程序收银员收银商品销售程序进货报告生成程序商品库存信息文件进货报告输入购物信息显示销售信息显示订货信息收银POS机查询数据/员工管理PC机打印机收银POS机查询数据/员工管理PC机打印机称装电子秤管理商品信息PC机SQlServer服务器进货PC机超市前台管理者超市前台管理者SQlServerSQlServer服务器进货PC机图2系统构架图超市工作人员前台收银员管理部门进货部门数据库服务器进货PC机
3.数据流图、数据字典及实体联系图进货PC机图2系统构架图超市工作人员前台收银员管理部门进货部门数据库服务器进货PC机产生销售记录产生销售记录产生进货单仓库管理员收银员更新库存信息进货员前台经理更新商品信息D1商品信息表D1商品信息表D3销售记录销售信息销售信息销售信息事务库存信息进货信息D2进货信息进货单图3数据流图商品信息商品信息事务D4商品信息表
4.数据字典D3销售记录销售信息销售信息销售信息事务库存信息进货信息D2进货信息进货单图3数据流图商品信息商品信息事务D4商品信息表数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。数据字典的作用是在软件分析和设计的过程中给人提供关于数据的描述信息。名称:销售清单别名:销售报表名称:销售清单别名:销售报表描述:对超市商品销售情况的描述定义:货物编号+名称+销售日期+数量+售价位置:输出到打印机保存到磁盘名称:商品信息别名:商品单描述:超市销售商品的信息定义:商品编号+类型编号+商品名称+库存量+售价+报警值+商品规格+计量单位位置:输出到打印机保存到磁盘名称:用户信息别名:描述:该系统的使用者的信息定义:用户编号+姓名+密码+权限位置:输出到打印机保存到磁盘名称:入库记录别名:进货报表描述:每次进货的货物描述定义:入库编号+货物编号+供应商编号+操作员+进价+数量位置:输出到打印机保存到磁盘
名称:会员信息信息表别名:商品编号描述:该超市所属会员的信息定义:会员编号+会员名+会员积分+会员等级+会员+会员起始日期位置:输出到打印机保存到磁盘名称:供应商信息别名:供应商描述:和超市合作的供应商的信息定义:供应商编号+名称+联系人+地址+联系++合作起始时间位置:输出到打印机名称:用户信息别名:描述:该系统的使用者的信息定义:用户编号+姓名+密码+权限位置:输出到打印机保存到磁盘名称:入库记录别名:进货报表描述:每次进货的货物描述定义:入库编号+货物编号+供应商编号+操作员+进价+数量位置:输出到打印机保存到磁盘名称:会员信息信息表别名:商品编号描述:该超市所属会员的信息定义:会员编号+会员名+会员积分+会员等级+会员+会员起始日期位置:输出到打印机保存到磁盘名称:供应商信息别名:供应商描述:和超市合作的供应商的信息定义:供应商编号+名称+联系人+地址+联系++合作起始时间位置:输出到打印机保存到磁盘入库记录销售记录入库记录销售记录供应商商品编号商品名称库存量计量单位报警值商品规格类别编号名称联系人供应地址商品名称数量售价总金额进价商品名称商品数量供应商编号进货销售供应商编号合作时间入库编号商品编号售价11111图4部分实体联系(E-R)图nn商品
1111图4部分实体联系(E-R)图nn商品用户用户用户用户编号密码用户名权限会员用户会员编号会员名会员积分会员等级会员起始日期图6会员实体E—R图图5用户实体E—R图
5.系统概要设计会员用户会员编号会员名会员积分会员等级会员起始日期图6会员实体E—R图图5用户实体E—R图5.1总体设计经过需求分析阶段的工作,系统必须“做什么”已经清楚了,现在是决定“怎样做”的时候了。总体设计的基本目标就是回答“概括地说,系统应该如何实现”的问题。所以总体设计又称为概要设计。通过这个阶段的工作将划分出组成系统的物理元素—程序、文件、数据库、人工过程和文档等。总体设计的另一项任务是设计软件的结构,也就是要确定系统中的每个程序是由那些模块组成的,以及这些模块相互间的关系。5.2系统功能模块图超市收银系统超市收银系统查询修改商品信息收银进货管理销售管理库存管理前台操作后台数据库营业统计会员信息管理图7系统功能模块图图7系统功能模块图
5.3数据库概念设计数据库一般分为三级模式:外模式、模式和内模式。外模式也就是不同用户所对的数据视图,它将数据库内部抽象的数据及其互相之间的关系表示为简单、直观的应用界面。模式是数据库中全部数据的逻辑结构和特征描述,通常以某种数据模型为基础。内模式是对数据的物理结构和存储方式的描述。在该系统中具体的模式有:商品(商品编号,类型编号,商品名称,规格,计量单位,售价,库存量,报警值)用户(用户编号,用户名,密码,权限)入库记录(入库编号,商品编号,供应商编号,联系人,进价,数量)销售记录(商品编号,售价,销售数量,总金额)供应商(供应商编号,供应商名称,联系人,供应商,,地址,合作时间)会员(会员编号,会员名,会员积分,会员等级,,会员起始日期)5.4数据库逻辑结构设计在数据库设计中相当重要的一步就是将概念模型转化为计算机上DBMS所支持的数据模型,例如,将E-R图转化为关系模型,我们设计概念模型基本上都是一些抽象的关系,再在数据库设计的实现过程中,在计算机上有效地表示出这些关系就成了数据库设计的关键。根据超市收银系统的功能要求,选取MySQL作为后台数据库。在上面的实体和实体之间的E-R图设计基础上,形成数据库中的表格及表格之间的关系。该数据库包括系统登录用户的基本信息保存在用户信息表里,其中对于用户编号,通过自增方式实现,无需用户手动编号,编号从1000起始。具体内容如下表所示:
用户信息表包括:用户编号、用户名、密码和用户权限,具体如下:表1用户信息表属性名字段名类型长度Null备注编号UserIDInt20否主键姓名UserNamevarchar50否密码UserPasswordvarchar50否权限UserRightvarchar50否会员信息表包括了在该超市申请会员的消费者的信息,会员信息表包括:会员编号、会员名、积分、权限、联系和会员起始日期,具体内容如下:表2会员信息表属性名字段名类型长度Null备注会员编号VipIdInt20否主键会员姓名VipNamevarchar50否积分VipScorevarchar50否等级VipRankvarchar50否VipNumbervarchar50否成为会员时间VipDatavarchar50否销售信息表包括:商品编号、售价、数量、总金额以及备注,具体内容如下:属性名字段名类型长度Null备注商品编号GoodsIdInt20否主键单价SellPricevarchar50否数量GoodsNumvarchar50否总价zongsellvarchar50否备注Remarkvarchar50否销售时间DataTimevarchar50否表3销售信息表商品信息表包括:商品编号、商品名称、商品类型、计量单位、规格、售价、库存量、报警值和备注,具体内容如下表:表4商品信息表属性名字段名类型长度Null备注商品编号GoodsIdInt20否主键类型号TypeIdvarchar50否商品名称GoodsNamevarchar50否计量单位GoodsUnitvarchar50是规格GoodsNormvarchar50否售价GoodsSellpricevarchar50否库存量GoodsNumvarchar50否报警值AlarmNumvarchar50否备注GoodsRemardkvarchar50是入库记录表包括:入库编号、商品编号、供应商编号、联系人、进价、数量以及备注,具体内容如下:表5入库记录表属性名字段名类型长度Null备注入库编号StockIdInt20否主键商品编号GoodsIdvarchar50否外键供应商编号CompanyIdvarchar50否操作员Operatorvarchar50否进价GoodsPricevarchar50否入库时间DataTimevarchar50否数量GoodsNumvarchar50否备注Remarkvarchar50是供应商信息表包括:供应商编号、供应商名称、联系人、、、地址、合作起始时间,具体内容如下表:表6供应商信息表属性名字段名类型长度Null备注供应商编号CompanyIdInt20否主键供应商名称CompanyNamevarchar50否联系人CompanyDirectorvarchar50否CompanyPhonevarchar50否CompanyFaxvarchar50否地址CompanyAddvarchar50否合作时间HzDataTimevarchar50否
6.详细设计详细设计阶段的根本目标是确定应该如何具体地实现所要求的系统,包括用户界面设计、程序过程设计等步骤。也就是说,经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成某种设计语言书写的程序。详细设计阶段的任务不是具体的编写程序,而是要设计出程序的“蓝图”,以后程序员将根据这个“蓝图”写出实际的程序代码。6.1系统的主要功能该系统采用C/S结构,超市收银系统的主要功能包括:后台管理和前台操作。前台的主要功能是:(1)记录超市前台收银员的收银信息;(2)查询、修改商品信息;后台的主要功能是:(1)记录商品的入库记录;(2)管理商品的库存、价格等具体信息(3)记录商品的销售记录;(4)管理超市会员的会员信息;(5)管理登陆用户的信息。6.2人机界面设计6.2.1一般交互设计一般交互设计涉及信息显示、数据输入和系统整体控制。保持一致性。为客户交互界面中的菜单选择、命令输入、数据显示以及众多的其他功能,使用一致的格式。提供信息的反馈。向用户及时提供视觉和听觉的信息反馈,以保证在用户和系统之间及时地建立双向通信。在本系统设计过程中,基本做到了信息的及时反馈,当用户操作完一步后系统会对数据库中的数据进行及时地显示。执行有较大影响的操作前提示用户确认。在设计过程中,如果用户要执行删除操作,以及对数据库的读写操作时,都会有窗体弹出询问继续操作或者予以提示。减少两次操作间需要记忆的内容。为了避免用户为下一步操作而记忆大量数据,所以在设计过程中在需要数据传递的窗体中设置全局变量,来传递数据。提高对话、移动和思考的效率。尽量减少用户击键的次数,在设计时考虑用户屏幕的布局以减少用户鼠标移动的距离,尽量避免用户在操作中发生疑问的情况。允许犯错误。允许用户的误操作尽量不对系统造成伤害。按功能对动作分类,并据此设计屏幕布局。屏幕布局尽量将软件所具有的所有功能在主页面展示,界面一目了然。6.2.2信息显示设计系统在显示用户所需要的信息时应该尽量完整、清晰和易于理解。这样才能满足用户的需求。使用不同的方式显示信息:用文字、图形、声音,按位置、移动和大小,使用颜色和省略等方式传达信息。只显示与当前工作有关的信息。在用户操作有关系统的特定功能的信息时,不必看到与之无关的数据、菜单和图形。使用便于用户迅速吸收数据的方式来表示数据。使用一致的标记、标准的缩写和可预知的颜色。显示的含义应该非常准确,用户无须参照其他信息源就能理解。产生有意义的错误信息。对于系统在运行过程中产生的错误尽量给用户返回一个容易理解的错误信息,以使用户保持对系统的信任,和系统的可用性。使用窗口分隔不同类型的信息。使用不同的窗口显示、保存不同类型的信息。高效率的使用显示屏。当使用多窗口时,应该有足够的空间使得每个窗口至少都能显示出一部分。6.2.3数据输入设计用户的大部分时间用在选择菜单命令、键入数据和向系统提供输入。在系统中,键盘是主要的输入介质,但是鼠标等设备的也是重要的输入手段,所以,对于他们的数据输入操作有如下约定:尽量减少用户的输入动作。为了方便用户的使用,鼠标应当尽量减少操作的幅度。保持显示信息和输入信息之间的一致性。对于用户来说,要保证其输入的数据在显示上与其他显示的视觉特征(例如:文字大小、颜色、位置等)要一致。允许用户自定义输入。用户可能希望定义自己专用的命令或略去某些类型的警告信息和动作确认,人机界面应该为用户提供这样做的机制。交互应该是灵活的,并且可调整成用户最喜欢的输入方式。用户类型与喜欢的输入方式有关,不同的用户喜欢不同的输入方式。使用当前动作语境中不适用的命令不起作用。这可使得用户不去做那些肯定会导致错误的动作。让用户控制交互流。用户应该能跳过不必要的动作,改变所需做的动作的顺序,以及在不退出程序的情况下从错误状态中恢复正常。消除冗余的输入。除非可能发生误解,否则不要要求用户指定输入数据的单位;尽可能提供默认值,绝对不要要求用户提供程序可以自动获得或计算出来的信息。对于不同类型的用户在登录到系统后,由于有不同的权限,所以在主界面中会有一些项目受到限制而无法使用,所以要使这些项目不发生作用,以保证系统安全。6.3程序设计过程程序过程设计主要是在借助过程设计工具的情况下,对程序的具体实现过程进行设计。程序的主要部分设计在这个环节完成。在这个任务说明书中我们采用盒图的形式来表达程序的具体的设计过程,我们的系统设计为C/S结构,所以是客户端登陆系统的形式,盒图没有箭头,所以不允许随意转移控制,坚持使用盒图可以使程序员养成用用结构化的方式来思考问题。6.3.1登陆界面在用户登录时,在输入用户名和密码及用户类型的前提下将其与数据库中的数据进行比对,若一致,则打开主窗体;若不一致提示错误,并要求重新输入。注册后保存用户信息,登陆界面的的程序盒图如图5.1所示:连接数据库连接数据库否是用户名和密码输入否是用户名和密码输入提示输入否是账户是否存在提示输入否是账户是否存在提示错误提示错误显示提示框“登录成功”显示提示框“登录成功”图8登陆界面程序盒图图8登陆界面程序盒图6.3.2后台管理操作对于系统的各项信息的管理属于后台管理,管理程序盒图如图5.2所示:否否是是否进行操作图9后台管理操作程序盒图重新操作保存信息是操作是否成功否否是否选中数据进行操作是管理后台信息
7.软件测试测试是为了发现程序中的错误而执行的程序。好的测试方案是极有可能发现迄今为止尚未发现的错误的测试方案,成功的测试是发现了至今为止尚未发现的错误的测试。为了能设计出有效的测试方案,软件工程师必须深入理解并正确运用软件测试的基本准则:所有测试都应该能追溯到用户需求。从用户角度看,最严重的错误是导致程序不能满足用户需求的哪些错误。应该预案在测试开始之前就制定出测试计划。实际上,一旦完成了需求模型就可以着手制定测试计划,在建立了设计模型之后就可以立即开始详细设计的测试方案。把pareto原理应用到软件测试中。Pareto原理说明,测试发现的错误当中的80%很可能是由程序中20%的模块造成的。完全测试是不可能的,测试需要终止。测试无法显示软件潜在的缺陷,“测试只能证明软件存在错误而不能证明软件没有错误”。最初的测试通常把焦点放在单个程序模块上,进一步测试的焦点则转向在集成的模块簇中寻找错误,最后在整个系统中寻找错误。在测试中不可能运行路径的每一种组合。然而,充分覆盖程序逻辑,并确保程序设计中使用的所有条件是有可能的。应由独立的第三方来构造测试。第三方测试最大的特点在于它的专业性、独立性、客观性和公正性。对于软件开发商来说,经过第三方测试机构的测试,不仅可以通过专业化的测试手段发现软件错误,帮助开发商提升软件的品质,而且可以对软件有一个客观、科学的评价,有助于开发商认清自己产品的定位。对于行业主管部门以及软件使用者来说,由于第三方测试机构独立公正的地位,可以对被测试的软件有一个客观公正的评价,帮助用户选择合适、优秀的软件产品。充分注意测试中的群集现象。测试后程序残存的错误数目与该程序中已发现的错误数目或检错率成正比。不要在某个程序段中找到几个错误就误认为该程序段就没有错误而不再测试,相反应该对错误群集的程序段进行重点测试。参考文献[1]张海潘.软件工程导论(第6版)[3]陈承欢,彭勇.管理信息系统基础与开发技术[M].人民邮电出版社.2005[4]刘云生.数据库系统概论[M].华中科技大学出版社.2002[5]殷人昆,郑人杰.实用软件工程(第3版)[M][6]朱少民.软件测试方法和技术(第2版)[M][7]张友生.软件体系结构(第2版)[M].清华大学出版社,2006.11[8]石志国.ASP精解案例教程(修订版)[M].清华大学出版社,2006.7[10]汪洋.网站设计全程教程[M].科学出版社.2002.1[12]陈磊.PowerBuilder9数据库项目案例导航[M].清华大学出版社.2005.1[13]杨晶.VB6.0程序设计[M].机械工业出版社.2004.8[14]刘晓华.JSP应用开发详解(第三版)[M].电子工业出版社.2007.1[15]何玉洁,李宝安.数据库系统教程[M].人民邮电出版社.2021.9[16]王珊著《数据库系统概论》(第四版).高等教育出版社,2002.3[17]刘金玲等著《数据库原理及应用实验与课程设计指导》清华大学出版社[18]钱雪忠等著《数据库原理及技术课程设计》(全新正版)清华大学出版社,2021.2[19]周屹著《数据库原理及开发应用-实验与课程设计指导》清华大学出版社,2021.12[20]李春葆等著《VisualBasic数据库系统设计与开发》清华大学出版社,2003.8[21]唐红亮著《SQLServer数据库设计与系统开发教程》清华大学出版社,2007.10[22]丁钟俊著《数据库系统原理及应用》清华大学出版社,2021.4[23]李绍峰等著《数据库系统原理及应用》水利水电出版社,2021.2[24]万常选著《数据库系统原理与设计》(第2版)清华大学出版社,2021,.9[25]冯建华等著《数据库系统设计与原理》(第2版)清华大学出版社,2021.8进销存管理系统文档版本记录版本编号版本日期撰写者版本说明Ver1.02021-01-03蒲文杰()初稿目录文档版本记录 11.项目背景 31.1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论