




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上一、 课程设计的目的与要求1. 课程设计目的软件工程课程设计是学习软件工程课程后所进行的实践环节,目的是培养学生用工程化的思想和标准文档化的思想进行软件开发。本次课程设计通过开发一个小型实用的软件系统,亲身体验软件生命周期中的各个环节,以加深对软件工程课程的深入理解、锻炼独立分析、解决问题的能力。2. 课程设计要求2.1 课程设计准备1)复习软件工程课程的主要内容,熟练掌握软件生命周期的理论以及各阶段的基本概念。2)明确可行性分析、需求分析、设计、测试等阶段的基本任务和基本方法。3)熟练运用规范化的描述方法和文档,描述软件开发的各个阶段。4)熟悉开发环境和开发工具。2
2、.2 内容要求1)对所设计和实现的系统进行可行性分析,提交可行性分析报告;2)对系统进行需求分析,可以选择传统的分析方法或者面向对象的分析方法,提交软件需求规格说明书(SRS);3)在SRS的基础上进行软件的概要设计和详细设计,提交软件设计文档;4)遵循上述文档的要求,实现软件;5)对所实现系统进行软件测试,完成软件测试报告。 二、 设计正文1. 可行性分析报告1.1 项目简介1.1.1 项目目标随着计算机和网络技术的飞速发展,计算机的应用领域不断扩大。利用计算机进行信息控制,不仅提高了工作效率,更提高了其安全性。尤其对于复杂的信息管理,利用计算机能够充分发挥它的优越性。随着科学技术的不断提高
3、,计算机科学技术日渐成熟,它在人类社会的各个领域发挥着越来越重要的作用。物资管理系统是根据企业的管理员对仓库物品的入库、出库等操作的管理及记录的需要来设计开发的,目标是给仓库管理员提供更加快速、便利的平台,具有对仓库货物信息进行管理和维护的功能。1.1.2 系统的简要描述,主要功能 从总体上来看,本系统主要实现以下功能:查看货物信息:可以查询所有货物的相关信息。查看管理员信息:可以查看所有仓库管理员的相关信息。查看记录信息:可以查看所有入库、出库的记录信息。删除货物信息:可以删除选定的货物信息,且同时删除与该货物相关的所有记录。物资入库:可以添加仓库已有或没有的货物,同时修改或添加相关信息。(
4、所有的入库人都包含在管理员之内)物资出库:可以使已有货物出库,同时修改相关信息。(所有的出库人都包含在管理员之内)安全退出:退出当前页面至上一界面。1.2 对现有系统的分析1.2.1 处理流程和数据流程(系统流程图) 1.2.2 对现有系统的其他说明 (1)维护:在系统交付之后的有效期限之内,系统的维护只由开发单位提供; (2)人员:开发人数较少,管理员数目一定,允许管理的人员必须是熟悉数据库管理知识及相关业务的人员; (3)设备: 硬件环境:处理器(CPU):双核酷睿 I3及以上;内存容量(RAM):至少2G; 软件环境:操作系统:Microsoft Windows 7;数据库管理系统:SQ
5、LServer2008;Microsoft Visual Studio 2013;软件需求管理工具RRP ;软件设计工具RSA;软件测试工具RFT (4)局限性:开发人员全部为本科生,缺乏项目经验,技术操作方面还不太熟练。原有的系统存在很大的局限性,比如技术的过于陈旧,人员工作负荷大,系统维护及费用支出巨大,人员与设备技术含量低等等。1.3 技术可行性分析基于winform窗体程序,使用C#语言和Microsoft SQL Server 2008数据库实现,使系统的部署、应用、维护更加方便。因此技术方案是成熟的和可行的。1.4 经济可行性分析 从用户角度来看,无需单独购买计算机,只需利用目前已
6、有的计算机,并且可以接入互联网即可;从开发者角度来看,此类软件开发周期一般为23个月,开发所需硬件和软件要求是目前大多数PC机系统能够承担的,开发费用不高。1.5 社会因素可行性分析1.5.1 法律因素 我国用著作权体系来保护计算机软件,保护的范围也很广泛,从系统软件、应用软件到源程序、目标程序,都可以受到保护。该系统为独立开发,在法律方面不会存在侵犯专利权、侵犯版权等问题。1.5.2 用户使用可行性 该系统提供友好的界面,对用户来说,操作简单,容易掌握。1.6 可供选择的方案 方案1:基于winform窗体的仓库物资管理系统,系统主要针对管理员部分,管理员可以对职工信息、物资信息进行管理和维
7、护。 该方案的优点和选择该方案的原因: (1)winform窗体操作比较简单,用户容易掌握;(2)C#语言简单易懂,兼容性好,对开发者来说容易使用;(3)开发难度较低,降低了开发成本;(4)C#语言能实现系统与数据库的无缝连接,降低了系统的维护开销;方案2:使用Java编写的仓库物资管理系统不选择该方案的原因:(1)使用Java编写界面相对困难,不容易使界面实现更好的人机交互;(2)Java语言相对于C#语言来说较难理解,对开发者来说使用不便;(3)熟悉并精通Java的开发者数量不多,维护起来比较困难;方案3:在以前的仓库物资管理系统上进行修改,完善功能。不选择该方案的原因:(1)以
8、前的开发者大多离校,不便于交流;(2)修改需先理清以前的开发思路,了解以前系统的开发过程及结构,工作量太大;方案4:购买“仓库物资管理系统”。不选择该方案的原因:(1)目前市场上的仓库物资管理系统主要是大型系统,购买系统费用昂贵;(2)对于学校内部的小型系统来说显得“大材小用”;(3),维护比较困难,维护价格也比较高昂。2. 软件需求规格说明书(SRS)2.1 需求概述1) 给出软件需求的摘要和简单描述 仓库物资管理系统的主要功能是实现职工信息和物资信息管理的信息化。仓库物资管理系统需要满足来自管理员的需求。 .对于仓库管理员来说,他们的需求是:对职工信息、物资信息进行管理和维护。管理员可以查
9、询、添加、删除、修改、物资和职工的基本信息。系统管理员可以维护系统的状态和正常的运行。 根据仓库物资的实际需求情况,仓库物资管理系统应该包括以下几个功能模块 :1.基本业务模块:主要实仓库日常业务的信息化处理,包括入库、出库。 2.基本数据维护模块:主要是对管理员信息、物资入库、出库记录信息、物资基本信息进行操作,包括添加、修改和删除。 2) 运行环境 Windows 7,Windows Vista/ Windows XP或更高的版本,安装有SQLServer2008和Microsoft Visual Studio 2013及以上版本;至少有100M左右的硬盘空间2.2 功能需求2.2.1功能
10、图: 2.2.2用例图:2.2.3时序图 查询或删除物资信息时序图: 查询物资记录信息时序图:物资入库时序图: 2.3 数据描述 类之间的关系图: 管理员类描述: 管理员类包含的属性主要是管理员编号、管理员登录密码、管理员权限、管理员姓名。 管理员类的方法主要是查询信息基本操作。 物资类描述: 物资类包含的属性主要是物资编号、物资名称、物资型号、物资数量。书籍类的方法有删除、更新物资信息,还有查询物资信息,可以按物资编号查询。 出入库类描述: 出入库类包含的属性主要是编号、状态、数量类型、更改时间。当状态为1时为入库操作,当状态为2时为出库操作。出入库类的方法有输入、输出、更新物资信息。 2.
11、3.1 性能需求1) 数据精确度 查询时应保证查全率,所有包含查询关键字的记录应该都能查到。在添加任何记录时,要保证数据库中数据的一致性,避免发生错误,要求不能有误差。2) 时间特性 检索响应时间应在人的感觉和视觉能接受的时间范围内;更新数据库处理时间应小于等于1s;网络传输时间应小于等于2s。3) 适应性技术约束:该系统的设计是在使用C#语言编写、基于winform窗体的,技术设计采用软硬一体化的设计方法。 标准约束:该系统的开发完全按照企业标准开发,包括硬件、软件和文档规格。2.3.2 运行需求1) 用户界面 用户界面的设计应遵循用户界面设计的原则,做到以人为本、尽可能减少用户记忆、保持界
12、面的一致性。力求设计结果美观大方、直观、明了、条理清晰,使系统易学、易用、易管理。 本系统是以Winform窗体的形式工作的,打开系统后,呈现在眼前的是一个登录界面,输入管理员编号和密码进入系统,进行相应的操作,各种操作都与数据库相连,一旦确定某些操作,相应的数据就会保存到数据库中,实时性好。登录界面: 操作选择页面:库存查询操作界面: 密码修改界面: 权限修改界面:入库管理界面:出库管理界面:2) 硬件接口 需要浏览器进行显示,键盘进行输入。3) 软件接口 Windows 7,Windows Vista/ Windows XP或更高的版本,安装有SQLServer2008和Microsoft
13、 Visual Studio 2013及以上版本。4) 故障处理 对于应用程序,要求能够判断用户输入的错误信息,能够给出相应的错误提示,不会因为输入的错误信息而导致系统的运行终止; 对于硬件故障,系统能够自动备份数据,防止由于计算机故障导致数据丢失; 对于数据库,要求在发生故障时,能够实现数据的恢复;2.3.3 其它需求 可使用性:本系统容易使用和理解,界面友好; 安全保密:除了本人可以修改自己的登录密码外,只有管理人员能对读者及书籍信息做修改。可维护性:本系统在管理方面相对简单,容易维护,数据库的管理需要专门管理员。系统最小寿命:系统应能在无重大改动的条件下正常运行3年以上。 可移植性:对W
14、indows 7,Windows Vista/ Windows XP或更高的版本系统均可使用。3.软件设计说明书3.1软件模块结构图具体如下图所示:3.2文件结构和全局数据3.2.1 数据库文件表(1)职工表(employee)用于存放所有职工即管理员的信息,职工表是判断用户的登录权限必不可少的部分,表中各个字段的数据类型、大小以及简短描述如下表1所示。 表1 职工表(Employee)字段名数据类型大小字段描述Enonchar10职工编号,主键Ekeynchar10密码Enamenchar10姓名 表1(2)物资信息表(Goods)用于存放仓库中所有货物的信息,物资信息表是用于查询物资信息和
15、入库出库是否可行的判断基础。表中各个字段的数据类型、大小以及简短描述如下表2所示。 表2 物资信息表(Goods)字段名数据类型大小字段描述Gnonchar10物资编号,主键Gnamenchar10物资名称sortnchar10类型numint数量(3)管理关系表(Relation)用于存放职工对货物的所有操作。表中各个字段的数据类型、大小以及简短描述如下表3所示。表3 管理关系表(Relation)字段名数据类型大小字段描述Rnonchar10管理编号,主键Enonchar10职工编号Gnonchar10物资编号Rnumint操作物资数量stylenchar 操作类型Rtimedatatim
16、e操作时间3.2.2数据表关系图3.2.3创建存储过程用于向管理关系表中添加新的信息,代码如下:create table relation(Rno int identity(1,1) primary key,Eno nchar(10) not null,Gno nchar(10) not null,Rnum int not null,style nchar(10) not null,Rtime datatime not null)其他表均为直接新建表填入列名和约束3.2.4 软件各个模块所共享的全局数据的结构:物资管理系统中使用了公共模块DAL,每一张表均新建了一个类EmployeeDAO.c
17、s、GoodsDAO.cs、RelationDAO.cs和SQLHelper.cs。在EmployeeDAO.cs定义了对职工表的查询操作函数,在GoodsDAO.cs中定义了对物资信息表的查询、插入、删除和更新等函数,在RelationDAO.cs中定义了对物资记录表的查询、插入等函数。3.3 模块描述3.3.1登录模块描述(1)功能:管理员通过登录界面选择权限进入仓库物资管理系统;(2)接口:将管理员输入的编号和密码与数据库中的数据尽心对比;(3)数据:管理员编号,密码,权限;(4)处理:单击“登录”按钮,若输入的编号和密码与数据库中的数据相符,则登录成功,进入选择支持的操作界面,否则登录
18、失败。 3.3.2.1 超级管理员管理管理员信息模块描述 (1)功能:超级管理员可以对管理员的信息进行查询与修改基本操作;(2)接口:由超级管理员模块调用该模块,连接到数据库按编号进行查询管理员信息,进行查询基本操作后数据会更新到数据库中;(3)数据:管理员编号、密码、姓名;(4)处理:在操作界面单击“权限修改”按钮,进入权限修改界面,选择用户名与希望更改后的用户类型,点击“确认”修改信息;在操作界面单击“密码修改”按钮,进入密码修改界面,选择用户名,输入其原密码并输入和再次输入其新密码,点击“确认”修改信息3.3.2.2 管理员管理入库模块描述 (1)功能:管理员可以对货物信息进行仓库选择,
19、货物编号,货物名称,货物数量,货物价格的增加操作;(2)接口:由管理员模块调用该模块,连接到数据库查询货物信息,进行增、删、查等基本操作后数据会更新到数据库中;4、日常生活中我们应该如何减少垃圾的数量?(3)数据:仓库位置,货物编号,货物名称,货物数量,货物价格;(4)处理:在管理员在管理界面单击“入库管理”按钮,进入入库管理界面,依次输入入库货物编号、名称、数量、价格的点击入库可以将修改后的信息保存到数据库中。3.3.2.3 管理员管理出库模块描述1、焚烧处理垃圾的优缺点是什么? (1)功能:管理员可以对货物的信息进行仓库选择,货物编号,货物名称,货物数量,货物价格的修改操作;(2)接口:由
20、管理员模块调用该模块,连接到数据库查询货物信息,进行删、改、查等基本操作后数据会更新到数据库中;2、你知道日食的形成过程吗?(3)数据:仓库位置,货物编号,货物名称,货物数量,货物价格;(4)处理:在管理员管理界面单击“出库管理”按钮,进入出库管理界面,依次输入出库货物编号、名称、数量、的点击入库可以将修改后的信息保存到数据库中。3.3.2.4 管理员管理库存查询模块描述5、减少垃圾的数量是从源头上解决问题的办法,我们每个人都可以想出许多减少垃圾数量的方法。 (1)功能:管理员可以对货物的信息进行查询操作;第四单元 环境和我们(2)接口:由管理员模块调用该模块,连接到数据库查询货物信息。3、月
21、球是距离地球最近的星球直径大约是地球的1/4,质量大约是地球的1/80,月球体积大约是地球的1/49,月球引力大约是地球的1/6。(3)数据:仓库位置,货物编号,货物名称,货物数量,货物价格;(4)处理:在管理员管理界面单击“库存查询”按钮,进入库存查询管理界面,选择查询条件以及关键字显示相关货物的详细信息。5、垃圾的回收利用有哪些好处? 19、细胞也是生物最基本的功能单位,生物的呼吸、消化、排泄、生长、发育、繁殖、遗传等生命活动都是通过细胞进行的。 4软件测试报告4.1测试范围4.1.1 测试目的:测试是为了发现程序中或处理流程中的错误而执行的过程。答:说明米饭不是甜的,但米饭含有淀粉,在我
22、们咀嚼的过程中发生了变化,变得有甜味了。4.1.2 预期结果:系统运行正常,与用户交互流畅,数据处理正确并能与数据库正确相连;4.1.3 测试步骤:单元测试、集成测试、确认测试和系统测试。4.2测试计划 二、问答:整个系统分为两个模块:超级管理员模块和普通管理员模块,每个模块都要先独立测试,再集合到一起测试。注意模块之间的连接。每个模块都要设计测试用例。先进行白盒测试,再进行黑盒测试。4.2.1测试阶段 (1) 第1阶段:对每个模块进行单元测试,包括超级管理员管理管理员信息模块、管理员管理入库模块描述、 管理员管理出库模块描述、管理员管理库存查询模块描述,对设计的测试用例进行测试,查看是否与预
23、期的结果相同。(2) 第2阶段:进行集成测试,测试模块之间的调用是否正确。(3) 第3阶段:进行确认测试,测试各个子系统是否完成了需求说明书中的功能。(4) 第4阶段:进行系统测试,测试整个系统的功能、性能是否与预期效果相同。4.2.2测试进度:测试的全部进度、顺序和依赖关系及各模块的测试日程如下表所示:测试模块测试顺序依赖关系(先行的测试)测试时间用户登录模块按权限(普通管理员或超级管理员)登录分别进行测试无2014.06.25上午超级管理员管理管理员信息模块权限修改、密码修改用户登录测试2014.06.25上午管理员管理入库模块入库仓库位置、货物编号、名称、数量、单价用户登录测试2014.
24、06.25上午管理员管理出库模块出库仓库位置、货物编号、名称、数量用户登录测试、管理员管理入库模块2014.06.25上午管理员管理库存查询模块查询仓库位置、货物编号、名称、数量、单价用户登录测试、管理员管理出库模块2014.06.25上午4.3测试项目说明4.3.1用户登录模块测试(1)测试目的:测试系统的登录是否正确、合法,对于合法的用户是否能够转入正确的界面,对于非法的用户能否能提示错误。(2)测试方法和测试软件:分别使用超级管理员信息表和普通管理员信息表中合法用户信息登录系统,再以非合法信息登录系统,用白盒测试中的逻辑覆盖法进行测试。 (3)测试用例测试用例编号用户权限用户账号密码预期
25、结果1超级管理员1201(合法)123(合法)登录成功,进入管理员操作主界面2超级管理员1201(合法)1234(非法)登录失败,提示用户名和密码不匹配3超级管理员1201(合法) 空登录失败,提示密码不能为空4超级管理员空123登录失败,提示用户名不能为空5超级管理员 1202(非法)123(合法)登录失败,提示用户名不存在6普通管理员 1202(合法)123(合法)登录成功,进入读者操作主界面7普通管理员 1202(合法) 1234(非法)登录失败,提示用户名和密码不匹配8普通管理员 1202(合法)空登录失败,提示密码不能为空9普通管理员空123登录失败,提示用户名不能为空10普通管理员
26、 1201(非法)123登录失败,提示用户名不存在 4.3.2管理员管理管理员信息模块测试(1) 测试目的:测试超级管理员的对管理员信息的基本操作是否正确、合法。(2) 测试方法和测试软件:分别对管理员管理界面的各部分进行测试,观察结果是否与预期结果相符。 (3)测试用例:测试用例编号超级管理员操作输入预期结果1修改权限超级管理员更改并显示管理员级别2修改密码新密码确认、新密码成功修改密码4.3.3管理员管理入库模块测试(1)测试目的:测试管理员的对货物的入库基本操作是否正确、合法。(2)测试方法和测试软件:分别对管理员管理界面的各部分进行测试,观察结果是否与预期结果相符。 (3)测试用例:测
27、试用例编号管理员操作输入预期结果1入库仓库位置,货物编号、名称、数量、价格显示入库信息2删除 货物编号、名称 删除选定货物信息4.3.4管理员管理出库模块测试(1)测试目的:测试管理员的对货物信息的基本操作是否正确、合法。(2)测试方法和测试软件:分别对管理员管理界面的各部分进行测试,观察结果是否与预期结果相符。 (3)测试用例:测试用例编号管理员操作输入预期结果1出库货物编号、名称、数量显示出库信息3删除 货物编号、名称删除选定货物信息4.3.5管理员管理库存查询模块测试(1)测试目的:测试管理员的对货物类别信息的基本操作是否正确、合法。(2)测试方法和测试软件:分别对管理员管理界面的各部分
28、进行测试,观察结果是否与预期结果相符。 (3)测试用例:测试用例编号管理员操作输入预期结果1查询 货物编号、名称显示查询信息4.4测试分析3.3.1.1 用户登录模块测试 (1)实测结果:在用户名和密码均正确的情况下,登录成功;否则失败,提示错误信息;(2)与预期结果数据的偏差:无偏差(3)该项测试表明的事实:连接数据库登录可行(4)该项测试发现的问题:无3.3.1.2 管理员管理管理员信息模块测试 (1)实测结果:在用户名和密码均正确的情况下,增、删、改、查等操作可以正确进行;(2)与预期结果数据的偏差:无偏差(3)该项测试表明的事实:管理员可以对管理员信息正确管理;(4)该项测试发现的问题:无3.3.1.3 管理员管理入库模块测试 (1)实测结果:在用户名和密码均正确的情况下,增、删、改等操作可以正确进行;(2)与预期结果数据的偏差:无偏差(3)该项测试表
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 设备设施的安全评估与造价咨询协议
- 拍卖物品归属未确定协议
- 《Python程序设计基础》课件 第1、2章 Python 概述;Python 基础语法
- 舞台地板施工方案
- 提问我国远洋重大件货物标准是重长宽讨论冷藏货物要保证哪两方
- 中医中药课件
- 个人消费贷款合同利率调整协议
- 建设项目合同纠纷处理实务案例
- 【课件】二项式系数的性质+课件高二下学期数学人教A版(2019)选择性必修第三册
- 2025年度设备维修保养服务合作协议
- 第7课《珍视亲情+学会感恩》第2框《理解父母+学会感恩》【中职专用】《心理健康与职业生涯》(高教版2023基础模块)
- 无人机驾驶员培训计划及大纲
- 自费药品知情同意书
- 江苏省书法水平等级证书考试-硬笔书法考试专用纸-(123级)
- 山东省各地市地图课件
- 全套IATF16949内审核检查表(含审核记录)
- 基础工程量计算表
- 设备报修单表
- 心肺复苏急救步骤图例
- 《春夜喜雨》公开课一等奖课件
- 简易呼吸球囊
评论
0/150
提交评论