为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 仓库管理系统设计与实现-软件工程课程设计任务书doc

仓库管理系统设计与实现-软件工程课程设计任务书doc

2021-02-04 5页 doc 3MB 28阅读

用户头像 机构认证

精品文库

海霄科技有卓越的服务品质,为满足不同群体的用户需求,提供制作PPT材料、演讲幻灯片、图文设计制作等PPT及文档优质服务。

举报
仓库管理系统设计与实现-软件工程课程设计任务书doc目录TOC\o"1-3"\h\z\u4、系统层次模块图设计155、模块设计156、接口设计158、出错处理设计169、安全设计1610、维护设计16五、详细设计161、界面设计163、程序设计21六、测试211、测试环境212、黑盒测试213、白盒测试(基本路经测试法)28(1)登录模块28七、调试34八、开发总结35九、用户手册37一、开发计划1、引言(1)编写目的本系统设计是在windows环境的支持下运行的,采用窗口式执行文件,操作实用、简易、方便、直观。本着高效、全面、安全的设计思想,实现公司仓库的有效管理。(2)项目...
仓库管理系统设计与实现-软件工程课程设计任务书doc
TOC\o"1-3"\h\z\u4、系统层次模块图设计155、模块设计156、接口设计158、出错处理设计169、安全设计1610、维护设计16五、详细设计161、界面设计163、程序设计21六、测试211、测试环境212、黑盒测试213、白盒测试(基本路经测试法)28(1)登录模块28七、调试34八、开发总结35九、用户手册37一、开发计划1、引言(1)编写目的本系统设计是在windows环境的支持下运行的,采用窗口式执行文件,操作实用、简易、方便、直观。本着高效、全面、安全的设计思想,实现公司仓库的有效管理。(2)项目背景开发系统名称:仓库管理系统项目任务提出者:吴景晨开发者:吴景晨2、项目概述(1)工作可行性研究、需求、概要设计、程序设计、系统测试。(2)主要参加人员吴景晨、马晓庆、李丹、杨宏霞、郭磊、任沛轩(3)产品仓库管理系统(4)验收标准①为了方便用户操作,该系统提供了部分提示窗口,使用户能够按照提示语句完成各项操作。②为了实现仓库的安全有效管理,系统设置了用户登陆的首界面,管理员和员工需要正确的用户名和密码。③本系统的查询功能可以按照货物编号、日期、指数等项目进行查询或全部浏览。④本系统的修改功能提供了逐条察看的方式修改删除和以货物编号、日期、指数等方式进行查询的功能,而且本着直观、方便的原则进行设计窗口。⑤本系统包含“数据添加”、“数据查询”、“数据修改”、“用户管理”、“退出”等功能。本系统包含数据库主要用于存放仓库管理信息和管理员信息。(5)完成项目最迟期限:2010.05.213、实施计划(1)工作任务的分解及人员分工开发计划——吴景晨可行性分析——李丹、郭磊(成本--效益分析)需求分析——马晓庆、任沛轩(用户访谈)概要设计——吴景晨、杨宏霞(数据字典)详细设计——吴景晨程序编写——吴景晨测试用例——吴景晨(白盒测试)、马晓庆(黑盒测试)开发总结——杨宏霞用户手册——任沛轩、郭磊(2)接口人员吴景晨,负责数据库的连接及数据库的建立。(3)进度阶段人数工作量/人/日时间/日起止时间可行性研究3934.28--4.30需求分析2845.1—5.4系统设计2845.5—5.9程序设计1555.10—5.14系统测试2845.15—5.18系统试运行51535.19—5.21表1.1详细进度表(4)预算20元——电费以及文档打印费用。4、支持条件计算机支持硬件:CPU型号为Pentium3以上,内存512M系统:Windowsxp/vista/7软件:Access2007,visualbasic6.05、专题计划操作的简便易用:无论什么水平的操作人员,简便的操作方法是一致性要求,同时在系统操作的界面的设计中也应尽可能地把常用子模块添加至主系统窗口中,实现“一触即开”窗口。适应性:应该明确的是,实际操作人员对计算机的了解程度和实际的操作能力各不相同,因此软件应具有一定的适应能力。透明性:在系统设计中,应充分利用计算机在处理数据方面的能力,从而尽可能减轻操作人员的工作,实现一定意义上的透明操作,即用户无须知道模块功能实现的具体过程,只需要设置一定的操作选项,计算机即可按照用户的要求得到所需要的处理结果,具体的操作细节对用户是“透明”的。点面结合:再数据处理方面,一方面应强调数据的成批处理能力,以尽可能简化操作人员的处理工作,另一方面也应十分重视对单独数据的处理能力。2、可行性报告1、项目定义仓库在企业的整个供应链中起着至关重要的作用,如果不能保证正确的进货和库存控制及发货将会导致管理费用的增加,服务质量难以得到保证,从而影响企业的竞争力.传统的简单、静态的仓库管理已经无法保证企业各种资源的高效利用。现在的仓库作业和库存控制作业十分复杂化、多样化,仅靠人工记忆和手工录入,不但费时费力,而且容易出错,给企业带来巨大损失.为了克服以上问题,必须使仓储管理和计算机系统相互结合起来,以使仓库服务得到有效的执行和监督.仓库管理系统可以对仓储各环节实施全过程控制管理,并可对货物进行入库和出库操作管理,从而实现仓储作业流程全过程的电子化操作.另外还可以根据客户的需求制作多种合理的统计报表.2、技术可行性本系统产品用VisualBasic6.0编程与数据库的相结合的方法进行开发,而仓库管理系统实现的理论及技术已经日趋成熟,因此仓库管理系统应用软件的开发手段是完全可行的。3、市场可行性当下,市场经济迅速发展,网上购物已成潮流,在这种情况下,物流仓储等行业的发展也在以一种惊人的速度发展,要想保证仓库出入货物与账目的一致性,必须出现一种专门的、特定意义、特殊功用的管理系统出现,即仓库管理系统,在网上调查的过程中,我们发现,很多业主和个体经营户也急需一种只适合其专门行业的管理系统。然而,市场中也是存在了很多的十分专业的仓库管理系统,但是介于其收费特征和内容的广泛应用性,而导致在用户使用的简便性和易用性受到了打击,所以在这种社会现状的驱使下,我们小组讨论决定开发一种简单通用的仅仅限于仓库管理的管理系统,而不涉及进货和销售方面的问题,于是仓库管理系统便应运而生。4、产品策略在该项目开发过程中,全部使用实验室及图书馆现成的设备和资料。因此该系统的开发在经济方面也是可行的。5、成本—效益分析(假设)一般来说,我们的客户开发这个软件系统是一项投资,所以当然期望获得很大的经济效益。经济效益通常表现为减少运行费用或(和)增加收入。所以我们进行成本/效益分析来从经济角度分析开发我们的设备管理系统是否划算,从而帮助客户组织的负责人做出是否投资这项开发工程的决定。下面我们从以下几个方面进行分析。(1)成本分析软件开发成本主要表现为人力消耗(乘以平均工资则得到开发费用)。因成本估计不是精确的科学。因此我采用了两种不同的估计技术以便互相校检。1代码行技术代码行技术是比较简单的定量估算方法,把开发每个软件功能的成本和实现这个功能需要用的源代码行数联系起来。通常根据经验和历史数据估计实现一个功能需要的源程序行数。而在我们组的设计下,初步得出设备管理系统的源代码行数。得出源代码行数以后,用每行代码的平均成本乘以行数就可以确定软件的成本,所以我们得出的此软件的成本为成本=2000*10=200002任务分解技术任务分解技术是首先把我们的设备管理系统分解为若干个相对独立的任务。在分别估计每个单独的开发任务的成本,最后累加起来得出软件开发工程的总成本。估计每个任务的成本时,通常先估计完成该项任务需要用的人力(以人月为单位),再乘以每人每月的平均工资而得出每个任务的成本。下面是我们按开发阶段划分任务做出的人力成本。表1.2各个开发阶段需要使用的人力百分比及工资表得出其总成本=(1200*5+1000*10+800*25+500*20+10*600)*(20/100)*1.5=21000(元)(2)运行费用分析运行费用取决于设备管理系统的日常操作费用(操作员人数,工作时间,消耗的物资等等)和维护费用。(3)效益分析我们设备管理系统的经济效益在于因使用此系统而增加的收入加上使用此系统可以节省的运行费用。(4)成本/效益分析应该比较新系统的开发成本和经济效益以便从经济角度判断这个系统是否值得投资,但是,投资是现在进行的,效益是将来获得的,不能简单的比较成本和效益,应该考虑货币的时间价值。①货币的时间价值通常用利率的形式表示货币的时间价值。假设年利率为i,如果现在存入P元,则n年后可以得到的钱数为F=P(1+i)^n在我们的软件分析中假定年利率为12%,预计可帮助我们的客户每年节省25000元,则利用货币限制计算公式就可以算出每年预计节省的钱的现在价值表1.3将来的收入折算成现在值表②投资回收期通常用投资回收期衡量一向开发工程的价值。所谓投资回收期就是使累计的经济效益等于最初投资所需要的时间。显然,投资回收期越短就能越快获得利润,因此这项工程也就越值得投资。在本软件中,一年以后可以节省22321.4元,和最初的投资(20000元)比较。因此,投资回收期是0.98年③纯收入纯收入是指在整个生命周期值内系统的累计经济效益(折合成现在值)与投资之差。这相当于比较投资开发一个软件系统和把钱存在银行这两种方案的优劣。如果纯收入为零,则工程的预期效益和在银行存款一样,如果纯收入小于零,那么这项工程显然不值得投资。这本系统开发中工程的纯收入预计是90119.4—20000=70119.4(元)④投资回收率把资金存入银行货代给其他企业能够获得利息,通常用年利率衡量利息多少。类似的也可以计算投资回收率,用它衡量投资效益的大小,并且可以把他和年利率相比较,在衡量工程的经济效益时,它是最重要的才靠数据。以至现在的投资额,并且已经估计出将来每年可以获得的经济效益,那么,给定软件的使用寿命之后,我们可以计算其投资回收率为P=F1/(1+j)+F2/(1+j)^2+……+Fn/(1+j)^n其中:P是现在的投资额;Fi是第i年底的效益(i=1,2,3,……,n),n是系统的使用寿命;j是投资回收率。(假设系统寿命n=5)高阶代数方程解出投资回收率所以,经过以上成本效益的分析,得出在经济上,我们的设备管理系统是可行、值得投资的。三、需求分析1、引言(1)编写目的开发本系统的目的在于代替手工管理、统计报表等工作,具体要求包括:数据录入:录入用户信息、商品信息、供货商信息、入库信息、出库信息、退货信息、客户信息等信息;数据修改:修改商品信息、供货商信息、用户信息、客户信息等信息;数据统计:统计统计每次仓库的进货和出货时的商品的数量、种类、总价值;数据查询:系统提供三种查询条件:活物编号、日期、指数,选择不同的查询条件,会的得到不同的查询结果;数据备份:定期对数据库做备份,以免数据库在遇到意外破坏的时候能够恢复数据库,从而减少破坏造成的损失。(2)背景说明①项目名称:仓库管理系统②项目任务开发者:西北师范大学经济管理学院07级信息管理与信息系统(1)班开发小组,软件基本运行环境为Windows环境。③本系统采用人工输入与计算机自动化,能准确、合理、全面的进行仓库管理系统。(3)术语定义静态数据——系统固化在内的描述系统实现功能的一部分数据。动态数据——在软件运行过程中用户输入后系统输出给用户的一部分数据,也就是系统要处理的数据。数据字典——数据字典的名字都是一些属性与内容的抽象与概括,它们的特点是数据表的“严密性”和“精确性”。(4)参考资料《软件工程导论》(第四版)——张海藩编著清华大学出版社2、任务概述(1)目标目前市场竞争日趋激烈,数据量比原来要大的多管理不便,在设计过程中,为了满足计算机管理的需求,采取了下面的一些原则:统一各种原始单据的格式,统一帐目和报表的格式。删除不必要的管理冗余,实现管理规范化、科学化。程序代码标准化,软件统一化,确保软件的可维护性和实用性。界面尽量简单化,做到实用、方便,尽量满足企业中不同层次员工的需要。建立操作日志,系统自动所进行的各种操作。(2)系统特点本系统采用RFID技术来对物资进行出入库管理,提高了物资出入库的效率,减少人力并能在恶劣环境下进行有效的工作,比如冷库人员不能在里面长时间工作。而基于RFID技术的仓库管理系统可以,它比其他的一些技术要方便、高效。例如比条形码要快捷、不需要人工操作。高效的数据组织能力1快速录入。在录入数据时,输入货品的前一位或几位后回车,系统会弹出以他们开头的所有货品资料供选择,加快数据录入速度。还可以使用复制与粘贴功能,使当前数据的内容复制上一条数据的内容,大大加快类似内容的数据录入速度。2筛选数据。灵活的查询功能为不同的管理者提供所需的数据,单据、报表的条件查找中都设置了多条件查找。3数据排序。单击单据或报表的某一字段即可以该字段进行排序,方便用户从多角度分析查看报表。4数据备份与恢复:可实时将系统中的所有数据进行备份,操作非常安全简单.5支持多仓库管理。(3)约束由于系统较小,且在Windows系统下开发,故在Windows环境下基本没有什么限制。3、需求规定(1)对功能的规定仓库管理系统主要实现对库存商品的管理,对商品出库、入库的管理,和对仓库管理系统维护的功能。具体要实现的功能包括:①库存商品管理查看数据库中商品的名称、编号、单价等信息。②商品出库、入库管理入库、出库单纪录本次入库、出库的货物名称、数量,入库、出库的时间、商品单价以及总价,入库、出库的经手人等。③商品的查询输入商品的编号或者商品的名称查询信息④用户管理用户可以修改登录密码(2)对系统数据的规定①员工(ID,姓名,密码,权限)②商品(商品名,商品编号,所属类,单价)③出货表(商品名,商品编号,数量,总价,经手人)④入货表(商品名,商品编号,数量,总价,经手人)⑤查询(商品名,商品编号,数量,单价)根据上面的关系我们需要的数据基本上就上面所列出的数据。(3)对软件性能的规定①集成性极强。包括对企业内部业务的完整整合能力以及对供应链外部资源的整合能力。具有开放的与流行电子商务平台集成的能力。②业界最先进的技术。③先进的管理理念和前瞻性考虑。④极强的扩展能力。⑤优秀的可维护性和极低的维护成本。⑥性能指标:可支持的最大用户数:无限制;可支持的最大并发用户数:无限制;吞吐量:只受到网络带宽的限制,系统本身无限制;响应速度:只受到网络带宽的限制,系统本身无限制。⑦数据精确度由于采用数据库技术并且用户的应用领域对数据精度的要求不是太高,所以这点在系统中表现的比较少,都是用户数据的安全性和准确性是完全保证的,所以对用户的使用没有多大的障碍。⑧时间特性本系统的数据库较小,所以程序在相应时间,数据更新处理时间上性能是比较突出的、而且也正由于数据量相对较少,故在数据传输时间和系统运行时间上表现的叫让用户满意。(4)故障处理考虑到软件的范围不大,所以故障处理一般有操作系统完成,系统只要保持与操作系统的接口即可。只要操作系统没有大的故障程序一般是比较稳定的。考虑到用户对数据的安全性要求,程序可以有独立于操作系统之外的数据备份功能与过程,以及系统崩溃后的数据恢复功能。(5)其他专门要求系统的操作人员应具有一定的计算机方面的知识或经过相应的培训,同时应做好对后台数据库的保密工作。4、用户访谈(1)访谈目的及方式目的:通过各种访谈方式,进一步了解用户对系统的具体需求,针对系统开发时所可能遇到的各种问题进行交流,并对用户的疑问做出解答和处理。从而开发出更令用户满意的系统。方式:正式访谈、非正式访谈、情景分析技术(2)具体操作:①对企业本方面总负责人(物流总监)的访问,最好采用个别交谈方式。在交谈之前,应给其一份详细的提纲,以便使他们对问题有所准备。从访问中,可获得有关高层对管理系统的具体需求、操作方式、以及其他与系统开发有关的各种信息。(重点放在系统开发可行性、成本、后期维护保障等方面)②对企业中层管理人员(主任)的访问,可采用集中开座谈会、个别交谈或发调查表的方式,目的是了解对具体操作及日常管理的需求。(重点放在管理方面)③对基层使用人员(仓库管理员等)的调查,主要采用发调查表和随机抽样交谈方式来了解仓库管理员对具体业务使用过程的便利性与完整性的需求。(重点放在操作便利性与人性化等方面)(3)具体访谈内容:(括号内为此阶段于何期进行)①调查表:调查表尽量做到问题简单明了,覆盖面广,能够突出重点。(开发前期)②面谈:可对用户提出一些自由回答的开放性问题,让用户说出自己对系统的想法,例如:询问用户对目前系统的各个部分是否有不满意或需要改进的地方,还需添加什么功能模块等等。(开发前期)③情景分析技术:系统分析员根据自己对目标系统应具备功能的理解,在给出模拟数据时,对出现的模拟情景给予演示。通过情景分析技术,分析员能更主动和准确的获知用户在使用时将遇到的问题,以便将系统完善并人性化。(调试期)(4)尾声,对抽出时间积极配合访谈的客户表示感谢,访谈组织者(开发小组)将表示尽一切努力满足客户的要求,并赠送精美礼品以作纪念(也可选择共进晚餐)。最后,访谈在愉快的氛围下结束。四、总体设计1、实体-关系图设计(E-R图)图4.1系统E-R图2、数据库设计(1)数据库逻辑设计由于本管理系统没有海量的数据需要存储,所以没有必要使用ORACLE,且ORACLE的链接和服务器配置也是有一定问题的,而ACCESS2007在安全性和可靠性方面足以胜任,所以在测试阶段我们选用了ACCESS2007作为数据库系统应用。数据库通信接口采用了ODBC(opendatabaseconnectivity,开放式数据库互联),目的是将所有底层操作全部隐藏在ODBC的后台驱动程序内核中。对于程序员来说,这意味着,只要构建了一个数据库连接,便可以用统一的API(应用程序编程接口)实现对数据库的读写操作。目前,ODBC提供了大量的数据库支持,这也为我们后期的改进创造了条件。根据对程序功能模块的划分做出全面的分析后,可以列出如下数据项和数据结构:①用户信息表图4.2系统管理信息表名称字段名称数据类型字段大小主键非空用户名username文本12YesNo密码passwd文本12NoNo权限permission文本10NoNo表4.1系统管理信息表②商品信息表图4.3商品信息表名称字段名称数据类型字段大小主键非空商品编号id数字10NoNo日期Date日期/时间——NoNo货源地From文字10NoNo商品名称name文本20NoNo单价price货币——NoNo数量Num’数字整型NoNo单位Size文本5NoNo总价Sum货币——NoNo生产厂家Produce文本50NoNo仓库编号Pri_id文本20YesNo表4.2商品信息表③出入库单图4.4出入库单信息表名称字段名称数据类型字段大小主键非空货物编号id文本10NoNo出入库name文本6NoNo备注Beizhu文本50NoNo日期Date日期/时间——NoNo仓库编号Pri_id文本20YesNo货源地From文本20NoNo表4.3出入库单信息表21货源地图4.5货源地信息表名称字段名称数据类型字段大小主键非空货源地From文本20YesNo表4.4货源地信息表31生产厂家图4.6生产厂家信息表名称字段名称数据类型字段大小主键非空生产厂家Produce文本50YesNo表4.5生产厂家信息表(2)我们设计出了系统所用到的数据库的数据字典如下。(2)数据库物理设计数据库中各表的文件物理结构采用顺序的记录文件。采用代码连接(VB源代码):1用户数据库DimconnectionstringAsStringPublicconn1AsNewADODB.Connectionconnectionstring="provider=Microsoft.Jet.oledb.4.0;"&_"DataSource='"+App.Path+"\user.mdb"+"'"conn1.Openconnectionstring2库存信息数据库DimconnectionstringAsStringconnectionstring="provider=Microsoft.Jet.oledb.4.0;"&_"DataSource='"+App.Path+"\cangku.mdb"+"'"conn.Openconnectionstring3、系统数据流图设计图4.7系统数据流图4、系统层次模块图设计图4.8系统主要层次模块图5、模块设计(1)用户登录模块:填写已分配的用户名和密码,正确后根据其权限设置,进入相应的管理页面。(2)出入库数据录入模块:管理员或者普通用户在出库或者入库时填写的出入库凭证,并在后台对整体库存进行更新。(3)库存详细信息管理模块:管理员对货物的详细信息,例如:规格、单位等属性的设置,保证查询时得到完整的货物属性及操作信息。(4)库存查询模块:根据不同的查询选项,设置不同的欲查询属性,最后在数据库中查询所需要的库存信息。(5)信息分类汇总模块:按照所选分类,对数据库中的信息汇总并打印表格。(6)用户管理模块:管理员具有最高权限,可以对所有用户的信息进行管理,包括添加、删除用户,设置任意用户密码。其他用户只能对自己密码进行修改。(7)帮助文件模块:对使用本管理系统的问题进行解答,及使用指南。(8)关于模块:记录了关于作者及开发小组和版本信息。6、接口设计(1)外部接口(a)用户界面采用图形用户界面(GUI),包含菜单、按钮、对话框等元素。(b)软件接口软件运行于WINDOWS操作系统WINDOWS2003及以上操作平台,不支持mac及UNIX。(c)硬件接口最低配置:CPUP31.6GHz内存256M硬盘30G(2)内部接口(a)初始化模块:系统初始时由操作系统调用,之后进入消息循环状态。(b)关闭系统模块:由系统功能模块调用,之后退出系统。(c)系统功能选择模块:接受各事件驱动消息,启动入库数据录入模块、出库数据录入模块等模块。(d)入库数据录入模块:由相应事件驱动消息激活,完成入库数据录入功能,之后进入消息循环状态。(e)出库数据录入模块:由相应事件驱动消息激活,完成出库数据录入功能,之后进入消息循环状态。(f)库存查询模块:由相应事件驱动消息激活,完成分类查询库存情况功能,之后进入消息循环状态。(g)信息分类汇总模块:由相应事件驱动消息激活,完成相应分类对库存商品汇总统计打印报表的功能,之后进入消息循环状态。(h)库存详细信息管理模块:由相应事件驱动消息激活,完成录入相应商品详细信息功能,之后进入消息循环状态。(i)密码管理模块:由系统功能模块调用,完成密码管理功能。(j)身份验证模块:由初始化模块调用,完成身份验证功能。(k)帮助模块:由相应事件驱动消息激活,完成帮助功能,之后进入消息循环状态。8、出错处理设计(1)系统应具有相当健壮性,避免或降低由系统错误所造成的数据库损坏。(2)对关键性操作,如删除等提供警告和确认机制。9、安全设计系统提供严格的身份验证机制和密码管理以及权限设置。10、维护设计系统严格按照设计规范进行设计,并保持各阶段文档的完整性,为以后对软件的维护打好基础。五、详细设计1、界面设计(1)用户登陆界面(2)用户主界面(3)管理员添加用户界面(4)管理员管理用户界面(5)用户修改密码界面(6)出入库录入界面(7)库存详细信息管理界面(8)库存查询界面(9)汇总表单界面2、系统流程图设计图5.1系统流程图3、程序设计(代码略)六、测试1、测试环境系统名称仓库管理系统版本号1.0.13编制人吴景晨编制时间2010-05-10测试系统环境WindowsXP/7测试硬件环境GETWAY/HASEE黑盒测试负责人马晓庆白盒测试负责人吴景晨2、黑盒测试(1)、测试设计①登录模块“登录界面”黑盒测试testcase设计测试项编号TS_FUN_001_001优先级高测试项描述验证登录界面,两个输入框分别输入用户名和密码,两个标签确定和退出,用户名和密码不能为空,输入错误的用户名或密码要提示错误信息,三次密码错误时,要退出登录系统预置条件应用被打开,且当前处在登录界面上用例序号输入执行步骤预期结果TS00001正确的用户名和密码,包括是合法的字符和合法长度直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)密码显示为*(3)支持直接按enter键登录(4)正常登录到系统TS00002错误的用户名,包括用户名含有非法字符、长度过长、长度过短直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)支持直接按enter键登录(3)不能实现登录,弹出对话框提示“用户名或密码错误,请重新输入”TS00003正确的用户名和错误的密码,包括非法字符、长度过长或过短直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)密码显示为*(3)支持直接按enter键登录(4)不能实现登录,弹出对话框提示“用户名或密码错误,请重新输入”TS00004用户名和密码都为空直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)支持直接按enter键登录(3)不能实现登录,弹出对话框提示“用户名或密码错误,请重新输入”TS00005正确的用户名,密码为空直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)支持直接按enter键登录(3)不能实现登录,弹出对话框提示“用户名或密码错误,请重新输入”TS00006任意的用户名和密码,包括正确的或错误的,也可以为空用鼠标单击取消标签(1)支持鼠标或按Tab键(2)若输入密码显示为*(3)清空用户名和密码TS00007检查UI友好性检查登录界面设计是否合理,符合UI规范标准界面符合习惯、美观,按钮对齐,输入框对齐,无错别字,字体大小协调,文字描述准确TS00008任意的用户名和密码,包括正确的或错误的用鼠标或按Tab键移动当前焦点,先输入用户名和密码,再利用剪切或复制、粘贴功能(包括右键快捷菜单和Ctrl+C,Ctrl+V组合键)重新输入用户名和密码,然后单击确定按钮或敲击enter键(1)支持鼠标或按Tab键(2)用户名支持复制粘贴功能,密码不支持复制粘贴功能(3)输入正确正常登录,输入错误不能登录,并弹出相应提示信息TS0009任意的用户名和密码,包括正确的或错误的用鼠标或按Tab键移动当前焦点,先输入用户名和密码,再利用剪切或复制、粘贴功能(包括右键快捷菜单和Ctrl+C,Ctrl+V组合键)重新输入用户名和密码,然后单击取消标签(1)支持鼠标或按Tab键移动当前焦点(2)用户名支持复制粘贴功能,密码不支持复制粘贴功能(4)清空用户名和密码②密码修改模块“用户修改密码界面”黑盒测试testcase设计测试项编号TS_FUN_001_002优先级高测试项描述验证用户修改密码界面,三个输入框分别输入用旧密码、新密码和确认密码,两个标签确定和退出,用旧密码和新密码和确认密码不能为空,输入错误的旧密码要提示错误信息,修改成功时要弹出修改成功确认对话框预置条件应用被打开,且当前处在用户修改密码界面上用例序号输入执行步骤预期结果TS10001正确的旧密码,合法的新密码,包括是合法的字符和合法长度,正确的确认密码直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)密码显示为*(3)支持直接按enter键确定(4)正常修改用户密码TS10002错误的旧密码,包括旧密码含有非法字符、长度过长、长度过短直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)支持直接按enter键确定(3)不能实现用户密码修改,弹出对话框提示“旧密码错误,请重新输入”TS10003正确的旧密码和非法的新密码,包括非法字符、长度过长或过短直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)密码显示为*(3)支持直接按enter键确定(4)不能实现用户密码修改,弹出对话框提示“新密码错误,请重新输入”TS10004旧密码和新密码都为空直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)支持直接按enter键确定(3)不能实现用户密码修改,弹出对话框提示“旧密码不能为空,请重新输入”TS10005正确的旧密码,新密码为空直接敲击enter键或用鼠标单击确定标签用户密码修改(1)支持鼠标或按Tab键移动当前焦点(2)支持直接按enter键确定(3)不能实现用户密码修改,弹出对话框提示“新密码不能为空,请重新输入”③入库模块“入库操作中的货物编号”黑盒测试testcase设计测试项编号TS_FUN_001_003优先级高测试项描述验证入库操作中的货物编号、仓库编号和显示窗口,各输入框分别输入货物编号、仓库编号和显示窗口,两个标签确定和退出,货物编号、仓库编号和显示窗口不能为空,输入非法的内容,提示错误信息预置条件应用被打开,且当前处在入库操作界面上用例序号输入执行步骤预期结果TS20001正确的货物编号,包括是合法的字符和合法长度直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)正常进行入库操作,添加成功TS20002错误的货物编号,包括货物编号含有非法字符、长度不符合标准直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(3)不能实现入库操作,弹出对话框提示“货物编号错误,请重新输入”TS20003货物编号为空直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(3)不能实现入库操作,弹出对话框提示“货物编号不能为空,请重新输入”TS20004任意的货物编号用鼠标单击取消标签(1)支持鼠标或按Tab键(3)清空货物编号TS20005正确的仓库编号,包括是合法的字符和合法长度直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)正常进行入库操作,添加成功TS20006错误的仓库编号,包括货物编号含有非法字符、长度不符合标准直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(3)不能实现入库操作,弹出对话框提示“仓库编号错误,请重新输入”TS20007仓库编号为空直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(3)不能实现入库操作,弹出对话框提示“仓库编号不能为空,请重新输入”TS20008任意的仓库编号用鼠标单击取消标签(1)支持鼠标或按Tab键(3)清空仓库编号TS20009正确的货物名称,包括是合法的字符和合法长度,也包括0直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)正常进行入库操作,添加成功TS20010错误的货物名称,包括货物编号含有非法字符、长度不符合标准直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)不能实现入库操作,弹出对话框提示“货物名称错误,请重新输入”TS20011正确的单价,包括数值类型和最大长度直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)正常进行入库操作,添加成功TS20012错误的单价,包括输入的单价为负数和输入的单价为字符型用鼠标单击取消标签(1)支持鼠标或按Tab键移动当前焦点(2)不能实现入库操作,弹出对话框提示“单价输入错误,请重新输入”TS20013单价输入为空直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)不能实现入库操作,弹出对话框提示“单价输入不能为空,请重新输入”TS20014正确的数量,包括数值类型和最大长度直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)正常进行入库操作,添加成功TS20015错误的数量,包括输入的数量为负数和输入的单价为字符型用鼠标单击取消标签(1)支持鼠标或按Tab键移动当前焦点(2)不能实现入库操作,弹出对话框提示“数量输入错误,请重新输入”TS20016数量输入为空直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)不能实现入库操作,弹出对话框提示“数量输入不能为空,请重新输入”TS20017单位输入为空直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)不能实现入库操作,弹出对话框提示“单位输入不能为空,请重新输入”TS20018生产厂家输入可以为空直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)正常进行入库操作,添加成功TS20019检查友好性检查入库操作界面设计是否合理,符合正常规范标准界面符合习惯、美观,标签对齐,输入框对齐,无错别字,字体大小协调,文字描述准确④出库模块“出库操作中的货物编号”黑盒测试testcase设计测试项编号TS_FUN_001_004优先级高测试项描述验证出库操作中的货物编号、仓库编号和显示窗口,各输入框分别输入货物编号、仓库编号和显示窗口,两个标签确定和退出,货物编号、仓库编号和显示窗口不能为空,输入非法的内容,提示错误信息预置条件应用被打开,且当前处在入库操作界面上用例序号输入执行步骤预期结果TS30001正确的货物编号,包括是合法的字符和合法长度直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)正常进行出库操作出库成功TS30002错误的货物编号,包括货物编号含有非法字符、长度不符合标准直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(3)不能实现出库操作,弹出对话框提示“货物编号错误,请重新输入”TS30003货物编号为空直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(3)不能实现出库操作,弹出对话框提示“货物编号不能为空,请重新输入”TS30004任意的货物编号用鼠标单击取消标签(1)支持鼠标或按Tab键(3)清空货物编号TS30005仓库中无此种货物直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(3)不能实现出库操作,弹出对话框提示“仓库中无此种货物,请重新输入”TS30006正确的仓库编号,包括是合法的字符和合法长度直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)正常进行出库操作,出库成功TS30007错误的仓库编号,包括货物编号含有非法字符、长度不符合标准直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(3)不能实现出库操作,弹出对话框提示“仓库编号错误,请重新输入”TS30008仓库编号为空直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(3)不能实现出库操作,弹出对话框提示“仓库编号不能为空,请重新输入”TS30009任意的仓库编号用鼠标单击取消标签(1)支持鼠标或按Tab键(3)清空仓库编号TS30010正确的货物名称,包括是合法的字符和合法长度,也包括0直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)正常进行出库操作,出库成功TS30011错误的货物名称,包括货物编号含有非法字符、长度不符合标准直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)不能实现出库操作,弹出对话框提示“货物名称错误,请重新输入”TS30012正确的单价,包括数值类型和最大长度直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)正常进行出库操作,出库成功TS30013错误的单价,包括输入的单价为负数和输入的单价为字符型用鼠标单击取消标签(1)支持鼠标或按Tab键移动当前焦点(2)不能实现出库操作,弹出对话框提示“单价输入错误,请重新输入”TS30014单价输入为空直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)不能实现出库操作,弹出对话框提示“单价输入不能为空,请重新输入”TS30015正确的数量,包括数值类型和最大长度直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)正常进行出库操作,出库成功TS30016错误的数量,包括输入的数量为负数和输入的单价为字符型用鼠标单击取消标签(1)支持鼠标或按Tab键移动当前焦点(2)不能实现出库操作,弹出对话框提示“数量输入错误,请重新输入”TS30017数量输入为空直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)不能实现出库操作,弹出对话框提示“数量输入不能为空,请重新输入”TS30018数量输入少于库存量直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)不能实现出库操作,弹出对话框提示“库存量不足,请重新输入”TS30019单位输入为空直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)不能实现出库操作,弹出对话框提示“单位输入不能为空,请重新输入”TS30020生产厂家输入可以为空直接敲击enter键或用鼠标单击确定标签(1)支持鼠标或按Tab键移动当前焦点(2)正常进行出库操作,出库成功TS30021检查友好性检查出库操作界面设计是否合理,符合正常规范标准界面符合习惯、美观,标签对齐,输入框对齐,无错别字,字体大小协调,文字描述准确⑤汇总模块“货物汇总”黑盒测试testcase设计测试项编号TS_FUN_001_005优先级高测试项描述验证货物汇总界面,其中的总价和总量随着入库和出库操作的执行而进行相应的更改,货物名称也相应改变预置条件应用被打开,且当前处在货物汇总界面上用例序号输入执行步骤预期结果TS40001仓库中无次货物,执行入库操作打开货物汇总表单表单内容相应改变,此种货物的所有属性显示出来TS40002仓库中有此货物,执行入库操作打开货物汇总表单表单内容相应改变,此种货物的总量和总价也相应增加入库的数量TS40003仓库中有次货物,执行出库操作打开货物汇总表单表单内容相应改变,此种货物的总量和总价也相应减少出库的数量TS40004检查友好性检查货物汇总作界面设计是否合理,符合正常规范标准界面符合习惯、美观,标签对齐,输入框对齐,无错别字,字体大小协调,文字描述准确3、白盒测试(基本路经测试法)(1)登录模块(a)代码OptionExplicitDimcntAsInteger'记录确定次数PrivateSubForm_Load()cnt=3DimconnectionstringAsStringconnectionstring="provider=Microsoft.Jet.oledb.4.0;"&_"DataSource='"+App.Path+"\user.mdb"+"'"conn1.OpenconnectionstringLabel5.Caption="您还有"&cnt&"次输入密码机会!"EndSubPrivateSublabel7_mouseup(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)Label7.BorderStyle=0DimsqlAsStringDimrs_loginAsNewADODB.Recordset1:IfTrim(txtuser.Text)=""Then'判断输入的用户名是否为空2:MsgBox"用户名或密码错误,请重新输入!",vbOKOnly+vbExclamation,""txtuser.Text=""txtpwd.Text=""txtuser.SetFocus3:Elsesql="select*from系统管理where用户名='"&txtuser.Text&"'"rs_login.Opensql,conn1,adOpenKeyset,adLockPessimistic4:Ifrs_login.EOF=TrueThen5:MsgBox"用户名或密码错误,请重新输入!",vbOKOnly+vbExclamation,""txtuser.Text=""txtpwd.Text=""txtuser.SetFocus6:Else'检验密码是否正确7:IfTrim(rs_login.Fields(1))=UserCode(Trim(txtpwd.Text))Then8:userID=txtuser.Textuserpow=rs_login.Fields(2)rs_login.CloseUnloadMe17:MDIForm1.ShowExitSub9:Else10:MsgBox"用户名或密码错误,请重新输入!",vbOKOnly+vbExclamation,""Label5.Caption="您还有"&cnt-1&"次输入密码机会!"txtuser.Text=""txtpwd.Text=""txtuser.SetFocusEndIfEndIfEndIfcnt=cnt-111:Ifcnt=0Then12:MsgBox"对不起,您已连续三次输入错误,请确认正确密码再试,谢谢!",vbOKOnly+vbExclamation,""18:UnloadMeExitSubEndIfEndSubPrivateSubtxtpwd_Change()13:IfLen(txtpwd.Text)>12Then14:txtpwd.Text=Left(txtpwd.Text,12)EndIfEndSubPrivateSubtxtuser_Change()15:IfLen(txtuser.Text)>12Then16:txtuser.Text=Left(txtuser.Text,12)EndIfEndSub(b)详细流图图6.2.1登录模块详细流图(c)环形复杂度18-14+2=6(d)独立路径路径一:13--15—1—4—7—8—17路径二:13—15—1—2—1—4—7—8—17路径三:13—15—1—4—1—4—7—8—17路径四:13—15—1—4—7—10—1—4—7—8—17路径五:13—14—15—16—1—4—7—8—17路径六:13—15—1—4—7—10—11—12—18(e)设计测试用例编号输入数据预期输出实际输出覆盖路径判定覆盖txtusertxtpwdtxtusertxtpwd提示txtusertxtpwd提示1aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa错误aaaaaaaaaaaaaaaaaaaaaaaa溢出13—14—15--16TT2aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa错误aaaaaaaaaaaaaaaaaaaaaaaa溢出13—14—15--16TF3admin111“”“”错误剩2次“”“”错误剩3次13—15—1—7--10FFTF4administrator123“”“”错误剩1次“”“”错误剩3次13—15—1—4FFF5Admin111111“”“”提示退出“”“”提示退出13—15—1—7—10—11-12--18FFTFT6admin123进入进入FFTT表6.2.1登录模块白盒测试用例(2)出入库录入模块(a)代码PrivateSubCommand1_Click()Dimrs_saveAsNewADODB.RecordsetDimsqlAsStringDimi,numAsIntegerDimsAsString'转化数据用OnErrorGoTosaveerror1:IfTrim(Text1.Text)=""Then2:MsgBox"编号不能为空!",vbOKOnly+vbExclamation,""Text1.SetFocusExitSubEndIf3:IfCombo1.Text=""Then4:MsgBox"请选择货源地!",vbOKOnly+vbExclamation,""Combo1.SetFocusExitSubEndIf5:Ifcomboy.Text=""Then6:MsgBox"请选择年份!",vbOKOnly+vbExclamation,""comboy.SetFocusExitSubEndIf7:Ifcombom.Text=""Then8:MsgBox"请选择月份!",vbOKOnly+vbExclamation,""combom.SetFocusExitSubEndIf9:Ifcombod.Text=""Then10:MsgBox"请选择日期!",vbOKOnly+vbExclamation,""combod.SetFocusExitSubEndIf11:IfText2.Text=""Then12:MsgBox"请填写仓库编号!",vbOKOnly+vbExclamation,""Text2.SetFocusExitSubEndIf13:IfMSFlexGrid1.Col<>0Then14:MsgBox"请输入完整的物品信息!",vbOKOnly+vbExclamation,""MSFlexGrid1.SetFocusExitSubEndIfsql="select*from入出库where仓库编号='"&Text2.Text&"'"rs_save.Opensql,conn,adOpenKeyset,adLockPessimistic15:Ifrs_save.EOFThen16:rs_save.AddNewrs_save.Fields(0)=Trim(Text1.Text)rs_save.Fields(1)=CDate(Trim(comboy.Text)&"-"&Trim(combom.Text)&"-"&Trim(combod.Text))rs_save.Fields(2)=Trim(Combo1.Text)rs_save.Fields(3)=Trim(Text2.Text)rs_save.Fields(4)=Trim(Text4.Text)'入出库标记17:Ifjinku.Caption="入库"Then18:rs_save.Fields(5)="入库"19:Else20:rs_save.Fields(5)="出库"EndIfrs_save.Updaters_save.Close21:Else22:rs_save.Fields("日期")=CDate(Trim(comboy.Text)&"-"&Trim(combom.Text)&"-"&Trim(combod.Text))rs_save.Updaters_save.Closesql="select*from货物详况"rs_save.Opensql,conn,adOpenKeyset,adLockPessimisticnum=rs_save.Fields("数量")MSFlexGrid1.Col=2rs_save.Fields("数量")=num+Val(MSFlexGrid1.Text)rs_save.Updaters_save.CloseMsgBox"仓库编号重复!。",vbOKOnly+vbExclamation,""ExitSubEndIfsql="select*from货物详况"rs_save.Opensql,conn,adOpenKeyset,adLockPessimisticFori=1ToMSFlexGrid1.Row-1rs_save.AddNewrs_save.Fields(0)=Trim(Text1.Text)rs_save.Fields(1)=CDate(Trim(comboy.Text)&"-"&Trim(combom.Text)&"-"&Trim(combod.Text))rs_save.Fields(2)=Trim(Combo1.Text)MSFlexGrid1.Row=iMSFlexGrid1.Col=0rs_save.Fields(3)=Trim(MSFlexGrid1.Text)MSFlexGrid1.Col=123:Ifjinku.Caption="出库"Then24:s="-"&Trim(MSFlexGrid1.Text)rs_save.Fields(4)=CDbl(s)25:Else26:rs_save.Fields(4)=CDbl(Trim(MSFlexGrid1.Text))EndIfMSFlexGrid1.Col=2rs_save.Fields(5)=Trim(MSFlexGrid1.Text)MSFlexGrid1.Col=3rs_save.Fields(6)=Trim(MSFlexGrid1.Text)MSFlexGrid1.Col=427:Ifjinku.Caption="出库"Then28:s="-"&Trim(MSFlexGrid1.Text)rs_save.Fields(7)=CDbl(s)29:Else30:rs_save.Fields(7)=CDbl(Trim(MSFlexGrid1.Text))End
/
本文档为【仓库管理系统设计与实现-软件工程课程设计任务书doc】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索