完整版(包括图片表格,请访问 http://www.omegaxyz.com/2019/07/23/software-specification/)
本软件需求规格说明书范例对应的软件测试计划请参照:
http://www.omegaxyz.com/2019/08/02/software-testing/
PDF文档及更多软件测试内容请参考:https://github.com/xyjigsaw/software-testing
一、 引言
1.1 定位与目标
1.2 对象
1.3 软件需求分析理论
1.4 软件需求分析目标
二、 需求概述
2.1 项目背景
2.2 需求概述
2.3 系统结构
三、 系统功能需求
3.1 功能总览
3.2 业务流程图
3.3 数据流分析
3.4 数据字典
3.5 E-R图
四、 软硬件及外部系统接口需求
4.1 用户界面
4.2 硬件需求
4.3 运行环境
五、 可靠性与可用性需求
5.1 性能需求
5.2 安全性需求
六、 参考文献
计算机技术高度发达的今天,利用信息技术对大量复杂的信息进行有效的管理成为一种普遍而实用的手段。一方面,这极大的减少了簿记和人力的开销,另一方面,现代计算机强大的计算能力和网络的普遍部署,大大简化了大量信息的处理和流动。学生在线考试系统是评测学生能力的一个重要组成部分,他对教师的工作效率有很大的提高,它不但可以降低对纸质试卷的要求,同时也体现了节约型社会的要求。该系统涉及了学生在线程序能力测评考试,学习成绩插询,以及很多相关信息的综合处理。为了方便配合教师对学生成绩的进一步了解,开发学生在线考试系统是当务之急。学生在线考试系统把试题、电脑改卷、成绩查询的部分管理工作集成到一个统一的平台,各管理人员分工协作、相互配合,及时了解学生编程水平。同时,也可以方便教师针对学生个体不同情况进行分层次指导。
本《软件需求规格说明书》的预期读者是:
程序教学平台开发经理
技术部经理
项目组所有人员
测试组人员
SQA 人员
开发公司授权调阅本文档的其他人员
软件需求分析是研究用户需求得到的东西,完全理解用户对软件需求的完整功能,确认用户软件功能需求, 建立可确认的、可验证的一个基本依据。软件需求分析是一个项目的开端, 也是项目实施最重要的关键点。 据有关的机构分析结果表明, 设计的软件产品存在不完整性、 不正确性等问题 80%以上是需求分析错误所导致的,而且由于需求分析错误造成根本性的功能问题尤为突出。因此,一个项目的成功软件需求分析是关键的一步。
对实现软件的功能做全面的描述,帮助用户判断实现功能的正确性、一致性和完整性,促使用户在软件设计启动之前周密地、全面地思考软件需求。了解和描述软件实现所需的全部信息,为软件设计、确认和验证提供一个基准。
为软件管理人员进行软件成本计价和编制软件开发计划书提供依据。
需求分析的具体内容可以归纳为六个方面: 软件的功能需求, 软件与硬件或其他外部系统接口,软件的非功能性需求, 软件的反向需求, 软件设计和实现上的限制,阅读支持信息。
软件需求分析应尽量提供软件实现功能需求的全部信息, 使得软件设计人员和软件测试人员不再需要需求方的接触。 这就要求软件需求分析内容应正确、 完整、一致和可验证。此外,为保证软件设计质量,便于软件功能的休整和验证,软件需求表达无岔意性,具有可追踪性和可修改性。
将要开发的软件名为《计算机程序能力在线测评系统》,本项目的提出者是安徽大学计算机科学与技术学院,而开发者是16级安徽大学软件工程班负责,主要用户是安徽大学本科生级研究生, 该软件独立于其他系统,自成一个完整的系统,应用方便。
下面就对算机程序能力在线测评系统的设计进行需求分析。
首先,因为考试是面向特定的某些对象的,所以考试者进入系统应该进行身份验证。考试者进入考试系统后,应该能根据自己的需要选择考试能力水平,所以该 系统还应具有考试难度选择(分为顶级、甲级、乙级)的功能。为了在线考试做到规范,对于每个应试者来说,试卷的试题和题量都应是相同的,但试题并不相同。在线考试基于网络环境,试卷应该从服务器的数据库随机抽取试题后动态生成的。另外,系统还应该对考试时间进行控制,时间到了会要求考试者交卷。考试者选择答案提交后,应该由计算机自动判卷,得到成绩后显示出来。考试完毕后,可以返回登录界面或查询成绩与排名。
图2.1 系统结构
表 3.1 功能总览
完整版(包括图片表格,请访问 http://www.omegaxyz.com/2019/07/23/software-specification/)
该系统是基于网络技术的一种在线测评系统,管理员通过网络对题库进行维护,添加试题、修改试题、删除试题等操作;考生通过系统完成考试、分数查询等操作;系统自动组卷并且完成试卷的批阅、分数的统计等操作。
图3.1 业务流程图
学生登陆系统后从试题库中选出一套试题,然后开始答题,答题完后提交给系统,由系统完成对试卷的批阅统计出成绩,学生可以登陆查询。 管理员登陆系统后对系统进行维护更新。
图3.2 数据流图
数据项条目,用于标识实体。数据字典是数据库的重要部分,它存放有数据库所用的有关信息,对用户来说是一组只读的表。它是关于数据信息的集合。它是数据流图中所有要素严格定义的场所,这些要素包括数据流、数据流的组成、文件、加工小说明及其他应进入字典的一切数据,其中每个要素对应数据字典中的一项条目。其中,对引用的一些关键字进行说明 : PK(主键 ),FK(外键 ), Check(检 查的范围约束),Not null(不为空值)。
完整版(包括图片表格,请访问 http://www.omegaxyz.com/2019/07/23/software-specification/)
表3.2 考生信息表
编号 字段名称 字段含义 字段类型 字段长度 是否主键 默认值
1 uuid 考生考号 Varchar 10 √
2 name 考生姓名 Varchar 14
3 gender 性别 Bool 1
4 password 密码 Varchar 20 123456
5 mail 邮箱 Varchar 40
6 phone 电话 Varchar 12
表3.3 试题难度系数表
编号 字段名称 字段含义 字段类型 字段长度 是否主键 默认值
1 idl 难度编号 Varchar 3 √
2 dsl 难度描述 Varchar 30 NULL
表3.4 题目信息表
编号 字段名称 字段含义 字段类型 字段长度 是否主键 默认值
1 idq 题目号 Varchar 10 √
2 idl 难度编号 Varchar 3
3 nameq 题目名称 Varchar 10
4 des_q 题目表述 Varchar 100 NULL
5 index_q 索引编号 Varchar 20
6 pass_n 通过人数 Longint 16 0
7 att_n 提交次数 Longint 16 0
表3.5 试卷信息表
编号 字段名称 字段含义 字段类型 字段长度 是否主键 默认值
1 idp 试卷号 Varchar 10 √
2 score_t 总分 Int 8 100
3 nameq 题目名称 Varchar 10
4 des_p 试卷表述 Varchar 100 NULL
5 start_p 开始时间 Date 16 Date()
6 end_p 结束时间 Date 16 Date()
表3.6 管理员信息表
编号 字段名称 字段含义 字段类型 字段长度 是否主键 默认值
1 uuid_a 工号 Varchar 10 √
2 name_a 姓名 Varchar 8
3 password_p 密码 Varchar 20
4 mail_p 邮件 Varchar 40
5 phone_p 联系电话 Varchar 12
表3.7 考场信息表
编号 字段名称 字段含义 字段类型 字段长度 是否主键 默认值
1 uuid_s 考场号 Varchar 10 √
2 name_s 考场名称 Varchar 20
3 des_s 考场描述 Varchar 100
完整版(包括图片表格,请访问 http://www.omegaxyz.com/2019/07/23/software-specification/)
图3.3 试题E-R图
图3.4 考生E-R图
图3.5 成绩单E-R图
用户界面是程序中用户能看见并与之交互作用的部分,设计一个好的用户界面是非常重要的,本设计将为用户提供美观,大方,直观,操作简单的用户界面。
移动终端硬件配置应遵循如下原则:具有高的可靠性,可用性和安全性。【描述系统中软件和硬件每一接口的特征。这种描述可能包括支持的硬件类型、软硬件之间的交流的数据和控制信息的性质以及使用的通信协议。】
Web 浏览器:0+、Chrome、Opera、Safari、Firefox及任何支持HTML5标准的浏览器。
标准分辨率:1024768、19201080、2K
五、 可靠性与可用性需求
处理能力
由于是在线测评系统,其处理能力主要考虑系统能承载的最大并发用户数,按照实际情况的规划,系统至少能承载的最大并发用户数要求达到全校学生总人数*φ,φ为0至1的常数,随服务器容量而定。
响应时间
为了能够快捷地提供在线测评服务,系统应该能够快速地响应在线测评请求。用户最终得到结果的响应时间除了与系统响应速度有关外,还与网络状况有关。因此对Web服务器端需要较高的要求。
表 5.1 相应时间分析
完整版(包括图片表格,请访问 http://www.omegaxyz.com/2019/07/23/software-specification/)
传输的数据都采用高强度的加密算法加密 (DES),使得数据即使泄漏、被截获后,也无法识别相关的数据内容,确保数据安全。对于客户端与服务器交互的数据,使用安全套接子层 (SSL,SSL 加密传输主要是针对 WEB的数据传输,基于重要信息的传输安全考虑而设计的) 进行信息交换,并在客户移动终端和服务器之间重要的信息的交换。
[1] 卢正鼎, 张照, 周裕强,等. 面向工程设计应用的数据库管理系统EDDBMS[J]. 计算机研究与发展, 1997(s1):328-332.
[2] 蔡长安, 王琪. 基于B/S模式的学生信息管理系统设计与实现[J]. 计算机工程与设计, 2006, 27(14):2585-2587.
[3] 李文新, 郭炜. 北京大学程序在线评测系统及其应用[J]. 吉林大学学报:信息科学版, 2005(S2):170-177.
更多内容访问 omegaxyz.com
网站所有代码采用Apache 2.0授权
网站文章采用知识共享许可协议BY-NC-SA4.0授权
© 2020 • OmegaXYZ-版权所有 转载请注明出处