国标8567软件需求规格说明实例教务系统重大修改版.docx
《国标8567软件需求规格说明实例教务系统重大修改版.docx》由会员分享,可在线阅读,更多相关《国标8567软件需求规格说明实例教务系统重大修改版.docx(43页珍藏版)》请在冰豆网上搜索。
国标8567软件需求规格说明实例教务系统重大修改版
软件需求规格说明(SRS)
目录2
1.范围4
1.1标识4
1.2系统概述4
1.3文档概述4
1.4基线5
2.参考文献:
6
3.需求6
3.1所需的状态和方式6
3.2需求概述6
3.2.1目标6
3.2.2运行环境8
3.2.3用户的特点9
3.2.4关键点9
3.2.5约束条件9
3.3需求规格10
3.3.1软件系统总体功能/对象结构10
3.3.2描述约定12
3.4CSCI能力需求12
3.4.1数据字典13
3.4.2系统功能分解15
3.4.3选课、退课模块16
3.4.4查询模块17
3.4.5成绩管理模块17
3.4.6教师个人信息更新模块17
3.4.7数据库模块17
3.5CSCI外部接口需求17
3.5.1用户界面17
3.5.2教务系统与XXX之间的接口19
3.6CSCI内部接口需求19
3.6.1教务系统与数据库之间的内部接口20
3.7CSCI内部数据需求20
3.7.1实体-关系图20
3.7.2数据表23
3.7.3数据流图25
3.8保密性需求26
3.9CSCI环境需求27
3.10计算机资源需求27
3.10.1计算机硬件需求27
3.10.2计算机硬件资源利用需求27
3.10.3计算机软件需求28
3.10.4计算机通信需求28
3.11软件质量因素28
3.12设计和实现的约束29
3.13数据29
3.14操作30
3.15故障处理30
3.16有关人员需求31
3.17有关培训需求31
3.18有关后勤需求31
4需求可追踪性31
5尚未解决的问题32
6注解(业务名词的解释)33
附录A34
附录B35
1.范围
1.1标识
(待开发软件的完整标识,(如果有的话)包括标识号,版本号、发行号、标题。
用于需求跟踪)
本文档适用于教务管理系统1.0版,标识号、和发行号无。
标题:
教务系统需求规格说明。
1.2系统概述
(本条应简述本文档适用的系统和软件的用途,它应描述系统和软件的一般特性;概述系统开发、运行和维护的历史;标识项目的投资方、需方、用户、开发方和支持机构;标识当前和计划的运行现场;列出其他有关的文档。
)
教务系统用于与教学活动有关的行政工作。
其主要功能包括:
学生查询课程、学生选课、成绩管理、打印报表等。
本项目无投资方,需求方为XX大学,用户为XX大学在校职工及学生,开发方为XX开发团队,支持机构为XXXXX。
本项目其他有关文档还有
《可行性分析(研究)报告(FAR)》、
《软件(结构)设计说明(SDD)》
《软件测试报告(STR)》
《软件产品运作总结》
1.3文档概述
(本文档针对的读者对象及每类读者应重点阅读的部分)
本软件规格规格说明用于使用户和开发开发团队双方对待开发软件的功能有一个共同的理解,使之成为整个开发工作的基础。
建议有关人员重点阅读的部分:
本说明书的各分部内容
用户方高层管理人员
用户方中层管理人员
用户方操作人员
开发方设计与编码人员
评审专家
1.范围
√
√
√
2.参考文献:
3.需求
3.1所需的状态和方式
3.2需求概述
√
√
3.3需求规格
√
√
3.3.1软件系统总体功能/对象结构
√
3.3.2描述约定
√
3.4CSCI能力需求
3.5CSCI外部接口需求
3.6CSCI内部接口需求
3.7CSCI内部数据需求
3.8保密性需求
3.9CSCI环境需求
3.10计算机资源需求
3.11软件质量因素
3.12设计和实现的约束
3.13数据
3.14操作
3.15故障处理
3.16有关人员需求
√
3.17有关培训需求
√
3.18有关后勤需求
√
4需求可追踪性
√
√
5尚未解决的问题
√
√
6注解
√
√
附录A
附录B
本说明书仅适用于教务系统,任何使用此文档的人员,必须严格按照文档规定及说明及相关法律条款规定,不能擅自修改及非法使用。
本开发团队拥有对此文档的最终解释权。
1.4基线
(
Ø采用迭代开发思想,待开发软件会依次经历若干个过渡版本,最终演化为满足所有需求的软件
Ø基线,是软件开发过程中的某个过渡版本及这个版本将要满足的一组需求
Ø基线要在需求规格说明书通过评审后才正式确立
Ø划定基线,首先要完成以下两项任务:
按优先级对所有需求项排序,估算每个需求项需要的工作量
Ø优先级的高的需求该优先被实现,每条基线的工作量应有恰当的时间粒度
Ø在任意一条基线的开发过程中,开发团队暂时不响应需求变更,而是把需求变更纳入下一条基线考虑
Ø基线为迭代开发提供了基础,迭代开发是应对需求变更的一种方式
Ø基线变更必须由变更控制委员会审批
)
基线
对应的一组需求
相应功能
预计工作量
基线1(过渡版本1)
基线2(过渡版本1)
……
2.参考文献:
【1】吴洁明,《软件工程—基础实践教程》,北京:
清华大学出版社,2007.11
【2】王少锋,《UML面向物件教程》,北京:
清华大学出版社,2004.2
【3】王珊,萨师煊,北京:
高等教育出版社,2006.5(2007重印)
3.需求
3.1所需的状态和方式
学生,教师和管理员根据各自实际身份登录教务管理系统,如果登录成功,则启动相应的管理系统,以及相应的权限,实现各项功能。
3.2需求概述
3.2.1目标
教务管理系统是为了提高现代高校教务管理的工作效率而设计的,使用三层B/S结构,让管理员,教师和学生能够方便的使用各自的功能,淘汰传统的管理模式。
1.本系统拟达成的目标:
(1)学生视点:
学生通过教务管理系统的网址,在输入初始的账户和密码之后,要选择“学生”选项,确定是以学生的身份登录系统,如果成功登录,将进入教务管理系统。
在该系统中,学生大多只是查询相关数据,能够拥有的权限仅限于选课和退课,以及修改密码。
在查询系统中,学生可以根据自己的需要,查询课程,查询成绩等。
在查询成绩的子系统中,可以根据不同的学年,查询相关成绩,以及将成绩排序。
在选课子系统中,在相关学年的课程中,选定需要的课程;如果不需要应经选定的课程,可以退订。
(2)教师视点
教师通过教务管理系统的网址,再输入初始的账户和密码之后,要选择“教师”选项,确定是以教师的身份登录系统,如果成功登录,将进入教务管理系统。
在该系统中,教师可以查询,修改自己的信息数据,查询学生的相关信息,以及输入所管理班级的相关成绩。
在教师查询和修改自己的已有信息,比如:
姓名,出生年月,政治面貌,联系电话,联系地址等等;查询学生的信息,如:
带领班级名称,班级人数,学生姓名,成绩等。
在打印系统中,教师打印自己的个人信息或是学生的成绩。
在成绩管理系统中,输入相关班级学生的所选课程的成绩。
(3)管理员视点:
管理员通过教务管理系统的网址,再输入初始的账户和密码之后,要选择“管理员”选项,确定是以管理员的身份登录系统,如果成功登录,将进入教务管理系统。
在该系统中,管理员的权限最高,可以根据实时信息,更新教务管理系统的数据库,比如:
学生和教师,以及自己的姓名,联系方式等。
2本系统的主要功能:
选课,退课,查询成绩,修改个人信息,维护系统数据,统计,排序,打印等
(1)学生通过学生管理系统的查询模块可以查询到自己的信息数据,比如:
成绩,选课情况等;
(2)教师可以也通过查询系统,查找到学生和自己的信息;
(3)学生可以通过选课系统,选择或取消课程;
(4)教师可以通过成绩管理系统,修改学生的成绩;
(5)管理员通过已有的教师和学生信息,更新数据库;
(6)教师和管理员可以通过打印系统,打印相关材料。
教务系统的高层次图
3.2.2运行环境
客户机:
Windows2000或者以上
1GHZ或更高主频的相容CPU
推荐最小内存为512MB。
(支持的最小内存为128MB;最多支持4GB内存。
)
至少有1GB可用磁盘空间的硬盘
服务器:
WindowsXPProfessional
服务器需要安装Tomcat服务器
1GHZ或更高主频的相容CPU
推荐最小内存为512MB。
(支持的最小内存为128MB;最多支持4GB内存。
)
至少有1GB可用磁盘空间的硬盘
3.2.3用户的特点
用户分别是管理员,教师和学生。
从使用系统来说,共同点是:
管理员,教师和学生都需要用户名和密码来登录。
区别是:
管理员是维护系统数据,拥有最高权限;教师查询选课信息,登记学生成绩和查询开课课程等,拥有部分权限;学生成绩查询,选课和退课,只拥有查询和选课权限。
(要充分考虑用户的专业背景、年龄等各种影响其使用待开发软件的因素,易用性是因人而异的)
学生用户多处在18-23岁年龄段,无论专业背景如何,基本能熟练掌握Windows系统、浏览器的各种操作。
管理员用户、教师用户的年龄跨度相对较大。
如果管理员或教师用户不是电子信息类专业背景且年龄偏大,那么对Windows系统、浏览器的基本操作相对生疏。
3.2.4关键点
关键功能:
各类信息的增加、查询、更新、删除
关键算法:
队列
关键技术:
JSP,SQL
3.2.5约束条件
(列出进行本系统开发工作的约束条件。
例如:
经费限制、开发期限和所采用的方法与技术,以及政治、社会、文化、法律等)
开发期限:
…
方法与技术:
JSP,SQL
在未经许可的情况下,向第三方提供相关个人信息,保证信息的安全性和私密性。
3.3需求规格
3.3.1软件系统总体功能/对象结构
(对软件系统总体功能/对象结构进行描述,包括结构图、流程图或对象图。
)
1教务系统结构图
以上是教务管理系统的结构图,由图可知整个系统分为选课、退课系统,查询系统,成绩管理系统,教师个人信息更新,数据库五大部分。
2教务系统类图
类名:
Person,Student,Teacher,Administrator,Schedule。
类的属性:
Student中有私有的name(学生姓名),StuNum(学号),class(班级);Schedule中有私有的course(课程),time(上课时间)。
类的方法(函数):
Person类中有成绩查询,成绩打印,成绩统计,成绩排序。
Student类中有选课和退课;Schedule中有opname(执行相应操作);
Administrator中有权限管理和维护系统数据。
Teacher中有查询选课学生,登记学生成绩,查询开课课程。
3教务系统顺序图
顺序图表明了对象之间发生交互的时间次序。
3.3.2描述约定
(
通常使用的约定描述(数学符号、度量单位等)。
以下绿色文字是个反例(不是范例),“描述约定”是“对描述方式的约定”,“描述”指的是“对CSCI能力的描述”。
什么是CSCI,在下文有解释。
比如,“描述系统反映时间的单位:
秒”。
)
描述约定不能像下面这样写
在无人为因素,或是其他客观情况影响的前提下,保证系统能够正常且稳定工作;当用户访问教务管理系统时,不会出现身份错误情况,如:
学生以自己的身份登录系统,却进入了教师或是管理员才能进入的界面,保证安全稳定性与私密性。
3.4CSCI能力需求
(什么是配置,什么是配置项
Ø“配置”是在技术文档中明确说明并最终组成软件产品的功能或物理属性。
Ø因此“配置”包括了即将受控的所有产品特性,其内容及相关文档,软件版本,变更文档,软件运行的支持数据,以及其他一切保证软件一致性的组成要素。
Ø相对与硬件类配置,软件产品的“配置”包括更多的内容并具有易变性。
Ø软件经常被划分为各类配置项(Configuraionitems,CIs),这类划分是进行软件配置管理的基础和前提,CIs是逻辑上组成软件系统的各组成部分。
比如一个软件产品包括几个程序模块,每个程序模块及其相关文档和支撑数据可能被命名为一个CI
)
(
3.4节应分条详细描述与CSCI每一能力相关联的需求。
“能力”被定义为与一个功能模块相关的需求。
可以用“功能”、“性能”、“主题”、“目标”或其他适合用来表示需求的词来替代“能力”。
)
3.4.1数据字典
数据字典中使用的标准符号
符号
名称
举例
=
+
[…,…]
[…|..]
{…}
{…}mn
(…)
“…”
定义为
与
或
或
重复
重复
可选
基本数据元素
x=…表示x由…组成
a+b表示a和b
[a,b]表示a或b
[a|b]表示a或b
{a}表示a重复0或多次
{a}38表示a重复3到8次
(a)表示a重复0或多次
“a”表示a是基本数据
教务管理系统的数据字典
元素编号名称类型说明
IP01学生信息输入处理输入姓名,学号,班级等
IP02学生信息查询处理查询成绩等
IP03修改学生信息处理修改姓名,学号,班级等
IP04学生选课处理处理学生选择课程
IP05学生退选处理学生退选已选课程
IP06教师查询选课学生处理供老师查看已选这门课程的学生名单
IP07教师登记学生成绩处理供老师登记学生考试成绩
IP08查询开课课程处理供老师查询已经开课的课程表
IP09维护系统数据处理系统管理员用来维护学生数据,教师数据,课程数据等
IP10用户权限管理处理系统管理员用来对系统用户权限限定
IP11学生成绩管理处理老师,系统管理员对学生成绩进行查询,统计,排序,打印等
IP12成绩管理处理教师可以修改授课班级学生的成绩;管理员可以修改所有学生的成绩
SS01学生信息数据存储学生信息录入,修改,删除,保存
SS02教师信息数据存储教师信息录入,修改,删除,保存
SS03课程信息数据存储选课课程名称,书籍名,授课老师,上课时间,地点
SS04管理员信息数据存储管理员信息录入,修改,删除,保存
SS05成绩信息数据存储录入学生所有考试成绩
SS06教师授课信息数据存储管理员输入教师的授课信息,如班级,课程等
字典条目:
学生信息=学号+姓名+性别+年龄+联系电话+联系地址
教师信息=教师号+姓名+性别+年龄+联系电话+联系地址
管理员信息=管理员号+姓名+性别+年龄+联系电话+联系地址
课程信息=选定课程号+课程名+授课老师,上课时间+地点
成绩信息=学号+成绩+课程号+课程名
教师授课情况=教师号+课程号+班级
3.4.2系统功能分解
主要功能分别是查询系统,选课系统,成绩管理系统,个人信息修改系统,数据库系统。
模块
子功能编号
功能名称
功能描述
选课、退课
Function1.1-学生选课
学生选课
学生登陆后,系统显示全部可选课程。
学生按培养计划的要求选修课程。
如果选修的课程不符合培养计划的要求,系统将提示。
只有学生选修的课程符合培养计划要求时才能完成选课。
Function1.2-学生退课
学生退课
学生对已选课程进行退课处理。
Function1.3-教师退选学生
教师退选学生
任课教师对已选课的学生做退课处理。
查询
Function2.1-学生查已选课
学生查已选课
学生查询已选课程,及课程时间表、地点、任课教师。
Function2.2-学生查成绩
学生查成绩
学生按学期查询个人成绩表,并且根据个人情况,对成绩进行排序。
如果某门课程还未登记成绩,那么在查询结果中给出相应标记。
Function2.3-教师查选课学生
教师查选课学生
(1)教师按课程名查询全体选课学生的姓名、学号、年纪、专业等信息。
(2)教师按(学生姓名或学号)+课程名查询某名学生有无选修记录。
Function2.4-教师打印
教师打印
教师指定专业、年级、班级、课程名后生成成绩单,并统计各分数段人数、百分比。
将成绩单及统计信息输出至打印机打印。
Function2.5-管理员打印
管理员打印
(1)管理员指定专业、年级、班级、课程名后生成成绩单,并统计各分数段人数、百分比。
将成绩单及统计信息输出至打印机打印。
(2)管理员指定(学生学号或姓名)+学期后,生成该学生在指定学期的成绩单并计算平均学分积,将成绩单及平均学分绩输出到打印机打印。
(3)管理员指定课程名+学期+若干个班级,计算指定课程各班的平均分,并按降序排序,输出到打印机打印。
(功能说明不能过于笼统,例如:
管理员在进入管理系统之后,为方便教学参考(同专业的班级之间的对比,向学生提供帮助等),可以使用打印功能,通过打印机输出)
成绩管理
Function3-教师录入成绩
教师录入成绩
教师录入成绩、修改成绩。
教师个人信息更新
Function4-教师个人信息更新
教师个人信息更行
教师根据需要更新个人信息。
数据库
Function5.1-录入教师信息
管理员录入教师信息
根据教师提供的个人信息,核对之后,输入系统数据库,方便管理。
Function5.2-录入学生信息
管理员录入学生信息
根据学生提供的个人信息,核对之后,输入系统数据库,方便管理
Funtion5.3-录入课程信息
管理员录入课程信息
管理员向系统内录入全校范围的课程信息。
其他说明,如果某个模块或子功能采用算法处理数据,那么应该这么写
FunctionX.X-XXX
数据处理(还可以更明确地说明具体是那种功能的数据处理)
输入:
输出:
处理过程:
描述输入经何种处理后转化为输出
3.4.3选课、退课模块
1.用例图
画该模块的用例图(课本p87)
2.活动图
用例图中的每个椭圆都代表一个用例,一个用例代表一个功能,针对每个功能画出活动图(课本p97),并针对每个活动图给出文字说明。
用例图、活动图、文字描述的具体写法见群共享文件里的“子模块功能描述模板.doc
”。
3.顺序图
如果子模块的时序模型比较复杂,那么画该模块的顺序图(课本p96)
3.4.4查询模块
1.用例图
画该模块的用例图(课本p87)
……
3.4.5成绩管理模块
1.用例图
画该模块的用例图(课本p87)
……
3.4.6教师个人信息更新模块
1.用例图
画该模块的用例图(课本p87)
……
3.4.7数据库模块
1.用例图
画该模块的用例图(课本p87)
……
3.5CSCI外部接口需求
(描述用户界面需求时不能套用“系统间接口需求模式”)
3.5.1用户界面
(描述用户界面需求时不能套用“系统间接口需求模式”)
主页模块学生通过学生接口登入系统
学生模块通过选课接口登入选课
学生模块通过退课接口登入退课
学生模块通过查询接口进行课程查询和分数查询
主页模块教师通过教师接口登入系统
教师模块通过选课接口登入选课
教师模块通过查询接口登入课程操作(查询,添加,修改,删除)和分数操作(查询,添加,修改,删除)
教师模块通过个人信息修改接口对自己的个人信息进行更新(修改联系电话,联系地址等)
主页模块管理员通过管理员接口登入系统
管理员模块通过管理员接口登入系统模块(拥有全部权限)
以下是部分初步设计的教务管理系统的UI截图:
3.5.2教务系统与XXX之间的接口
(描述接口需求可套用“系统间接口需求模式”,课本p127,上课时会讲)
……
描述接口需求不能这样描述
在设计系统的实现体时,会将需求分析出来的数据表作为参考,如学生表中的学号,密码是内部接口,它们作为进入系统的验证前提,需要给它们相应的函数名称,这样就可以实现相应的功能。
每一个相关数据库中的数据表的成员都是整个教务管理系统的内部接口,它们都是与外部接口存在一定联系的。
3.6CSCI内部接口需求
软件总会有内部接口的,要求同学们至少写一个内部接口的需求,仍然套用课本p127“系统间接口需求模式”,而不要写下面绿色的文字。
因为是需求分析阶段,软件的实现体还没有设计,只是根据功能的分配,设计了外部接口。
为下一阶段的设计提供参考。
3.6.1教务系统与数据库之间的内部接口
(描述接口需求可套用“系统间接口需求模式”,课本p127,上课时会讲)
……
3.7CSCI内部数据需求
(本条应指明对CSCI内部数据的需求,(若有)包括对CSCI中数据库和数据文件的需求。
如果所有有关内部数据的决策都留待设计时决定,则需在此说明这一事实。
如果要强加这种需求,则可考虑在本文档的3.5.x.c和3.5.x.d给出的一个主题列表。
)
3.7.1实体-关系图
参与系统的实体有:
管理员、教师、班级,班级号、课程、学生。
Ø管理员有以下属性:
管理员号,密码,姓名,年龄,联系电话,联系地址
Ø教师有以下属性:
教师号,密码,姓名,年龄,联系电话,联系地址
Ø课程有以下属性:
课程名称,课程号,学生号,教师号,班级号,成绩
Ø学生有以下属性:
姓名,密码,学号,年龄,联系电话,联系地址,班级
Ø班级有以下属性:
班级号,班级名
1)学生课程实体关系图
2)教师课程实体关系图
3)管理员管理实体关系图
4)课程班级关系联系
3.7.2数据表
Student(学生信息表):
主码
列名
数据类型
宽度
小数位
空否
取值范围
备注
Pk
Sno
char
5
N
学号
Sname
char
8
N
姓名
Spw
char
20
Y
密码
Ssex
char
2
Y
性别
Class
char
10
Y
班级
Sage
smallint
Y
不小于12
年龄
Stel
char
20
Y
电话
Sdept
char
15
Y
系名
Sadd
Char
20
Y
家庭地址
Teacher(教师信息表):
主码
列名
数据类型
宽度
小数位
空否
取值范围
备注
Pk
Tno
char
5
N
教师编号
Tname
char
8
N
姓名
Tpw
char
20
Y
密码
Tsex
char