《软件工程大作业小型超市管理系统.docx》由会员分享,可在线阅读,更多相关《软件工程大作业小型超市管理系统.docx(27页珍藏版)》请在三一办公上搜索。
1、版本号日期软件工程大作业“小型超市收银管理系统软件设计说明书姓名:小戴班级:自动化1202完成日期:指导教师:王教师中南大学信息科学与工程学院目录1弓I言1Ll编写目的1.2 范围1.3 定义11.4 参考资料12工程概述12.1 产品描述22.2 产品功能22.3 用户特点22.4 一般约束32.5 假设和依据33具体需求33.1功能需求33.1.1功能需求133.1.2功能需求2错误味定义书签。错误!未定义书签。3.Ln功能需求n3.2 行为需求43.3 数据需求73.4 外部接口需求73.4.1用户接口73.4.2硬件接口73.4.3软件接口3.4.4通信接口错误!未定义书签。错误!未定
2、义书签。3.5 性能需求83.6 设计约束83. 6.1其他标准的约束83.6.2硬件的限制错误!未定义书签。平安性73.8 可维护性83.9 可转移转换性94总体设计10运行环境10根本设计概念和处理流程115-VI*12系统功能模块图12各子系统功能模块图13程序流程图15连接数据库的特点16用户界面设计175.6软件测试18附录201引言1.1 编写目的经过工程的可行性分析,得出工程可进一步进展下去的结论,在软件继续进一步的开发之前首先给出此软件工程方案。1.2 范围说明:名称:小型超市收银管理系统功能:超市零售管理系统是小型超市商品销售及货物管理的主要控制局部,直接影响销售的方便性及管
3、理的标准性。随着信息时代的开展,对效率的要求日益提高,因而软件控制销售和管理已经取代了传统全手工方式。小型超市具有自身的特点:商品要求一般齐全,进出货关系较为简单,员工人数种类不多;在软件角度看,数据较少,对存储和速度要求不高。但正由于员工较少,使用软件控制成为必须。此说明书的主要读者是各种超市管理人员,以及类似的管理部门。系统权限的设定、原始数据录入、数据的汇总及查询等。从而,实现对进货、销售及员工信息等实现全面、动态、及时的管理。因为通过网络传递销售信息可以不受距离的限制,因此可以借阅许多的人力和物力,方便管理,由此可以减少不必要的开支,同时该系统可以提高超市的销售效率,即提高了超市的经济
4、效益,所以从经济上完全是可行的。1.3 定义关键词:超市收银,管理系统,VisualBasic,SQLserver20001. 4参考资料1初小璐.完全掌握SQLSerVer2000M机械工业出版社,20042工程概述1.1 产品描述21世纪,超市的竞争也进入到了一个全新的领域,竞争已不再是规模的竞争,而是技术的竞争、管理的竞争、人才的竞争。技术的提升和管理的升级是超市业的竞争核心。零售领域目前呈多元开展趋势,多种业态:超市、仓储店、便利店、特许加盟店、专卖店、货仓等相互并存。如何在剧烈的竞争中扩大销售额、降低经营本钱、扩大经营规模,成为超市营业者努力追求的目标。工程分析单位在接到工程分析员给
5、出的工程可行性分析报告后,在本系统,即仓库进货管理系统开发主管部门的统一下制定用于软件实质开发的软件工程方案,以使软件开发单位理解软件开发要求,进展开发。1.2 产品功能本系统主要包括:仓库管理、货架管理和收银管理。1)仓库管理主要包括:生成库存报告、生成缺货报告、录入更新数据。在需要时(可每隔一个时间段查询一次)生成商品库存情况报告,实时报告商品库存情况,如库存量缺乏(小于某一自定的数量)时,可生成缺货报告,并提供商品种类,来源等商品属性信息,方便采购人员进展商品采购。采购员采购商品后,及时录入商品信息等数据,在数据库中进展数据更新。2)货架管理主要包括:货架上商品卖到一定数量时,实时生成提
6、货报告,并提供商品的库存信息、,剩余信息。3)收银管理主要包括:随时录入卖出商品信息,如名称,数量,单价等,及时更新数据库数据。1.3 用户特点最终用户是超市管理员以及超市的管理部门,他们都是负责管理整个超市正常运行的关键人员,对整个超市的经营有很大的影响。使用频度为每日每时每刻。2. 4一般约束1、本系统开发人员为5人。2、有CPUI33、16兆内存配置的计算机就可运行本系统。c.在管理方针、并行操作、平安与保密方面无约束3、预算软件资金投入较少,具体预算分配简单。4、关键问题各模块之间的联系和后台数据库的完成。使用目前的设备与现有开发技术完全可以开发出该系统,总的来说该工程没有较大的技术难
7、点与其他的一些风险因素。对于出现的一些小难点总都能得到解决。3. 5假设和依据本软件在开发的过程中,分为技术实现与软件工程两大局部,两局部都有侧重点,假设技术支持出现故障或疑难问题无法解决、程序开发出现偏差,会延误工程进度,影响工程的按期完工。假设软件工程陈述出现问题,局部描述含混不清那么会影响系统的完整性与可继承性。在管理方面,如管理者没有预见性,对出向的问题无法采用可行的解决手段,都会影响开发模块之间的互动,从而影响工程的顺利开展,导致工程无法按期完工。3具体需求功能需求商品录入:根据超市业务特点制定相关功能,可以通过输入唯一编号、扫描条形码、商品名称等来实现准确或模糊的商品扫描录入。该扫
8、描录入方法可以充分保证各种电脑操作水平层次的人员均能准确快速地进展商品扫描录入。收银业务:通过扫描条形码或者直接输入商品名称1对于同类多件商品采用一次录入加数量的方式)自动计算本次交易的总金额。在顾客付款后,自动计算找零,同时打印交易清单(包括交易的流水账号、每类商品的商品名、数量、该类商品的总金额、交易的时间、负责本次收银的员工号)。如果顾客是本店会员并持有本人会员卡,那么在交易前先扫描会员卡,并对所购物品全部实行95折优惠,并将所购物品的总金额累计到该会员的总消费金额中。会员卡的有效期限为一年,满一年未续卡者,该会员卡将被注销。平安性。PoS登陆、退出、换班与操作锁定等权限验证保护;断电自
9、动保护最大限度防止意外及恶意非法操作。进货管理:根据销售情况及库存情况,自动制定进货方案(亦可手工制定修改),可以防止盲目进货造成商品积压。按方案单有选择性地进展自动入库登记。综合查询打印方案进货与入库记录及金额。销售管理:商品正常销售、促销与限量、限期及制止销售控制。综合查询各种销售明细记录、各地收银员收银记录以及交结账情况等。按多种方式统计生成销售排行榜,灵活观察和打印商品销售日、月、年报表。库存管理:综合查询库存明细记录。库存状态自动告警提示。如库存过剩、少货、缺货等。软件为您预警,防止库存商品积压损失和缺货。库存自动盘点计算。人员管理:员工、会员、供货商、厂商等根本信息登记管理。员工操
10、作权限权利、客户销售权限管理。4. 2行为需求数据流图由四种根本的元素构成:数据流(DataFlOw),处理(PrOCess),数据存储和数据源(数据终点)。数据流(DataFlOW):为具有名称且有流向的数据,用标有名称的箭头表示,一个数据可以是记录、组合项或根本项。处理(ProCess):表示对数据所进展的加工和变换,在图中用矩形框表示。指向处理数据流为该处理的输入数据,离开处理的数据为处理的输出数据。数据存储:表示用文件方式或数据库形式所存储的数据,堆砌进展的存取分别以指向或离开数据存储的箭头表示。数据源及数据终点:表示数据的来源或数据的去向,可以是一个组织或人员。库存管理局部销售信息看
11、询销售清单2:查询销售单销售清单2:更新前台销售信息*销售管理局部己进货信息新供货商信息进货管理局部3.3数据需求1)商店中的所有用户(员工)可以销售多种商品,每种商品可由不同用户(员工)销售;2)每个顾客可以购置多种商品,不同商品可由不同顾客购置;3)每个供货商可以供给多种不同商品,每种商品可由多个供给商供给。视图设计D交易视图(vDealing)用于查询交易情况的视图;2)方案进货视图(v.PlanStock)用于查询进货方案的视图;3)销售视图(v_Sale)一用于查询销售明细记录的视图;入库视图(v_Stock)用于查询入库情况的视图1 .4外部接口需求3 .4.1用户接口会影响系统的
12、完整性与可继承性。在管理方面,如管理者没有预见性,对出向的问题无法采用可行的解决手段,都会影响开发模块之间的互动,从而影响工程的顺利开展,导致工程无法按期完工。3.4.2硬件接口本工程产品不需要特定的硬件或硬件接口进展支撑。3.4.3软件接口本工程产品的软件接口由汉语编程操作系统、汉语编程数据库以及汉语编程企业管理应用软件的词典和数据构造组成。3.4.4通讯接口本工程产品的没有特殊的通讯接口,通讯接口由所使用的pc机决定。3. 5性能需求预处理的窗口正常情况下和峰值工作条件下为20个,一定时间周期中要处理的数据的数量:窗口开场尺寸2个数据,开场位置2个数据,最大尺寸2个数据,最小尺寸2个数据,
13、编辑框位置4个数据,按钮位置4个数据,平均处理的数据约为16个数据。a.支持的终端数为1台;b.支持并行操作的用户总数为5位;c.处理5个文件及10条记录;d.表或文件的最小为266字节,最大为4字节5. 6设计约束6. 技术约束a.数据库、各种控键的使用和消息的调用;b.汉语数据库过滤完成、编辑框的触发等;运行本软件需要奔腾133以上PC,内存需要在16兆以上,对使用设备的速度、规模要求不高。汉语编程企业管理应用软件完全按照北京元易达科技开展有限责任公司企业标准开发,包括硬件、软件和文档规模。3. 6.4其他标准的约束本项将指定由现有的标准或规那么派生的要求例如:a.报表格式;b.数据命名;
14、c.财务处理;d.审计追踪,等等。3.7 平安性本软件大量的参数及文本内容全部放于汉语编程数据库中,所以参数不容易被错改、破坏,万一参数受到破坏也不会影响源程序。可维护性本软件利用数据库进展编程,系统构造由程序根本确定,大量的参数及文本内容全部放于汉语编程中。修改、更新数据只要在数据库进展修改添加,而不需要对系统构造进展修改,这样系统维护性、升级都十分方便3.9 可转移转换性汉语编程的兼容性很高,在windows9598.WindowsNT,windowsl700.操作系统都可以直接运行。4系统总体设计通过这个阶段的工作将划分出组成系统的物理元素。系统概要设计的根本目的是用比拟抽象的概括方式确
15、定系统如何完成预定的任务,也就是要确定系统的配置物理方案。软件构造设计时应该遵循的最主要的原理是模块独立,让模块彼此间的接口关系应该尽量简单。数据库一般分为三级模式:外模式、概念模式和内模式。外模式也就是不同用户所对的数据视图,它将数据库内部抽象的数据及其互相之间的关系表示为简单、直观的应用界面。概念模式是数据库中全部数据的逻辑构造和特征描述,通常以某种数据模型为根底。内模式是对数据的物理构造和存储方式的描述。数据项和数据构造在这里我们将要设计的是数据库的概念模式,通过对超市管理系统的内容和数据流程分析及E-R图,设计如下数据项和数据构造。a)商品信息表(商品编号,商品名称,价格,条形码,促销
16、价格,促销起日期,促销至日期,允许打折,库存数量,库存报警数量,方案进货数,允许销售,厂商编号,供货商编号)b)用户表(用户编号,用户名称,用户密码,用户类型)c)会员表(会员编号,会员卡号,累积消费金额,注册日期)d)销售表(销售编号,商品编号,销售数量,销售金额,销售日期)e)交易表(交易编号,用户名称,交易金额,会员卡号,交易日期)f)进货入库表(入库编号,入库商品编号,入库数量,单额,总额,入库日期,方案进货日期,入库状态)g)供货商表(供货商编号,供货商名称,供货商地址,供货商)h)厂商表(厂商编号,厂商名称,厂商地址,厂商)实体联系E-R图根据对数据流图和数据字典的分析,我们可以确
17、定该应用中的实体,属性和实体之间的关系,并画出如下所示的E-R图。超市管理系统EY模型,如图4.1所示:5、详细设计详细设计阶段的根本目标是确定应该如何具体地实现所要求的系统,包括了用户界面设计、程序过程设计等步骤。可以根据模块独立原理对软件构造进展精化。为了合理的分解,得到尽可能高的内聚、尽可能松散的耦合,最终要的是,为了得到一个易于实现、易于测试和易于维护的软件构造,应该对模块进展再分解或合并。图5.1系统功能模块图本系统共包括两大模块,分别是前台POS销售系统和后台管理系统。前台POS销售系统又分为商品录入子系统和收银业务子系统。后台管理系统分为进货管理模块、销售管理模块、人员管理模块和
18、库存管理模块。图5.2商品录入子系统功能描述:商品录入子系统要求能快速录入商品,因此必须支持条形码扫描。图5.3收银业务子系统功能描述:收银业务子系统能计算交易总额,打印交易清单,并根据会员卡打折。图5.4进货管理子系统功能描述:进货管理子系统可以根据库存自动指定进货方案,进货时自动等级,以及提供查询和打印方案进货与入库记录的功能。图5.5销售管理子系统功能描述:销售管理子系统可以控制某商品是否允许销售,查询每种商品的销售情况并产生年、月、日报表,同时可以生成销售排行榜。图5.6库存管理子系统功能描述:库存管理子系统提供查询库存明细记录的根本功能,并根据库存的状态报警,以及自动盘点计算。6.人
19、员管理子系统功能描述:人员管理子系统提供根本信息登记管理,员工操作权限管理,客户销售权限管理的功能。图5.7人员管理子系统程序流程图的优点是对控制流程的描绘很直观,易于掌握。通过对系统的调查和可行性分析,画出程序的流程图如下所示,程序过程设计主要是在借助过程设计工具的情况下,对程序的具体实现过程进展设计。程序的主要局部设计在这个环节完成。其主要包括以下几个局部:f1淖结算流程连接数据库的特点当开发环境通过连接到数据库上之后,在设计中使用数据库画笔可实现对该数据库中表格,视图等的操作,如创立表,修改表,删除表,增加/删除记录。设计中设计数据窗口的时候,通过对话框实现与数据的连接。在应用程序中那么
20、一般是在应用程序对象中书写连接数据库的程序代码,使得应用程序开场运行并实现与数据库的连接。一般交互涉及信息显示、数据输入、和系统整体控制等方面。1、一致性为客户交互界面中的菜单项选择择、命令输入、数据显示以及众多的其他功能,使用一致的格式。在设计的过程中,根本上保持了系统的格式一致。2、信息的反应向用户及时提供视觉和听觉的信息反应,以保证在用户和系统之间及时地建立双向通信。在本系统设计过程中,根本做到了信息的及时反应,在信息显示的大局部窗体中包括了刷新按钮,会对数据库中的数据进展及时地显示。另外,在进展错误操作是,会弹出提示窗口并发出警告提示音。3、执行有较大影响的操作前提示用户确认在设计过程
21、中,如果用户要执行删除操作,以及对数据库的读写操作时,都会有窗体弹出询问继续操作或者予以提示。4、减少两次操作间需要记忆的内容为了防止用户为下一步操作而记忆大量数据,所以在设计过程中在需要数据传递的窗体中设置全局变量,来传递数据。例如在入账和入库的模块的操作中都用到了这样的方法。5、对话、移动和思考的效率尽量减少用户击键的次数,在设计时考虑到了用户屏幕的布局以减少用户鼠标移动的距离,尽量防止用户在操作中发生疑问的情况。6、允许错误允许用户的误操作尽量不对系统造成伤害。7、按功能对动作分类,并据此设计屏幕布局屏幕布局尽量将软件所具有的所有功能在主页面展示,界面一目了然。应当尽量为用户提供的界面显
22、示时完整的、明确的和容易理解的。这样才能满足用户的需求。使用不同的方式显示信息:用文字、图形、声音,按位置、移动和大小,使用颜色和省略等方式传达信息。1、只显示与当前工作有关的信息在用户操作有关系统的特定功能的信息时,不必看到与之无关的数据、菜单和图形。2、使用便于用户迅速吸收数据的方式来表示数据在系统设计的过程中,较多地使用了图表的形式表示数据,例如在分析中就使用了柱状图的形式表现了复杂的数据。这样,用户可以直观的体会到图表所表示的含义。3、使用一致的标记、标准的缩写和可预知的颜色为了使系统所表达的含义准确、无误,就必须适用一致的标记、标准的缩写和可以预知的缩写,这样用户就无需参照其他信息源
23、就能理解,而正确地适用软件。4、产生有意义的错误信息对于系统在运行过程中产生的错误尽量给用户返回一个容易理解的错误信息,以使用户保持对系统的信任,和系统的可用性。5、使用窗口分隔不同类型的信息使用不同的窗口显示、保存不同类型的信息。6、高效率的使用显示屏当使用多窗口时,应该有足够的空间使得每个窗口至少都能显示出一局部。此外,屏幕的大小应该选得和应用系统的类型相配套。在各个显示数据的窗口中,由于数据窗体工程较多,所以在数据窗体空间中较多的是用了垂直和水平滚动条,以保证信息的全面正确显示。用户的大局部时间用在选择菜单命令、键入数据和向系统提供输入。在系统中,键盘是主要的输入介质,但是鼠标等设备的也
24、是重要的输入手段,所以,对于他们的数据输入操作有如下约定:1、保持信息显示和数据输入间的一致性为了方便用户的使用,鼠标应当尽量减少操作的幅度。2、保持显示信息和输入信息之间的一致性对于用户来说,要保证其输入的数据在显示上与其他显示的视觉特征(例如:文字大小、颜色、位置等)要一致。对于不同类型的用户在登录到系统后,由于有不同的权限,所以在主界面中会有一些工程受到限制而无法使用,所以要使这些工程不发生作用,以保证系统平安。5. 6软件测试软件测试的目的,第一是确认软件的质量,其一方面是确认软件做了你所期望的事情(Dotherightthing),另一方面是确认软件以正确的方式来做了这个事件(Doi
25、tright)。第二是提供信息,比方提供给开发人员或程序经理的反应信息,为风险评估所准备的信息。第三软件测试不仅是在测试软件产品的本身,而且还包括软件开发的过程。如果一个软件产品开发完成之后发现了很多问题,这说明此软件开发过程很可能是有缺陷的。因此软件测试的第三个目的是保证整个软件开发过程是高质量的。测试的方法和步骤软件的测试方法有两种,一种是黑盒测试(功能测试),另外一种是白盒测试(构造测试)。黑盒测试把程序看作一个黑盒子,完全不考虑程序的内部构造和处理过程。也就是说,黑盒测试是在程序接口进展的测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当的承受输入数据并产生正确的
26、输出信息,程序运行过程中能否保持外部信息的完整性。白盒测试的前提是可以把程序看成装在一个透明的白盒子里,测试者完全知道程序的构造和处理算法。这种方法按照程序内部的逻辑测试程序,检测程序中的主要执行通路是否能按预定的要求正确工作。在本次软件的测试工作中,由于水平的限制,仅仅对软件的各个功能模块进展了测试,并对各个模块之间的接口进展了详细的测试(用黑盒测试法)。测试的步骤由于该系统是一个小系统,可以把整个系统作为一个单独的实体来测试。当然,在测试的过程中可以分模块、分阶段来进展。大型软件系统通常是有假设干个子系统组成,且每个子系统由由许多模块组成,因此,软件的测试过程根本上由以下步骤组成: 模块测
27、试 子系统测试 系统测试 验收测试 平行运行本次设计主要模块有查询模块、修改模块、输入模块和删除模块等,这里只列出以下模块的测试用例。当然,在实际的测试中应尽可能的对每个功能,都能测试到。1、登录测试1)输入空账号2)输入不存在的账号密码3)输入正确的账号和错误的密码4)输入正确账号和空密码2添加员工测试5)添加一个已存在的员工6)添加一个不存在的员工3、删除员工测试7)删除一个不存在的员工8)删除一个已存在的员工4、查询员工测试9)查询一个不存在的员工10)查询一个存在的员工11)查询员工的各种奖惩记录附录在数据库设计中相当重要的一步就是将概念模型转化为计算机上DBMS所支持的数据模型,例如
28、,将E-R图模型转化为关系模型,道理很简单,我们设计概念模型根本上都是一些抽象的关系,在再数据库设计的实现过程中,在计算机上有效地表示出这些关系就成了数据库设计的关键。根据超市管理系统的功能要求,选取ViSUalBasic6.0作为后台数据库。一、在上面的实体和实体之间的E-R图设计根底上,形成数据库中的表格及表格之间的关系。表5T数据库表索引表名中文名MerchInfo商品信息表User用户表Menber会员表Sale销售表Dealing交易表Stock进货入库表Provide供货商表Factory厂商表表5-2商品信息表(MerChlnfo)字段名字段类型长度主/外键字段值约束对应中文名M
29、erchIDint4PNotnull商品编号MerchNameVarchar50Notnull商品名称MerchPriceMoney4Notnull价格MerchNumInt4Notnull库存数量CautionNumInt4Notnull库存报警数量PlanNumInt4null方案进货数BarCodeVarchar50Notnull条形码SalesProPriceMoney4促销价格SalesProDateSDatetime8促销起日期SalesProDateEDatetime8促销止日期AllowAbateInt4Notnull允许打折AllowSaleInt4Notnull允许销售Fa
30、ctoryIDVarchar10FNotnull厂商编号ProvideIDVarchar10FNotnull供货商编号表5-3用户表(User)字段名字段类型长度主/外键字段值约束对应中文名UserIDvarchar10PNotnull用户编号UserNameVarchar25Notnull用户名称UserPWVarchar50Notnull用户密码UserStyleInt4Notnull用户类型表5-4会员表(Menber)字段名字段类型长度主/外键字段值约束对应中文名MemberIDVarchar10PNotnull会员编号MemberCardVarchar20Notnull会员卡号Tot
31、alCostMoney4Notnull累积消费金额RegDateDatetime8Notnull注册日期表5-5销售表(Sale)字段名字段类型长度主/外键字段值约束对应中文名SaleIDVarchar10PNotnull销售编号MerChTDVarchar10FNotnull商品编号SaleDateDatetime8Notnull销售日期SaleNumInt4Notnull销售数量SalePriceMoney4Notnull销售单额表5-6交易表(Dealing)字段名字段类型长度主/外键字段值约束对应中文名DealingIDVarchar10PNotnull交易编号DealingPriCe
32、Money4Notnull交易金额DealingDateMoney4Notnull交易日期MemberIDVarchar10会员卡号UserNameVarchar10FNotnull用户名称表5-7入库记录表(StOCk)字段名字段类型长度主/外键字段值约束对应中文名StockTDVarchar10PNotnull入库编号MerchIDVarchar10FNotnull入库商品编号MerchNumInt4Notnull入库数量MerchPriceMoney4Notnull单额TotalPriceMoney4Notnull总额StockDateDatetime8Datetime入库日期PlanD
33、ateDatetime8Datetime方案进货日期StockStateInt4Notnull入库状态表5-8供货商表(PrOVide)字段名I字段类型长度主/外键字段值约束对应中文名IProvideIDvarchar10PNotnull供货商编号ProvideNameVarchar50Notnull供货商名称ProvideAddreSSVarchar250供货商地址ProvidePhoneVarchar25供货商表5-9厂商表(ProVide)字段名字段类型长度主/外键字段值约束对应中文名FactoryIDvarchar10PNotnull厂商编号FactoryNameVarchar50Notnull厂商名称FactoryAddreSSVarchar250厂商地址FactoryPhoneVarchar25厂商任务分工姓名学号任务分工戴玉言0909120726具体需求、引言贾慧0909120711工程概述何绍颖0909120817系统总体设计李翔鑫0909120828详细设计