软工课设.docx
- 文档编号:23431020
- 上传时间:2023-05-17
- 格式:DOCX
- 页数:25
- 大小:381.69KB
软工课设.docx
《软工课设.docx》由会员分享,可在线阅读,更多相关《软工课设.docx(25页珍藏版)》请在冰豆网上搜索。
软工课设
一、课程设计的目的与要求
1.课程设计目的
软件工程课程设计是学习软件工程课程后所进行的实践环节,目的是培养学生用工程化的思想和标准文档化的思想进行软件开发。
本次课程设计通过开发一个小型实用的软件系统,亲身体验软件生命周期中的各个环节,以加深对软件工程课程的深入理解、锻炼独立分析、解决问题的能力。
2.课程设计要求
2.1课程设计准备
1)复习软件工程课程的主要内容,熟练掌握软件生命周期的理论以及各阶段的基本概念。
2)明确可行性分析、需求分析、设计、测试等阶段的基本任务和基本方法。
3)熟练运用规范化的描述方法和文档,描述软件开发的各个阶段。
4)熟悉开发环境和开发工具。
2.2内容要求
1)对所设计和实现的系统进行可行性分析,提交可行性分析报告;
2)对系统进行需求分析,可以选择传统的分析方法或者面向对象的分析方法,提交软件需求规格说明书(SRS);
3)在SRS的基础上进行软件的概要设计和详细设计,提交软件设计文档;
4)遵循上述文档的要求,实现软件;
5)对所实现系统进行软件测试,完成软件测试报告。
二、设计正文
1.可行性分析报告
1.1项目简介
1.1.1项目目标
在科技迅猛发展的今天,高校的食堂也开始与时俱进,实现越来越现代化、数字化、标准化。
大学校园里很多都实行了“一卡通”的项目,这极大的便利了广大学生和教师。
随着时代的发展,电子管理系统的多功能化,企业学校等纷纷使用电子记账系统对于员工、学生等是消费经行管理。
本系统的目标是实现,对学生饭卡的管理。
达到便捷高效,可用性好,操作性强的校园饭卡管理系统。
1.1.2系统的简要描述,主要功能
本系统可以完成:
饭卡消费并在消费完成时显示余额,饭卡充值并显示余额,新用户开户并显示卡,饭卡挂失,饭卡解挂,饭卡注销,对用户饭卡消费及充值情况查询,更改管理员密码等功能。
由于系统的界面清晰、美观,操作简单、方便,所以操作人员只需要具备一定的电脑操作技能即可。
管理员(维护人员)不需要任何数据库专业技能知识。
本系统可以极大的提高工作效率,预期使用频度较高
1.2对现有系统的分析
1.2.1处理流程和数据流程(系统流程图)
1.2.2对现有系统的其他说明
维护:
本系统由于非常简单,可以每年维护。
人员:
由于程序较简单,只需要两个管理员管理即可,分别负责执行和负责检查工作。
开发者需要的环境:
Windows8.1或windows7系统
Corei5处理器
Microsoftvisualstudio2010
SqlServer2008R2
IBMRationalSoftwareArchitect(RSA)或IBMRationalRose
IBMRationalFunctionalTester(RFT)
1.3技术可行性分析
本系统是对饭卡进行管理,要完成饭卡管理的一系列功能。
经考虑后决定采用采用面向对象的C#语言编写程序界面和数据处理部分,并链接sqlserver2008数据库,用数据库完成饭卡信息的保存、修改以及删除。
1.4经济可行性分析
本系统为课程设计,不涉及经济效应。
1.5社会因素可行性分析
1.5.1法律因素
本系统为课程设计,没有盈利行为,不涉及法律因素。
1.5.2用户使用可行性
本系统采用C#winform图形界面,有良好的中文提示和界面提示。
能保证用户能够正常使用该系统完成需求的功能。
1.6可供选择的方案
1.6.1采用C/S风格
使用C/S风格结构简单,并且可以满足软件需求,带来良好的用户使用感受,考虑可以采用。
1.6.2直接购买
由于本系统属于课程设计,故不考虑购买。
1.6.3采用C#winform窗体为基础的饭卡管理系统,具有可靠性好,易于操作的优点,不需要对操作人员再进行专业培训。
由于三层架构具有安全性高,易于实现高内聚低耦合和代码复用等优点。
因此,本系统采用三层架构设计。
2.
软件需求规格说明书(SRS)
2.1需求概述
1)根据系统的功能需求,要建立三个库文件,分别是学校持卡者信息,饭卡存款额及历史情况和饭卡信息备份。
学校持卡者信息库用来存放全校持卡者的各类信息,比如姓名、学号、系别;饭卡存款额及历史情况库用来记录此张饭卡当前的余额、刷卡时消费记录以及存款的历史记录;为了防止意外导致这些重要文件丢失,需要备份,备份信息放入饭卡信息备份库中。
2)运行环境
中央电脑,要求容量大,CPU能够满足查询的。
刷卡器,要求读取ID敏捷,准确。
要求刷卡器与中央电脑连接。
通信量要满足查询精度和速度。
刷卡器上的功能建,要求显示明确,意思表达精确。
2.2功能需求
用例图、部分顺序图或用DFD描述
E-R图
2.3数据描述
类图或数据词典
1学生信息:
学号=[数字|字母]
姓名=[汉字]
性别=[男|女|]
电话号码=[数字]
所属班别=[汉字|数字|字母]
所属专业=[汉字|数字|字母]
2饭卡信息
饭卡ID=[数字|字母]
余额=[数字]
锁=[1|0]
3饭卡历史
饭卡ID=[数字|字母]
时间=[时间格式]
款额=[数字]
操作=[存款|消费|其他]
4饭卡挂失/解锁
饭卡ID=[数字|字母]
密码=[数字|字母]
5饭卡刷卡消费
饭卡ID=[数字|字母]
密码=[数字|字母]
限定金额=30{数字}30
余额=[数字]
锁=[true|false]
6存款
饭卡ID=[数字|字母]
密码=[数字|字母]
充值额=[数字]
余额=[数字]
锁=[true|false]
7修改用户信息
饭卡ID=[数字|字母]
密码=[数字|字母]
学号=[数字|字母]
姓名=[汉字]
性别=[男|女|]
电话号码=[数字]
所属班别=[汉字|数字|字母]
2.4性能需求
1)数据精确度
查询最大查询范围4年内;卡ID合法性;客户信息合法性
2)时间特性
系统响应时间不超过4S
3)适应性
要求满足运行环境在允许操作系统之间的安全转换和与其它应用软件的独立运行要求,与一般软件没冲突情况。
2.5运行需求
1)用户界面
本系统是基于Windows平台下的窗口图形界面软件,运行主界面为Windows的经典运行界面,采用多文档界面,从而可以使程序更加美观,整齐有序,简易操作。
2)硬件接口
电脑,刷卡设备以及打印机。
3)软件接口
Windows平台windows7及以上版本。
4)故障处理
刷卡响应时间超过1秒后,自动提出警告。
要求重新刷卡。
查询超过5秒,要显示查询时间长的提示信息。
以免误认为死机。
当计算机突然死机、重启、断电时自动存储备份数据。
即便没有存上。
也有备份数据库,供恢复。
2.6其它需求
注意:
SRS文档的重点是功能需求和数据需求
3.软件设计说明书
3.1软件模块结构图
3.2文件结构和全局数据
1)建立的数据库:
列名
数据类型
描述
数据长度
含义
stu_num
Char(20)
不允许为空,主键
20
学生学号
name
Char(20)
不允许为空,
20
学生姓名
male
boolean
不允许为空,
1
性别
tel
Char(20)
允许为空
20
电话号码
class
Char(50)
允许为空
20
所属班别
学生信息
列名
数据类型
数据长度
描述
含义
id
int
4
不允许为空,主键
卡ID
sum
float
6
不允许为空
余额
lock
boolean
1
不允许为空
锁
卡信息(card_info)
列名
数据类型
数据长度
描述
含义
id
int
4
不允许为空,主键
卡ID
daytime
daytype
8
不允许为空
时间
sum
float
8
不允许为空
款额
op
Char(20)
20
不允许为空
操作
2)全局数据:
3.3模块描述
3.3.1管理员模块描述
1)功能:
饭卡消费并在消费完成时显示余额,饭卡充值并显示余额,新用户开户并显示卡,饭卡挂失,饭卡解挂,饭卡注销,对用户饭卡消费及充值情况查询,更改管理员密码。
2)接口:
管理员界面使用此模块。
3)数据:
管理员账户及密码。
4)处理:
创建新用户的模块
饭卡信息查询
卡的挂失与解锁
注销饭卡
修改用户信息
饭卡消费模块
3.3.2学生模块描述
1)功能:
拥有管理员模块的查询和消费和充值功能。
2)接口:
学生界面调用此模块;
3)数据:
学生账号,密码
4.软件测试报告
4.1测试范围
软件测试的目的就是在软件投入生产性运行之前,尽可能多的发现软件中的错误。
这一目的决定了如何去组织测试。
目前软件测试仍然是保证软件质量的关键步骤,它是对软件规格说明、设计和编码的最后审核。
预期的结果是可以正常登录并且可以注册、充值、消费、查询、挂失、解锁等功能,不出现程序异常结果。
测试的步骤是首先测试用户登录,其次测试用户注册,利用注册好的用户进行充值和消费的测试,然后对挂失解锁功能进行测试。
最后一起对其它功能进行测试。
4.2测试计划
考虑到各种因素和条件的限制,对校园饭卡管理系统采用黑盒测试方案,即根据软件所需要的输入数据的格式以及应该完成的功能,设计一些合法的测试用例和不合法的测试用例,特别是根据边界条件设计一些便捷测试用例,检查系统是否能正确地完成预期功能,得到希望的输出;或是对不合法的输入和操作能够正确地识别和防御。
4.2.1测试阶段
1)第一测试阶段:
单元测试,对两个身份的登陆界面,以及选中身份后的权限所实现的增删改查功能是否能够实现;目的在于核实所有的功能是否正常,即可按每个用户的需求制定了登陆页面 ,确保所有流程符合逻辑,用户使用不会产生困扰。
2)第二测试阶段:
集成测试,从登陆界面开始,调用各个模块,看是否调用成功;为了确保根据不同需求能及时做出正确反应。
3)第三测试阶段:
对照需求说明书进行确认测试,看个子系统的实现的功能是否符合预期结果。
4)第四测试阶段:
系统测试,运行整个系统,对系统中各个组成部分进行综合性检验;测试该系统是否存在之前未发现的错误,用户体验是否流畅,预期输出是否满足软件需求。
4.2.2测试进度:
(列出测试的全部进度、顺序和依赖关系,安排各模块的测试日程)
测试模块名称
测试顺序
先序完成的测试
测试日程安排
系统登录测试
按两种登录方式顺序测试
无
2015.07.01上午
管理员注册新用户
按学生编号顺序测试
系统登录测试
2015.07.02上午
管理员添加用户信息模块
按学生编号顺序测试
系统登录测试
2015.07.02上午
管理员注销用户信息模块
按学生编号顺序测试
系统登录测试
2015.07.02上午
管理员修改用户信息模块
按学生编号顺序测试
系统登录测试
2015.07.02上午
管理员查询用户信息模块
按学生编号顺序测试
系统登录测试
2015.07.02上午
用户充值消费模块
按学生编号顺序测试
系统登录测试
2015.07.02上午
管理员挂失/解锁模块
按学生编号顺序测试
系统登录测试
2015.07.02上午
用户查询自身信息模块
按学生编号顺序测试
系统登录测试
2015.07.02上午
管理员更改自身信息模块
按学生编号顺序测试
系统登录测试
2015.07.02上午
退出系统模块
按学生编号顺序测试
系统登录测试
2015.07.02上午
4.3测试项目说明
按顺序逐个对测试项目做出说明
4.3.1系统登录测试
1)测试目的:
为了保证在各种情况下,系统能够对登录信息作出正确判断,对数据和文件的访问及时、准确
2)测试方法和测试软件:
等价类划分法
3)测试用例:
用户类型
帐号
密码
预期结果
测试用例1
管理员
admin(合法)
admin(合法)
登陆成功,跳转到管理员界面
测试用例2
用户
east(合法)
asdf(合法)
登陆成功,跳转到用户界面
测试用例3
管理员
asdfgh(不合法)
123(合法)
登录失败
测试用例4
管理员
Guanliyuan(合法)
Asdfg(不合法)
登录失败
测试用例5
用户
dema(不合法)
asdfg(合法)
登陆失败
测试用例6
用户
09020103(合法)
东昀(不合法)
登陆失败
测试用例7
用户
zhangsan(不合法)
zhangsan(合法)
登陆失败
测试用例8
用户
T9020103(合法)
张3456(不合法)
登陆失败
4)测试方法和测试软件:
采用黑盒测试
4.3.2管理员注册新用户测试
用户
姓名
性别
年龄
学号
出生日期
预期结果
用例1
管理员
女
20
09020202
1993-
添加学生成功
用例2
管理员
123
男
21
09020101
1991-10-11
添加学生失败
用例3
管理员
张三
A
20
09020126
1992-11-06
添加学生失败
用例4
管理员
李四
女
10000
09020110
1992-11-10
添加学生失败
用例5
管理员
王五
女
20
1asdfg
1992-09-02
添加学生失败
用例6
管理员
赵六
男
19
09010203
123456
添加学生失败
…
4.3.3管理员查询信息模块
1)测试目的:
能否正确、迅速的查询到指定的学生信息,对数据库和文件的访问是否及时
2)测试方法和测试软件:
黑盒测试
3)测试用例:
用户类型
输入要查找的信息
预期结果
测试用例1
用户/管理员
09020102
查询成功
测试用例2
用户/管理员
查询成功
测试用例3
用户/管理员
0902010A
查询失败
测试用例4
用户/管理员
12
查询失败
测试用例5
用户/管理员
09020109
未查询到相关记录
测试用例6
用户/管理员
张四
未查询到相关记录
4.3.4注销用户信息模块:
1)测试目的:
验证用户信息是否注销成功,系统对数据库和文件的访问是否及时,修改是否正确
2)测试方法和测试软件:
黑盒测试
3)测试用例:
用户类型
输入要删除的信息
预期结果
测试用例1
管理员
09020202
删除成功
测试用例2
管理员
删除成功
测试用例3
管理员
0902010B
删除失败
测试用例4
管理员
张三2
删除失败
测试用例5
管理员
09020125
未找到相关记录
4.3.5充值消费模块
用户类型
输入要执行的用户
充值/消费
预期结果
测试用例1
管理员
09020202
充值100元
成功,余额100元
测试用例2
用户
09020202
消费5元
成功,余额95员
测试用例3
用户
09020202
消费100元
失败!
余额不足!
4.3.6挂失解挂模块
用户类型
输入要执行的用户
预期结果
测试用例1
管理员
0902022挂失
挂失成功
测试用例2
管理员
挂失
挂失失败
测试用例3
管理员
0902010B挂失
挂失失败
测试用例4
管理员
09020277挂失
没有此学号!
测试用例5
管理员
09020202解挂
解挂成功,您可以正常消费!
测试用例5
管理员
09020202解挂
失败!
账号没有挂失
4.4测试分析
4.4.1系统登录测试:
1)实测结果数据:
管理员登录时,只有用户名为admin、密码为admin才可进入,用户登录时,使用学号作为用户名,密码为字母和数字的任意组合(不包含其他字符)。
2)与预期结果数据的偏差:
基本不存在偏差。
3)该项测试表明的事实:
在各种情况下,系统能够对登录信息作出正确判断,对数据和文件的访问及时、准确,基本上达到了预期目标。
4)该项测试发现的问题:
无。
4.4.2注册用户信息模块:
1)实测结果数据:
在添加用户信息时,只有满足以下要求的才能够被写入数据库:
姓名为汉字或字母任意组合,性别只能为男或女两个字符,年龄在15-100岁之间,学号为数字的满足一定条件的组合,出生日期为YYYY-MM-DD的格式。
凡不符合以上要求的信息均不会被写入数据库。
2)与预期结果数据的偏差:
基本不存在偏差。
3)该项测试表明的事实:
系统基本能够正确添加学生信息,对数据库和文件的访问及时,修改准确、迅速。
4)该项测试发现的问题:
无。
4.4.3修改用户信息模块:
1)实测结果数据:
在修改学生信息时,只有满足以下要求的才能够被写入数据库:
姓名为汉字或字母任意组合,性别只能为男或女两个字符,年龄在15-100岁之间,学号为数字的满足一定条件的组合,出生日期为YYYY-MM-DD的格式。
凡不符合以上要求的信息均不会被写入数据库。
2)与预期结果数据的偏差:
基本不存在偏差。
3)该项测试表明的事实:
系统基本可以正确修改学生信息,对数据库和文件的访问及时,修改准确、迅速
4)该项测试发现的问题:
无。
4.4.4查询用户信息模块:
1)实测结果数据:
在查询用户信息的时候,输入学号即可返回所要查询的用户信息。
2)与预期结果数据的偏差:
基本不存在偏差。
3)该项测试表明的事实:
系统能够正确、迅速的查询到指定的用户信息,对数据库和文件的访问较为及时,基本上达到了预期目标。
4)该项测试发现的问题:
无。
4.4.5注销学生信息模块:
1)实测结果数据:
需管理员填入正确的用户信息才能删除成功,若学号与数据库中数据不相符,则删除失败。
2)与预期结果数据的偏差:
基本不存在偏差。
3)该项测试表明的事实:
用户信息输出成功,系统对数据库和文件的访问基本可以满足要求。
4)该项测试发现的问题:
无。
4.4.6充值消费模块:
1)实测结果数据:
需先进行充值才能消费成功,若学号与数据库中数据不相符,则充值失败。
若余额不足,则消费失败
2)与预期结果数据的偏差:
基本不存在偏差。
3)该项测试表明的事实:
用户充值消费成功,系统对数据库和文件的访问基本可以满足要求。
4)该项测试发现的问题:
无。
4.4.7挂失解挂模块:
1)实测结果数据:
需先进行挂失才能解挂成功,若学号与数据库中数据不相符,则挂失失败。
若没有挂失,则解挂失败
2)与预期结果数据的偏差:
基本不存在偏差。
3)该项测试表明的事实:
用户挂失解挂成功,系统对数据库和文件的访问基本可以满足要求。
4)该项测试发现的问题:
无。
注意!
重点在:
测试项目说明,即测试用例的设计上,和测试分析上面。
三、
课程设计总结或结论
校园饭卡管理系统是在.NET平台下开发的基于三层架构的管理系统。
本人经过认真的调研,查找资料,对需求进行分析,最终实现了权限登录,修改密码,开户,销户,挂失,解挂。
充值,消费,信息查询等功能。
并且经过测试,能够基本满足用户需求。
该系统性能良好,工作正常,具有较强的可移植性,可维护性和安全性。
软件工程课程设计是对软件工程课程的深入学习,是将理论付诸实践的过程。
经过两周的课程设计,我学到了如何用工程化的思想和标准文档化的思想进行软件开发,亲身体验了软件生命周期中的各个环节,加深了对软件工程课程的深入理解。
首要的是我们对软件的制作过程有了更清晰的认识。
从软件的需求分析到详细设计再到代码的实现最后到软件测试,每个环节的实现和过渡使得软件设计变得清晰易实现。
在这次小型管理系统的设计的实践过程中,我们对软件工程制作软件的流程有了深层次的理解并更加熟悉。
软件工程的设计方法对软件的实现是非常重要的,它使得抽象的软件实体化,让我们能够触摸的到并最终实现。
在本次课程设计中收获良多,感谢老师的悉心指导。
虽然最后程序得以运行成功,但是界面非常的简单,功能只完成了基本的功能没有更多的对图书借阅等校园饭卡功能的拓展。
希望以后能够得到更好的提升
四、参考文献
[1]第1作者名,第2作者名.文章名.期刊名(或者书名).出版地:
出版社,出版日期
要求至少列5篇参考文献
例如:
[2]软件工程课程设计李龙澎郑诚等.北京:
机械工业出版社,2009
[3]软件工程实践教程第二版刘冰刘锐瞿中吴渝北京机械工业出版社2012.
附录(程序、表格、数据等相关资料)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软工课设
![提示](https://static.bdocx.com/images/bang_tan.gif)