软件工程课程设计终极版Word格式.docx
- 文档编号:16223515
- 上传时间:2022-11-21
- 格式:DOCX
- 页数:27
- 大小:275.49KB
软件工程课程设计终极版Word格式.docx
《软件工程课程设计终极版Word格式.docx》由会员分享,可在线阅读,更多相关《软件工程课程设计终极版Word格式.docx(27页珍藏版)》请在冰豆网上搜索。
第二章可行性分析
进行研究的前提是系统能够实现:
管理员用户录入所有学生的信息,包括学号、姓名、班级、出生日期、性别,课程,对学生数据进行管理、更新、修改、删除;
教师用户登录后,能够阅读所教授课程及全部学生信息,并按学号录入学生成绩后提交给管理员,若成绩出错时可以修改、删除、增加学生成绩;
学生用户登录后可以看到自己的学生信息和课程信息,并查询相应成绩
2.1技术可行性
学生成绩管理系统需要有软件工程,数据库技术,网络技术,相应软硬件支持,经济支持,人才要求等。
学生成绩管理系统的软件设备有操作系统WIN2000、WINXP,IE6.0及以上、10M以上的LAN接入网络带宽、数据库软件SQLServer,网络和办公软件EXCEL2000用以输出报表;
学生成绩管理系统的硬件设备有100M网卡,电脑五台,CPU奔腾4以上,内存1G以上,硬盘160G以上,可打印A3纸的打印机1台用以打印所需学生成绩。
在现代化社会,这些硬件设备以越来越低廉的价格进入千家万户。
学生成绩管理系统的人员要求:
系统分析人员
(2),开发人员(5),数据库管理人员
(1)。
采用C++实现,依靠强大的数据库控件和数据库管理系统和其他语言相结合,两个月内开发出系统。
现在有很多专门的机构用来培养计算机人才,各大高校也设置了很多的相应课程,现在的社会优秀的IT人才层出不穷,为系统的开发提供了强有力的智力支持。
2.2经济可行性
通过对软件开发项目进行成本/效益估计,以确定软件系统可能带来的经济效益能否超过研制和维护此系统所需的费用。
一套数据库软件如微软SQLServer价格在4万元,购买电脑、打印机网卡等硬件设备8万元,购买系统软件、办公软件、网络软件分别需要30000元、20000元和15000元,雇用2名系统分析员50元/小时,5名程序开发人员40元/小时,1名数据库管理人员45元/小时,2名技术书写人员30元/小时,工作5周,一周工作五天,每天8小时,其他物资消费5000元。
假设一个学生成绩管理系统运行15年,后期软件硬件升级20000元,雇用系统管理员1500元/月。
合计开发一个学生成绩管理系统需要56万元。
应用传统成绩管理方式,根据学校规模学生人数每年消耗油墨纸张6万,雇用大量人力进行数据处理存储每年需要10万,累计15年需要资金240万。
从直观上进行比较不仅每年可节省大量的物力(如传统管理方法的磁盘,纸张,相应的物理空间)和人力(数据量庞大需要大量的管理人员)开销,更重要的节约大量时间,提高工作效率,维护良好的学校工作形象,当然这些都是无形的资产,但也是无价的。
2.3操作可行性
管理员需要进行信息管理,教师用户和学生用户只需进行用户登录认证即可查看信息,操作简便易行,界面设计如果足够简单,可以非常方便的查询管理学生成绩。
管理员对数据库的管理运用相关数据库知识,教师和学生用户只需在登录界面输入用户名和密码即可进入成绩查询系统,根据系统的提示,进行输入、单击操作即可输入成绩,查询成绩。
操作简单易学。
第三章需求分析
3.1功能需求
3.1.1功能划分
系统的功能需求包括以下几个方面
(1)学生用户能够查询成绩和个人信息
(2)教师用户能够查询学生信息,提交、修改学生成绩
(3)管理员用户可以对系统的数据进行维护,如增加、删除、更新学生信息,增加、更改、删除教师信息
满足以上需求的系统需要一下几个模块
(1)基本数据维护模块。
基本数据维护模块提供了使用者录入、修改并维护基本数据的途径。
如管理员对学生和教师用户信息的更新和教师用户输入学生成绩
(2)信息查询模块。
信息查询模块主要用于实现学生用户和教师用户对成绩和个人信息的查询
(3)数据库管理模块。
在系统中,所有的数据信息都要进行详细的记录,所以要用同意的数据库管理平台进行管理
图3.1学生成绩管理系统的功能需求
图3.2基本数据维护模块
图3.3信息查询模块
图3.4数据库模块
3.2系统UML基本模型
3.2.1系统的用例图
学生用户,学生登录系统后可以查询个人信息和成绩,学生的成绩需要由产生成绩的人进行输入,需要教师把学生成绩的导入,同时需要教师的信息,对于一个成绩管理系统,系统维护也至关重要,维护操作包括数据添加,更新修改,删除等。
学生成绩管理系统主要实现学生查询成绩,教师录入成绩和管理员管理三个主要功能,涉及到角色有学生、教师和管理员根据分析可以得到系统的用例图为
图3.5系统用例图
第四章总体设计
4.1总体设计
4.1.1软件结构体系
(1)系统流程图
图4.1系统流程图
(2)系统数据流图
图4.2系统数据流图
(3)系统的类图
在学生成绩管理系统中用到的类主要有:
学生类,教师类,管理员类,成绩类,课程类,工作记录类
学生类,属性包括姓名,学号,性别,年龄,年纪,班级,系别,专业,学生类能够进行的操作只有查询
教师类,属性包括姓名,教师号,性别,年龄,课程名称,能进行的操作有查询,包括学生信息和个人信息,添加成绩,修改成绩,删除成绩
管理员类,属性包括姓名和工作编号,能进行的操作有查询信息,更新信息,修改信息,删除信息,删除成绩
图4.3类图1
其他相关的类
课程类,属性有课程名称,课程编号,教师编号,能对课程进行查询操作
成绩类,属性有对应课程名称,对成绩进行的操作可以有查询,创建,修改,删除
工作记录,属性有进行某项操作的人员,操作时间,操作对数据库进行的修改,对工作记录进行查询,删除和保存
图4.4类图2
各类之间的关系
图4.5系统类图
4.2数据库设计
1
DBMS简介:
本系统应该实现学生成绩信息的管理与查询,具体包括学生信息查询,如姓名,五门课程总成绩等;
同时可以对以上信息进行修改,删除和添加。
另外还要做到可以对学生成绩信息以及成绩信息查询和维护。
2
数据库的概念模型与逻辑设计:
管理员只需要输入学生情况表和课程设置表中的数据及教师代码表中的信息;
教师只需输入成绩表中的学生成绩。
系部代码表、班级代码表、教师代码表、课程代码表等数据表的数据由教务处统一生成,由各系部共享。
3系统的主要数据表设计如下:
学生情况表(学号,姓名,性别,年龄,班级,年级,专业,系别)
系部代码表(系部代码,系部名称)
班级代码表(班级代码,班级名称)
教师代码表(教师代码,教师名称)
课程设置表(课程代码,课程名称,教师名称)
学生成绩表(学号,姓名,课程代码,课程名称,学期,成绩,学分)
表4.1学生基本信息表
字段名
数据类型
含义说明
空值情况
SID
Char(10)
学号
主关键字
Name
Char(27)
姓名
不为空
sex
Char
(2)
性别
可为空
speciality
Char(20)
专业
class
班级
College
系别
GRADE
Char(5)
年级
表4.2课程表
CID
Char(6)
课程号
CName
课程名称
不能为空
CT
教师名
表4.3成绩信息表
term
学期
score
Float(8)
成绩
表4.4系统用户表
列名
数据类型
可否为空
说明
user_ID
CHAR(10)
NOTNULL
用户名称(主键)
user_PWD
NULL
用户密码
user_DES
用户描述
4.3界面设计
1、屏幕格式
采用B/S模式,界面由C设计实现,完全基于windows兼容的桌面平台
2、报表格式
采用与实际的报表格式一致,当然这也要求客户端的硬件配置(如打印机等)要一致。
3、菜单格式
采用工具栏与菜单并用的方式,力图简洁、明了。
图4.6用户界面
第五章详细设计
5.1系统程序流程图
图5.1系统流程图
5.2系统程序设计
5.2.1登入模块
功能:
是用户可以进行各种操作的必须前提。
输入项目:
用户名、密码。
输出项目:
浏览区和基本资料区
程序逻辑:
P1:
检查用户名、密码与数据库是否吻合。
若是,转P3
P2:
产生提示用户名或密码错误的消息窗口;
P3:
用户确认后退出程序运行;
P4:
进入主窗体;
P5:
进入事件等待状态;
图5.2模块设计1
5.2.2关闭系统模块
关闭并退出系统,保留相应状态数据。
全局变量。
更新后的数据库文件和配置文件。
设置数据库和配置文件;
释放系统资源并退出系统;
图5.2模块设计2
5.2.3刷新基本资料模块
对更改后的基本资料区进行刷新。
对原来记录中memo域的处理方式(更新、刷新)。
设置浏览区和数据库。
5.2.4系统功能模块
选择各种系统功能。
鼠标、键盘或写字板事件。
无
若事件为查询,调用查询模块M8,转P9;
若事件为修改,调用修改模块M9,转P9;
若事件为添加,调用增加模块M10,转P9;
若事件为删除,调用删除模块M11,转P9;
若事件为打印,调用打印模块M12,转P9;
P6:
若事件为统计,调用打印模块M13,转P9;
P7:
若事件为最小化,执行Windows缺省操作,转P9;
P8:
若事件为关闭,调用关闭系统模块M2;
P9:
图5.3模块设计3
5.2.5查询模块
完成查询功能。
性能:
响应时间应尽量快。
进入查询窗体;
若用户取消,则返回;
获得查询结果;
查询结果显示在主窗体上,并等待用户确认;
若查询结果项数等于零,返回;
测试要点:
测试各种查询方式。
图5.4模块设计4
5.2.6修改模块
完成修改功能。
各种修改。
修改后的基本资料
点击要修改的表;
产生窗体;
P3:
等待用户修改;
P4:
若取消,返回;
P5:
对数据进行修改;
P6:
判断不能为空的字段是否为空;
为空发出警告,并转到P3;
P8:
若不为空,保存数据到数据库。
图5.5模块设计5
5.2.7添加模块
完成增加功能。
P7:
图5.6模块设计6
5.2.8删除模块
完成删除功能。
产生窗口;
若取消,则返回;
若确定,从数据库中删除记录;
保存记录至数据库;
调用刷新浏览模块M4;
调用刷新基本资料模块M6,返回;
图5.7模块设计7
5.2.9打印模块
完成打印功能。
产生打印窗口;
若确定,完成打印任务,返回;
图5.8模块设计8
5.2.10统计模块
所要统计的数据字段。
所统计的数据。
产生统计窗体;
等待用户输入所需统计的字段;
输入字段;
判断是否有此字段;
为无发出警告,并转到P3;
若有,产生统计列表。
返回;
图5.9模块设计9
5.2.11详细资料模块
显示记录的详细资料。
P1启动系统;
产生窗体,显示信息;
根据用户操作,返回相应值;
图510模块设计10
第六章系统测试
6.1测试目的
测试是为了发现程序中的错误而执行程序的过程,测试的目的就是在软件投入生产运行之前,尽可能的发现软件中的错误。
成功的测试是发现了至今为止尚未发现的错误的测试。
测试用例设计和执行是测试工作的核心,也是工作量最大的任务之一,设计良好的测试用例模板能提高测试用例的设计质量,便于跟踪测试用例的执行结果,自动生成测试用例覆盖率报告。
6.2测试项目
(1)登录测试
(2)数据输入和输出测试(3)权限测试(4)学生功能测试(5)教师功能测试(6)教务管理员的功能测试
6.3测试步骤
6.3.1软件测试流程
测试阶段的步骤:
每个软件测试阶段都要经历以下步骤:
测试需求分析、测试过程设计、测试实现、测试实施、测试评价、测试维护。
测试角色:
每个测试步骤都对应一个测试角色,另外还定义测试配置管理的角色。
明确区分各类测试角色,并明确定义其资源(人/物/时间)的安排,是保障软件测试工作有序开展、有效管理的关键。
明确区分测试需求分析角色和测试过程设计的角色意义还在于:
软件测试对软件功能/软件实现有了可追踪性,因而为准确评议测试用例的质量提供依据。
软件系统的测试流程:
单元测试、部件集成、部件确认、配置项组装、配置项确认、系统综合和系统验收。
6.3.2测试用例
1软件测试用例的定义
软件测试用例可以被定义为如下元组:
表6.1测试用例
测试用例ID
测试用例的ID(由案例管理系统自动生成,方便跟踪管理)
测试环境
进入测试实施步骤所需的代码和数据
测试功能点
测试的功能检查点
测试输入
运行测试所需的代码和数据
测试类型
测试类型:
功能测试、边界测试、异常测试、性能测试、压力测试、兼容测试、安全测试、恢复测试、安装测试、界面测试、启动/停止测试、文档测试、配置测试、可靠性测试、易用性测试、多语言测试
测试操作
详细描述测试过程,案例的操作步骤建议少于15个
预期结果
预期的测试结果
用例执行结果
执行时填写,分为通过、失败、警告、阻塞、忽略
2.软件测试用例的生成和执行
软件测试的核心任务是生成和执行软件测试用例。
(1)测试索引和测试环境在测试需求分析步骤中定义,是软件测试计划的内容;
(2)测试输入、测试操作、预期结果和评价标准的描述性定义在软件设计步骤中定义,是软件测试说明的内容;
(3)测试输入、测试操作、预期结果和评价标准的计算机表示(代码/数据定义)在软件测试实现步骤中给出,是软件测试程序产品。
3、测试用例的设计
用户登录
功能描述:
用户凭用户名和密码进行登录,用户名对应学号,假设本班共有50名学生,学号由4101到4150,密码不能少于6个字符,则可根据划分等价类,边界值检测法,错误推测法,因果图法等设计测试用例。
表6.2测试用例设计
输入数据
有效等价类
无效等价类
用户名
4个数字字符
非数字
多于4
少于4个
对应数值
在4101到4150之间
<
4101
>
4150
密码
大于6个字符
小于6个字符
测试用例为
表6.3测试用例
用例ID
输入等价类
用例说明
测试数据
1001
有1非数字字符
412B
输入无效
1002
全为非数字字符
ABCD
1003
多于4个
41023
1004
412
1005
4102
输入有效
1006
4100
1007
4151
1008
最小的数值
1009
最大的数值
1010
少于6位字符
12345
1011
6个字符
123456
1012
多余6个字符
12345678
查询测试
用户要登录系统查询成绩,必须同时输入用户名和密码,用户名和密码必须匹配才能成功登录系统。
用户名和密码的定义规则在上面的登录测试中有所规定
表6.4测试用例
用例编号
测试标题
测试步骤
2001
页面显示
从测试用例入口处进入
页面元素完整显示,页面与设计时一致
2002
学号:
成功输入
输入已存在的用户名
通过验证
2003
容错性验证
输入:
41203
输入到第五位时系统提示
2004
用户名:
输入存在的用户名
2005
学号验证
没有输入用户名
页面信息显示失败,并提示输入用户名
2006
信息显示:
成功
输入正确的用户名、密码
页面显示完整信息
2007
用户名、密码校验
输入用户名,没有输入密码
页面显示失败,并提示输入密码
2008
输入密码,没有输入学用户名
页面显示失败,并提示输入用户名
2009
用户名、密码匹配校验
输入用户名与密码不一致的姓名
页面显示信息失败,,并提示用户名密码不匹配
2010
输入有效性校验
输入不存在的密码
页面显示失败,并提示密码不正确
数据库测试:
核实是否可以输入和检索用户信息。
核实是否可以插入和显示内容和类别。
表6.5测试用例
3001
管理员插入数据
添加新用户
添加成功并保存到数据库
3002
管理员删除数据
删除用户数据
删除成功并保存到数据库
3003
教师插入数据
添加新成绩
添加成功并保存
3004
教师删除数据
删除旧成绩
删除成功并保存
3005
学生用户插入数据
插入数据
不能添加数据,操作无效,并提示用户没有此权力
3006
学生用户删除数据
删除数据
不能删除数据,操作无效,并提示用户没有此权力
用户界面测试,浏览所有的用例,核实是否每个用户界面面板都易于理。
核实所有的联机帮助功能。
表6.6测试用例
4001
用户界面的易用性
输入用户名密码,点击确定
显示用户查询的信息
4002
输入用户名密码,按回车
显示用户查询的信息
4003
联机帮助功能
点击帮助
显示帮助信息
4004
核实在具有
20
名并行用户时的系统响应。
核实在具有
100
5.00
1.000
3.000
名并行用户时的系统响应
5001
系统的响应
20名用户同时使用系统
系统响应时间1S
5002
100名用户并行使用
5003
500名用户并行
系统响应时间1.5S
5004
1000名用户并行
系统响应时间2S
5005
3000名用户并行
系统响应时间3S
数据库容量有一定的限度,当数据超过一定的限度时系统提示
6001
数据库容量
小于系统容量的数据
系统正常运行
6002
等于系统容量的数据
系统正常运行,同时提示空间不足
6003
大于系统容量
系统正常运行,但不能进行操作,同时提示空间不足,要求用户扩展空间
第七章总结
在这次课程设计中,使我们小组学会了软件系统设计,在一个完整的应用系统中,软件系统设计是系统实现的基础,一个良好的软件系统设计能在很大程度上减轻程序员程序设计的工作量。
另外,在设计中,要保证系统的有效性和完整性,否
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 课程设计 终极