超市收银系统设计说明书_第1页
超市收银系统设计说明书_第2页
超市收银系统设计说明书_第3页
超市收银系统设计说明书_第4页
超市收银系统设计说明书_第5页
免费预览已结束,剩余20页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课程设计说明书课程名称:班级:姓名:学号:评定成绩:教师评语:指导老师签名年月日目录目录1摘要31 .概述12 .任务需求分析13 .数据流图、数据字典及实体联系图44 .数据字典55 .系统概要设计95.1 总体设计105.2 系统功能模块图105.3 数据库概念设计115.4 数据库逻辑结构设计116 .详细设计156.1 系统的主要功能156.2 人机界面设计156.2.1 一般交互设计156.2.2 信息显示设计166.2.3 数据输入设计166.3 程序设计过程176.3.1 登陆界面176.3.2 后台治理操作187 .软件测试19参考文献20摘要随着经济的开展,人们的生活越来越好

2、.日常用品的种类越来越多,超市的规模也越来越大,超市收银员的工作量也越来越大.为了适应超市规模的不断变化,减轻收银员的工作负担,根据超市的实际需要设计了一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的超市收银系统,为超市的决策者和治理者提供超市的各种数据信息、方便的查询和高效便捷的治理.该超市收银系统包括前台操作和后台数据库,后台数据库包括入库记录、销售记录、商品信息、用户信息和会员信息,前台操作是收银、查询和修改商品信息.该系统采用C#实现,系统开发工具是VS2021.关键词:C#;VS2021;数据库;超市收银.1 .概述超市收银系统主要功能包括:后台治理和前台操作,其中

3、:后台治理主要包括:进货治理、销售治理、库存治理、相关业务的查询和系统维护等;进货治理:在数据库中存储有各种商品的供给商信息,当需要进货时,可以与供给商联系,同时数据库中会存储各种商品的每一次进货信息,并保持数据的时效性和完整性.销售治理主要包括:随时录入卖出商品信息,如名称,数量,单价等,及时更新数据库数据.货架上商品卖到一定数量时,实时生成提货报告,并提供商品的库存信息,剩余信息.库存治理主要包括:生成库存报告、生成缺货报告、录入更新数据.在需要时可每隔一个时间段查询一次生成商品库存情况报告,实时报告商品库存情况,如库存量不足小于某一自定的数量时,可生成缺货报告,并提供商品种类,来源等商品

4、属性信息,方便采购人员进行商品采购.采购员采购商品后,及时录入商品信息等数据,在数据库中进行数据更新.前台操作主要包括:前台收银员权限严格限制,支持断网销售、连网销售两种模式,预留对条码扫描、票据打印机、顾显、钱箱、磁卡刷卡机、IC卡读写器、条码打印机、盘点机等POS外设的支持,可直接修改销售数量、单价、折扣等权限限制,支持赠送权限限制,会员卡、储值卡消费,收款抹零权限限制,挂单/取单,前台查询商品、库存,删单、删行、查单权限限制,特殊操作记录预防前台作弊,支持电子称散装商品销售,前台支持业务员录入计提,商品促销销售按时间段,会员价、储值卡价销售,支持无库存商品销售,销售小票格式自定义标题、脚

5、注、明细格式等,2 .任务需求分析前台操作包括:商品录入:根据超市业务特点制定相关功能,可以通过输入唯一编号、扫描条形码、商品名称等来实现精确的商品扫描录入.该扫描录入方法可以充分保证各种电脑操作水平层次的人员均能准确快速地进行商品扫描录入.收银业务:通过扫描条形码或者直接输入商品名称对于同类多件商品采用一次录入加数量的方式自动计算本次交易的总金额.在顾客付款后,自动计算找零,同时打印交易清单包括交易的流水账号、每类商品的商品名、数量、该类商品的总金额、交易的时间、负责本次收银的员工号.如果顾客是本店会员并持有本人会员卡,那么在交易前先扫描会员卡,并对所购物品全部实行95折优惠,并将所购物品的

6、总金额累计到该会员的总消费金额中.会员卡的有效期限为一年,满一年未续卡者,该会员卡将被注销.后台治理操作:进货治理:根据销售情况及库存情况,自动制定进货方案亦可手工制定修改,可以预防盲目进货造成商品积压.按方案单有选择性地进行自动入库登记.综合查询打印方案进货与入库记录及金额.销售治理:商品正常销售、促销与限量、限期及禁止销售限制.综合查询各种销售明细记录、各地收银员收银记录以及交结账情况等.按多种方式统计生成销售排行榜,灵活观察和打印商品销售日、月、年报表.库存治理:综合查询库存明细记录.库存状态自动告警提示.如库存过剩、少货、缺货等.软件为您预警,预防库存商品积压损失和缺货.库存自动盘点计

7、算.人员治理:员工、会员、供货商、厂商等根本信息登记治理.员工操作权限权利、客户销售权限治理图1系统流程图3.数据流图、数据字典及实体联系图4 .数据字典数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合.数据字典的作用是在软件分析和设计的过程中给人提供关于数据的描述信息.名称:商品信息别名:商品单描述:超市销售商品的信息定义:商品编号+类型编号+商品名称+库存量+售价+报警值+商品规格+计量单位位置:输出到打印机保存到磁盘名称:销售清单别名:销售报表描述:对超市商品销售情况的描述定义:货物编号+名称+销售日期+数量+售价位置:输出到打印机保存到磁盘名称:入库记录别名

8、:进货报表描述:每次进货的货物描述定义:入库编号+货物编号+供给冏编号+操作员+进价+数量位置:输出到打印机保存到磁盘名称:用户信息别名:描述:该系统的使用者的信息定义:用户编号+姓名+密码+权限位置:输出到打印机保存到磁盘名称:供给商信息别名:供给商描述:和超市合作的供给商的信息定义:供给冏编号+名称+联系人+地址+联系+合作起始时间位置:输出到打印机保存到磁盘名称:会员信息信息表别名:商品编号描述:该超市所属会员的信息定义:会员编号+会员名+会员积分+会员等级+会员+会员起始日期位置:输出到打印机保存到磁盘专真X.O!OAr2地址商品编号7入库编号、商品名称J品数IkJUf时、号品编0儿;

9、品名二77供给商编号/上、:yR/Q躇值1/C商品规格己录y,ywpk销售记录?工量,1Qfmy金仙1图4局部实体联系E-R图图5用户实体ER图图6会员实体ER图5 .系统概要设计5.1 总体设计经过需求分析阶段的工作,系统必须“做什么已经清楚了,现在是决定“怎样做的时候了.总体设计的根本目标就是答复“概括地说,系统应该如何实现的问题.所以总体设计又称为概要设计.通过这个阶段的工作将划分出组成系统的物理元素一程序、文件、数据库、人工过程和文档等.总体设计的另一项任务是设计软件的结构,也就是要确定系统中的每个程序是由那些模块组成的,以及这些模块相互间的关系.5.2 系统功能模块图图7系统功能模块

10、图5.3 数据库概念设计数据库一般分为三级模式:外模式、模式和内模式.外模式也就是不同用户所对的数据视图,它将数据库内部抽象的数据及其互相之间的关系表示为简单、直观的应用界面.模式是数据库中全部数据的逻辑结构和特征描述,通常以某种数据模型为根底.内模式是对数据的物理结构和存储方式的描述.在该系统中具体的模式有:商品商品编号,类型编号,商品名称,规格,计量单位,售价,库存量,报警值用户用户编号,用户名,密码,权限入库记录入库编号,商品编号,供给商编号,联系人,进价,数量销售记录商品编号,售价,销售数量,总金额供给商供给商编号,供给商名称,联系人,供给商,地址,合作时间会员会员编号,会员名,会员积

11、分,会员等级,会员起始日期5.4 数据库逻辑结构设计在数据库设计中相当重要的一步就是将概念模型转化为计算机上DBMS所支持的数据模型,例如,将E-R图转化为关系模型,我们设计概念模型根本上都是一些抽象的关系,再在数据库设计的实现过程中,在计算机上有效地表示出这些关系就成了数据库设计的关键.根据超市收银系统的功能要求,选取MySQL作为后台数据库.在上面的实体和实体之间的E-R图设计根底上,形成数据库中的表格及表格之间的关系.该数据库包括系统登录用户的根本信息保存在用户信息表里,其中对于用户编号,通过自增方式实现,无需用户手动编号,编号从1000起始.具体内容如下表所示:用户信息表包括:用户编号

12、、用户名、密码和用户权限,具体如下:表i用户信息表属性名字段名长度Null备注编号UserIDInt20否主键姓名UserNamevarchar50否密码UserPasswordvarchar50否权限UserRightvarchar50否会员信息表包括了在该超市申请会员的消费者的信息,会员信息表包括:会员编号、会员名、积分、权限、联系和会员起始日期,具体内容如下:表2会员信息表属性名字段名长度Null备注会员编号VipIdInt20否主键会员姓名VipNamevarchar50否积分VipScorevarchar50否等级VipRankvarchar50否VipNumbervarchar50

13、否成为三员时向VipDatavarchar50否销售信息表包括:商品编号、售价、数量、总金额以及备注,具体内容如下:表3销售信息表属性名字段名长度Null备注商口口编pGoodsIdInt20否主键单价SellPricevarchar50否数量GoodsNumvarchar50否总价zongsellvarchar50否备注Remarkvarchar50否销售时间DataTimevarchar50否商品信息表包括:商品编号、商品名称、商品类型、计量单位、规格、售价、库存量、报警值和备注,具体内容如下表:表4商品信息表属性名字段名长度Null备注商口口编PGoodsIdInt20否主键类型号Typ

14、eldvarchar50否冏品名称GoodsNamevarchar50否计量单位GoodsUnitvarchar50是规格GoodsNormvarchar50否售价GoodsSellpricevarchar50否库存里GoodsNumvarchar50否报警值AlarmNumvarchar50否备注GoodsRemardkvarchar50是入库记录表包括:入库编号、商品编号、供给商编号、联系人、进价、数量以及备注,具体内容如下:表5入库记录表属性名字段名长度Null备注入库编pStockIdInt20否主键商口口编pGoodsIdvarchar50否外键供给商编号CompanyIdvarch

15、ar50否操作员Operatorvarchar50否进价GoodsPricevarchar50否入库时间DataTimevarchar50否数量GoodsNumvarchar50否备注Remarkvarchar50是供给商信息表包括:供给商编号、供给商名称、联系人、地址、合作起始时间,具体内容如下表:表6供给商信息表属性名字段名长度Null备注供给商编号CompanyldInt20否主键供给商名称CompanyNamevarchar50否联系人CompanyDirectorvarchar50否CompanyPhonevarchar50否CompanyFaxvarchar50否地址Company

16、Addvarchar50否合作时间HzDataTimevarchar50否6 .详细设计详细设计阶段的根本目标是确定应该如何具体地实现所要求的系统,包括用户界面设计、程序过程设计等步骤.也就是说,经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接译成某种设计语言书写的程序.详细设计阶段的任务不是具体的编写程序,而是要设计出程序的“蓝图,以后程序员将根据这个“蓝图写出实际的程序代码.6.1 系统的主要功能该系统采用C/S结构,超市收银系统的主要功能包括:后台治理和前台操作.前台的主要功能是:(1)记录超市前台收银员的收银信息;(2)查询、修改商品信息;后台的主

17、要功能是:(1)记录商品的入库记录;(2)治理商品的库存、价格等具体信息(3)记录商品的销售记录;(4)治理超市会员的会员信息;(5)治理登陆用户的信息.6.2 人机界面设计6.2.1 一般交互设计一般交互设计涉及信息显示、数据输入和系统整体限制.(1)保持一致性.为客户交互界面中的菜单项选择择、命令输入、数据显示以及众多的其他功能,使用一致的格式.(2)提供信息的反响.向用户及时提供视觉和听觉的信息反响,以保证在用户和系统之间及时地建立双向通信.在本系统设计过程中,根本做到了信息的及时反响,当用户操作完一步后系统会对数据库中的数据进行及时地显示.(3)执行有较大影响的操作前提示用户确认.在设

18、计过程中,如果用户要执行删除操作,以及对数据库的读写操作时,都会有窗体弹出询问继续操作或者予以提示.(4)减少两次操作间需要记忆的内容.为了预防用户为下一步操作而记忆大量数据,所以在设计过程中在需要数据传递的窗体中设置全局变量,来传递数据.(5)提升对话、移动和思考的效率.尽量减少用户击键的次数,在设计时考虑用户屏幕的布局以减少用户鼠标移动的距离,尽量预防用户在操作中发生疑问的情况.(6)允许犯错误.允许用户的误操作尽量不对系统造成伤害.(7)按功能对动作分类,并据此设计屏幕布局.屏幕布局尽量将软件所具有的所有功能在主页面展示,界面一目了然.6.2.2 信息显示设计系统在显示用户所需要的信息时

19、应该尽量完整、清楚和易于理解.这样才能满足用户的需求.使用不同的方式显示信息:用文字、图形、声音,按位置、移动和大小,使用颜色和省略等方式传达信息.(1)只显示与当前工作有关的信息.在用户操作有关系统的特定功能的信息时,不必看到与之无关的数据、菜单和图形.(2)使用便于用户迅速吸收数据的方式来表示数据.(3)使用一致的标记、标准的缩写和可预知的颜色.显示的含义应该非常准确,用户无须参照其他信息源就能理解.(4)产生有意义的错误信息.对于系统在运行过程中产生的错误尽量给用户返回一个容易理解的错误信息,以使用户保持对系统的信任,和系统的可用性.(5)使用窗口分隔不同类型的信息.使用不同的窗口显示、

20、保存不同类型的信息.(6)高效率的使用显示屏.当使用多窗口时,应该有足够的空间使得每个窗口至少都能显示出一局部.6.2.3 数据输入设计用户的大局部时间用在选择菜单命令、键入数据和向系统提供输入.在系统中,键盘是主要的输入介质,但是鼠标等设备的也是重要的输入手段,所以,对于他们的数据输入操作有如下约定:(1)尽量减少用户的输入动作.为了方便用户的使用,鼠标应当尽量减少操作的幅度.(2)保持显示信息和输入信息之间的一致性.对于用户来说,要保证其输入的数据在显示上与其他显示的视觉特征(例如:文字大小、颜色、位置等)要一致.(3)允许用户自定义输入.用户可能希望定义自己专用的命令或略去某些类型的警告

21、信息和动作确认,人机界面应该为用户提供这样做的机制.(4)交互应该是灵活的,并且可调整成用户最喜欢的输入方式.用户类型与喜欢的输入方式有关,不同的用户喜欢不同的输入方式.(5)使用当前动作语境中不适用的命令不起作用.这可使得用户不去做那些肯定会导致错误的动作.(6)让用户限制交互流.用户应该能跳过不必要的动作,改变所需做的动作的顺序,以及在不退出程序的情况下从错误状态中恢复正常.(7)消除冗余的输入.除非可能发生误解,否那么不要要求用户指定输入数据的单位;尽可能提供默认值,绝对不要要求用户提供程序可以自动获得或计算出来的信息.对于不同类型的用户在登录到系统后,由于有不同的权限,所以在主界面中会

22、有一些项目受到限制而无法使用,所以要使这些工程不发生作用,以保证系统平安.6.3程序设计过程程序过程设计主要是在借助过程设计工具的情况下,对程序的具体实现过程进行设计.程序的主要局部设计在这个环节完成.在这个任务说明书中我们采用盒图的形式来表达程序的具体的设计过程,我们的系统设计为C/S结构,所以是客户端登陆系统的形式,盒图没有箭头,所以不允许随意转移限制,坚持使用盒图可以使程序员养成用用结构化的方式来思考问题.6.3.1 登陆界面在用户登录时,在输入用户名和密码及用户类型的前提下将其与数据库中的数据进行比对,假设一致,那么翻开主窗体;假设不一致提示错误,并要求重新输入.注册后保存用户信息,登

23、陆界面的的程序盒图如图5.1所示:图8登陆界面程序盒图6.3.2 后台治理操作对于系统的各项信息的治理属于后台治理,治理程序盒图如图5.2所示:图9后台治理操作程序盒图7.软件测试测试是为了发现程序中的错误而执行的程序.好的测试方案是极有可能发现迄今为止尚未发现的错误的测试方案,成功的测试是发现了至今为止尚未发现的错误的测试.为了能设计出有效的测试方案,软件工程师必须深入理解并正确运用软件测试的根本准那么:(1)所有测试都应该能追溯到用户需求.从用户角度看,最严重的错误是导致程序不能满足用户需求的哪些错误.(2)应该预案在测试开始之前就制定出测试方案.实际上,一旦完成了需求模型就可以着手制定测

24、试方案,在建立了设计模型之后就可以立即开始详细设计的测试方案.(3)把pareto原理应用到软件测试中.Pareto原理说明,测试发现的错误当中的80%很可能是由程序中20%的模块造成的.(4)完全测试是不可能的,测试需要终止.测试无法显示软件潜在的缺陷,“测试只能证实软件存在错误而不能证实软件没有错误.最初的测试通常把焦点放在单个程序模块上,进一步测试的焦点那么转向在集成的模块簇中寻找错误,最后在整个系统中寻找错误.在测试中不可能运行路径的每一种组合.然而,充分覆盖程序逻辑,并保证程序设计中使用的所有条件是有可能的.(5)应由独立的第三方来构造测试.第三方测试最大的特点在于它的专业性、独立性

25、、客观性和公正性.对于软件开发商来说,经过第三方测试机构的测试,不仅可以通过专业化的测试手段发现软件错误,帮助开发商提升软件的品质,而且可以对软件有一个客观、科学的评价,有助于开发商认清自己产品的定位.对于行业主管部门以及软件使用者来说,由于第三方测试机构独立公正的地位,可以对被测试的软件有一个客观公正的评价,帮助用户选择适宜、优秀的软件产品.(6)充分注意测试中的群集现象.测试后程序残存的错误数目与该程序中已发现的错误数目或检错率成正比.不要在某个程序段中找到几个错误就误认为该程序段就没有错误而不再测试,相反响该对错误群集的程序段进行重点测试.参考文献1张海潘.软件工程导论第6版M,清华大学出版社.2021.82萨师燎,王珊.数据

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论