超市收银系统设计说明书

上传人:feng****ing 文档编号:72293375 上传时间:2022-04-08 格式:DOC 页数:23 大小:548KB
返回 下载 相关 举报
超市收银系统设计说明书_第1页
第1页 / 共23页
超市收银系统设计说明书_第2页
第2页 / 共23页
超市收银系统设计说明书_第3页
第3页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
课程设计说明书课程名称:题目名称: 超市收银系统设计班 级:姓 名:学 号:指导教师:评定成绩:教师评语:指导老师签名年 月曰目录目 录 1摘 要 31. 概述 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#实现,系统开发工具是 VS2013。关键词:C#; VS2013 ;数据库;超市收银。1.概述超市收银系统主要功能包括:后台管理和前台操作,其中:后台管理主要包括:进货管理、销售管理、库存管理、相关业务的查询和系统维护 等;进货管理:在数据库中存储有各种商品的供应商信息,当需要进货时,可以与供应 商联系,同时数据库中会存储各种商品的每一次进货信息,并保持数据的时效性和完整 性。销售管理主要包括: 随时录入卖出商品信息 ,如名称,数量,单价等 ,及时更新数据库数 据。 货架上商品卖到一定数量时 ,实时生成提货报告 ,并提供商品的库存信息 ,剩余信息。库存管理主要包括:生成库存报告、生成缺货报告、录入更新数据。在需要时(可每隔一个时间段查询一次 ) 生成商品库存情况报告 ,实时报告商品库存情况 ,如库存量不 足 (小于某一自定的数量 ) 时,可生成缺货报告 ,并提供商品种类 ,来源等商品属性信息 ,方 便采购人员进行商品采购。采购员采购商品后 ,及时录入商品信息等数据 ,在数据库中进 行数据更新。前台操作主要包括: 前台收银员权限严格控制, 支持断网销售、 连网销售两种模式, 预留对条码扫描、票据打印机、顾显、钱箱、磁卡刷卡机、 IC 卡读写器、条码打印机、 盘点机等 POS 外设的支持,可直接修改销售数量、单价、折扣等(权限控制) ,支持赠 送(权限控制),会员卡、储值卡消费,收款抹零(权限控制) ,挂单 /取单,前台查询商 品、库存,删单、删行、查单(权限控制) ,特殊操作记录(防止前台作弊) ,支持电子 称散装商品销售,前台支持业务员录入计提,商品促销销售(按时间段) ,会员价、储 值卡价销售,支持无库存商品销售,销售小票格式自定义(标题、脚注、明细格式等)2.任务需求分析前台操作包括:商品录入: 根据超巿业务特点制定相关功能, 可以通过输入唯一编号、 扫描条形码、 商品名称等来实现精确的商品扫描录入。 该扫描录入方法可以充分保证各种电脑操作水 平层次的人员均能准确快速地进行商品扫描录入。收银业务:通过扫描条形码或者直接输入商品名称(对于同类多件商品采用一次录 入加数量的方式)自动计算本次交易的总金额。在顾客付款后,自动计算找零,同时打 印交易清单(包括交易的流水账号、每类商品的商品名、数量、该类商品的总金额、交 易的时间、负责本次收银的员工号) 。如果顾客是本店会员并持有本人会员卡,则在交 易前先扫描会员卡,并对所购物品全部实行 95 折优惠,并将所购物品的总金额累计到 该会员的总消费金额中。 会员卡的有效期限为一年,满一年未续卡者,该会员卡将被 注销。后台管理操作:进货管理: 根据销售情况及库存情况,自动制定进货计划(亦可手工制定修改) , 可以避免盲目进货造成商品积压。 按计划单有选择性地进行自动入库登记。 综合查询 打印计划进货与入库记录及金额。销售管理: 商品正常销售、促销与限量、限期及禁止销售控制。 综合查询各种销 售明细记录、各地收银员收银记录以及交结账情况等。 按多种方式统计生成销售排行 榜,灵活察看和打印商品销售日、月、年报表。库存管理: 综合查询库存明细记录。 库存状态自动告警提示。 如库存过剩、 少货、 缺货等。软件为您预警,避免库存商品积压损失和缺货。 库存自动盘点计算。人员管理:员工、会员、供货商、厂商等基本信息登记管理。员工操作权限权利、 客户销售权限管理。图1系统流程图管理商品信息PC机图2系统构架图3数据流图、数据字典及实体联系图事务,ra仓库管理员更新库存信息j销售信息销售信息售记录D1商品信息表=3产库存信息收银员销售信息卩产生销进货信息D3销售记录D2进货信息事务 前台经理了商品信息更新商品信息商品信息f进货员进货单产生进货单D4商品信息表图3数据流图4数据字典数据字典是关于数据的信息的集合, 也就是对数据流图中包含的所有元素的定义的 集合。数据字典的作用是在软件分析和设计的过程中给人提供关于数据的描述信息。名称:商品信息别名:商品单描述:超市销售商品的信息定义:商品编号+类型编号+商品名 称+库存量+售价+报警值+ 商品规格+计量单位位置:输出到打印机保存到磁盘名称:入库记录别名:进货报表描述:每次进货的货物描述定义:入库编号+货物编号+供应商编号+操作员+进价+数量 位置:输出到打印机保存到磁盘名称:销售清单别名:销售报表描述:对超市商品销售情况的描述 定义:货物编号+名称+销售日期+ 数量+售价位置:输出到打印机保存到磁盘名称:用户信息别名:描述:该系统的使用者的信息定义:用户编号+姓名+密码+权限 位置:输出到打印机保存到磁盘名称:供应商信息别名:供应商描述:和超市合作的供应商的信息定义:供应商编号+名称+联系人+地址+联系电话+传真+合作起始时间位置:输出到打印机保存到磁盘名称:会员信息信息表别名:商品编号描述:该超市所属会员的信息定义:会员编号+会员名+会员积分 +会员等级+会员电话+会员 起始日期位置:输出到打印机保存到磁盘联系人传真合作时间售价名称商品名称11供应商品电话库存量地址计量单位报警值n商品规格进货n销售进价1数量商品名称售价商品数量总金额供应商编号供应商编号类别编号商品编号入库编号商品编号1 品名称入库记录销售记录供应商图4部分实体联系(E-R)图图5用户实体ER图图6会员实体ER图5.系统概要设计5.1总体设计经过需求分析阶段的工作,系统必须“做什么”已经清楚了,现在是决定“怎样做” 的时候了。总体设计的基本目标就是回答“概括地说,系统应该如何实现”的问题。所 以总体设计又称为概要设计。通过这个阶段的工作将划分出组成系统的物理元素一程序、文件、数据库、人工过 程和文档等。总体设计的另一项任务是设计软件的结构,也就是要确定系统中的每个程 序是由那些模块组成的,以及这些模块相互间的关系。5.2系统功能模块图超市收银系统前台操作后台数据库1收 银查询修 改 商 品 信 息会 员 信 息 管 理进 货 管 理销售 管 理库 存 管 理营业统计图7系统功能模块图5.3数据库概念设计数据库一般分为三级模式:外模式、模式和模式。外模式也就是不同用户所对的数 据视图,它将数据库部抽象的数据及其互相之间的关系表示为简单、直观的应用界面。 模式是数据库中全部数据的逻辑结构和特征描述,通常以某种数据模型为基础。模式是 对数据的物理结构和存储方式的描述。在该系统中具体的模式有:商品(商品编号,类型编号,商品名称,规格,计量单位,售价,库存量,报警值) 用户(用户编号,用户名,密码,权限)入库记录(入库编号,商品编号,供应商编号,联系人,进价,数量)销售记录(商品编号,售价,销售数量,总金额)供应商(供应商编号,供应商名称,联系人,供应商,传真,地址,合作时间)会员(会员编号,会员名,会员积分,会员等级,,会员起始日期)5.4数据库逻辑结构设计在数据库设计中相当重要的一步就是将概念模型转化为计算机上DBMS所支持的数据模型,例如,将E-R图转化为关系模型,我们设计概念模型基本上都是一些抽象的 关系,再在数据库设计的实现过程中,在计算机上有效地表示出这些关系就成了数据库 设计的关键。根据超市收银系统的功能要求,选取 MySQL作为后台数据库。在上面的实体和实体之间的E-R图设计基础上,形成数据库中的表格及表格之间的 关系。该数据库包括系统登录用户的基本信息保存在用户信息表里,其中对于用户编号, 通过自增方式实现,无需用户手动编号,编号从1000起始。具体容如下表所示:用户信息表包括:用户编号、用户名、密码和用户权限,具体如下:表1用户信息表属性名字段名类型长度Null备注编号UserIDInt20否主键UserNamevarchar50否密码UserPasswordvarchar50否权限UserRightvarchar50否会员信息表包括了在该超市申请会员的消费者的信息,会员信息表包括:会员编 号、会员名、积分、权限、联系和会员起始日期,具体容如下:表2会员信息表属性名字段名类型长度Null备注会员编号VipIdInt20否主键会员VipNamevarchar50否积分VipScorevarchar50否等级VipRa nkvarchar50否VipNumbervarchar50否成为会员时间VipDatavarchar50否销售信息表包括:商品编号、售价、数量、总金额以及备注,具体容如下:表3销售信息表属性名字段名类型长度Null备注商品编号GoodsIdInt20否主键单价SellPricevarchar50否数量GoodsNumvarchar50否总价zon gsellvarchar50否备注Remarkvarchar50否销售时间DataTimevarchar50否商品信息表包括:商品编号、商品名称、商品类型、计量单位、规格、售价、库存 量、报警值和备注,具体容如下表:表4商品信息表属性名字段名类型长度Null备注商品编号GoodsldInt20否主键类型号Typeldvarchar50否商品名称GoodsNamevarchar50否计量单位GoodsU nitvarchar50是规格GoodsNormvarchar50否售价GoodsSellpricevarchar50否库存量GoodsNumvarchar50否报警值AlarmNumvarchar50否备注GoodsRemardkvarchar50是入库记录表包括:入库编号、商品编号、供应商编号、联系人、进价、数量以及备 注,具体容如下:表5入库记录表属性名字段名类型长度Null备注入库编号StockIdInt20否主键商品编号GoodsIdvarchar50否外键供应商编号Compa nyldvarchar50否操作员Operatorvarchar50否进价GoodsPricevarchar50否入库时间DataTimevarchar50否数量GoodsNumvarchar50否备注Remarkvarchar50是供应商信息表包括:供应商编号、供应商名称、联系人、传真、地址、合作起始时间,具体容如下表:表6供应商信息表属性名字段名类型长度Null备注供应商编号Compa nyldInt20否主键供应商名称Compa ny Namevarchar50否联系人Compa nyDirectorvarchar50否Compa nyPho nevarchar50否传真Compa ny Faxvarchar50否地址Compa ny Addvarchar50否合作时间HzDataTimevarchar50否6.详细设计详细设计阶段的根本目标是确定应该如何具体地实现所要求的系统, 包括用户界面 设计、程序过程设计等步骤。也就是说,经过这个阶段的设计工作,应该得出对目标系 统的精确描述,从而在编码阶段可以把这个描述直接翻译成某种设计语言书写的程序。 详细设计阶段的任务不是具体的编写程序,而是要设计出程序的“蓝图” ,以后程序员 将根据这个“蓝图”写出实际的程序代码。6.1 系统的主要功能该系统采用 C/S 结构,超市收银系统的主要功能包括:后台管理和前台操作。前台 的主要功能是:(1)记录超市前台收银员的收银信息;(2)查询、修改商品信息;后台的主要功能是:(1)记录商品的入库记录;(2)管理商品的库存、价格等具体信息(3)记录商品的销售记录;(4)管理超市会员的会员信息;(5)管理登陆用户的信息。6.2 人机界面设计6.2.1 一般交互设计一般交互设计涉及信息显示、数据输入和系统整体控制。(1)保持一致性。为客户交互界面中的菜单选择、命令输入、数据显示以及众多 的其他功能,使用一致的格式。(2)提供信息的反馈。向用户及时提供视觉和听觉的信息反馈,以保证在用户和 系统之间及时地建立双向通信。在本系统设计过程中,基本做到了信息的及时反馈,当 用户操作完一步后系统会对数据库中的数据进行及时地显示。3)执行有较大影响的操作前提示用户确认。在设计过程中,如果用户要执行删 除操作,以及对数据库的读写操作时,都会有窗体弹出询问继续操作或者予以提示。(4)减少两次操作间需要记忆的容。 为了避免用户为下一步操作而记忆大量数据,所以在设计过程中在需要数据传递的窗体中设置全局变量,来传递数据。(5)提高对话、移动和思考的效率。尽量减少用户击键的次数,在设计时考虑用 户屏幕的布局以减少用户鼠标移动的距离,尽量避免用户在操作中发生疑问的情况。(6)允许犯错误。允许用户的误操作尽量不对系统造成伤害。(7)按功能对动作分类,并据此设计屏幕布局。屏幕布局尽量将软件所具有的所 有功能在主页面展示,界面一目了然。6.2.2 信息显示设计 系统在显示用户所需要的信息时应该尽量完整、清晰和易于理解。这样才能满足用 户的需求。使用不同的方式显示信息:用文字、图形、声音,按位置、移动和大小,使 用颜色和省略等方式传达信息。(1)只显示与当前工作有关的信息。在用户操作有关系统的特定功能的信息时, 不必看到与之无关的数据、菜单和图形。(2)使用便于用户迅速吸收数据的方式来表示数据。(3)使用一致的标记、标准的缩写和可预知的颜色。显示的含义应该非常准确, 用户无须参照其他信息源就能理解。(4)产生有意义的错误信息。对于系统在运行过程中产生的错误尽量给用户返回 一个容易理解的错误信息,以使用户保持对系统的信任,和系统的可用性。(5)使用窗口分隔不同类型的信息。使用不同的窗口显示、保存不同类型的信息。(6)高效率的使用显示屏。当使用多窗口时,应该有足够的空间使得每个窗口至 少都能显示出一部分。6.2.3 数据输入设计 用户的大部分时间用在选择菜单命令、键入数据和向系统提供输入。在系统中,键 盘是主要的输入介质,但是鼠标等设备的也是重要的输入手段,所以,对于他们的数据 输入操作有如下约定:(1)尽量减少用户的输入动作。为了方便用户的使用,鼠标应当尽量减少操作的 幅度。2)保持显示信息和输入信息之间的一致性。对于用户来说,要保证其输入的数 据在显示上与其他显示的视觉特征(例如:文字大小、颜色、位置等)要一致。(3)允许用户自定义输入。用户可能希望定义自己专用的命令或略去某些类型的 警告信息和动作确认,人机界面应该为用户提供这样做的机制。(4)交互应该是灵活的,并且可调整成用户最喜欢的输入方式。用户类型与喜欢 的输入方式有关,不同的用户喜欢不同的输入方式。(5)使用当前动作语境中不适用的命令不起作用。这可使得用户不去做那些肯定 会导致错误的动作。(6)让用户控制交互流。用户应该能跳过不必要的动作,改变所需做的动作的顺 序,以及在不退出程序的情况下从错误状态中恢复正常。(7)消除冗余的输入。除非可能发生误解,否则不要要求用户指定输入数据的单 位;尽可能提供默认值,绝对不要要求用户提供程序可以自动获得或计算出来的信息。 对于不同类型的用户在登录到系统后,由于有不同的权限,所以在主界面中会有一些项 目受到限制而无法使用,所以要使这些项目不发生作用,以保证系统安全。6.3 程序设计过程程序过程设计主要是在借助过程设计工具的情况下, 对程序的具体实现过程进行设 计。程序的主要部分设计在这个环节完成。在这个任务说明书中我们采用盒图的形式来 表达程序的具体的设计过程,我们的系统设计为 C/S 结构,所以是客户端登陆系统的形 式,盒图没有箭头,所以不允许随意转移控制,坚持使用盒图可以使程序员养成用用结 构化的方式来思考问题。6.3.1 登陆界面在用户登录时, 在输入用户名和密码及用户类型的前提下将其与数据库中的数据进 行比对,若一致,则打开主窗体;若不一致提示错误,并要求重新输入。注册后保存用 户信息,登陆界面的的程序盒图如图 5.1 所示:连接数据库用户名和密码输入一是提示输入账户是否存在提示错误显示提示框“登录成功”图8登陆界面程序盒图632后台管理操作对于系统的各项信息的管理属于后台管理,管理程序盒图如图5.2所示:是否进行操作是是否选中数据*是管理后台信息X/否、操作是否成功是进行操作重新操作保存信息图9后台管理操作程序盒图7软件测试测试是为了发现程序中的错误而执行的程序。 好的测试方案是极有可能发现迄今为 止尚未发现的错误的测试方案,成功的测试是发现了至今为止尚未发现的错误的测试。 为了能设计出有效的测试方案, 软件工程师必须深入理解并正确运用软件测试的基本准 则:(1)所有测试都应该能追溯到用户需求。从用户角度看,最严重的错误是导致程 序不能满足用户需求的哪些错误。(2) 应该预案在测试开始之前就制定出测试计划。实际上,一旦完成了需求模型 就可以着手制定测试计划,在建立了设计模型之后就可以立即开始详细设计的测试方 案。(3) 把pareto原理应用到软件测试中。Pareto原理说明,测试发现的错误当中的 80%很可能是由程序中 20%的模块造成的。(4) 完全测试是不可能的,测试需要终止。测试无法显示软件潜在的缺陷,“测试 只能证明软件存在错误而不能证明软件没有错误” 。最初的测试通常把焦点放在单个程 序模块上,进一步测试的焦点则转向在集成的模块簇中寻找错误,最后在整个系统中寻 找错误。在测试中不可能运行路径的每一种组合。然而,充分覆盖程序逻辑,并确保程 序设计中使用的所有条件是有可能的。(5) 应由独立的第三方来构造测试。第三方测试最大的特点在于它的专业性、独 立性、客观性和公正性。对于软件开发商来说,经过第三方测试机构的测试,不仅可以 通过专业化的测试手段发现软件错误,帮助开发商提升软件的品质,而且可以对软件有 一个客观、科学的评价,有助于开发商认清自己产品的定位。对于行业主管部门以及软 件使用者来说,由于第三方测试机构独立公正的地位,可以对被测试的软件有一个客观 公正的评价,帮助用户选择合适、优秀的软件产品。(6) 充分注意测试中的群集现象。测试后程序残存的错误数目与该程序中已发现 的错误数目或检错率成正比。 不要在某个程序段中找到几个错误就误认为该程序段就没 有错误而不再测试,相反应该对错误群集的程序段进行重点测试。参考文献1 海软件工程导论(第6版)M.清华大学.2013.82 萨师煊 , 王珊. 数据库系统概论 M. 高等教育 .2006.53 承欢,勇.管理信息系统基础与开发技术 M .人民邮电 .20054 云生.数据库系统概论 M. 华中科技大学 .20025 殷人昆,人杰 . 实用软件工程(第 3版) M. 清华大学 .2010.116 朱少民.软件测试方法和技术(第2版)M.清华大学.2010.77 友生.软件体系结构(第 2版) M. 清华大学,2006.1 18 石志国.ASP精解案例教程(修订版)M.清华大学,2006.79 万宝.ASP.NET技术详解与应用实例M.机械工业,2005.910 汪洋.设计全程教程 M. 科学. 2002.111 志国等.Delphi应用程序开发精彩实例M.机械工业.2003.412 磊.PowerBuilder数据库项目案例导航M.清华大学.2005.113 晶.VB6.0程序设计M.机械工业.2004.814 晓华.JSP应用开发详解(第三版)M.电子工业.2007.115 何玉洁,宝安.数据库系统教程M.人民邮电.2010.916 王珊著 数据库系统概论(第四版) .高等教育, 2002.317 金玲等著数据库原理及应用实验与课程设计指导清华大学18 钱雪忠等著数据库原理及技术课程设计 (全新正版)清华大学, 2009.219 周屹著数据库原理及开发应用 -实验与课程设计指导清华大学, 2008.1220 春葆等著 Visual Basic 数据库系统设计与开发清华大学, 2003.821 唐红亮著SQL Server数据库设计与系统开发教程清华大学, 2007.1022 丁钟俊著数据库系统原理及应用清华大学,2012.423 绍峰等著数据库系统原理及应用水利水电,2011.224 万常选著数据库系统原理与设计(第 2 版)清华大学, 2012,.925 建华等著数据库系统设计与原理(第 2 版)清华大学, 2012.8
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 活动策划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!