目录
一、实验目的
1)完成学生选课管理系统整个需求分析工作;
2)掌握UML建模工具;
3)掌握系统的静态模型、功能模型、动态模型的构建方法;
4)掌握需求规格说明书的撰写。
二、实验要求
根据所要开发的软件系统,利用面向对象方法完成该系统的需求分析,分别通过建立类图和对象图完成系统的静态模型;通过建立用例图、用例描述完成系统的功能模型;通过建立状态图或活动图完成系统的动态模型。最后完成需求规格说明书的撰写。
三、需求规格说明书
1. 序
1.1 目的
编写本需求规格说明书的目的旨在清晰地定义学生选课系统的功能和性能需求,明确系统的作用范围和面向目标,并且与用户沟通,确保需求的一致性和完整性。通过全面的分析整个系统,从各个方面综合分析整个系统的需求,并把需求细化为一些模块的具体需求,集中地预测研发中可能出现的问题从而尽量避免。同时本文档在开发前期面向用户,让用户根据自身的需求向开发人员提出改进意见,使系统的需求分析更为全面。
1.2 项目背景
学生选课系统是是为了更好地管理选课信息而设计的,是一个学校不可缺少的部分。学生选课系统主要面向对象为学生、老师及管理员。学生可以通过该系统来进行增加或删除课程,老师可以通过该系统来录入课程信息,管理员可以通过该系统来安排课程。该系统方便学生和老师可以查询课程安排信息并进行及时的调整,学生选课系统的应用将使选课管理工作规范化,系统化,程序化,避免选课管理的随意性,提高信息处理的速度和准确性,能够及时,准确,有效的查询和修改选课情况,提高工作的效率。
1.3 定义
学生:系统的普通用户,具有选课和查看课程表的权限。
老师:系统的普通用户,具有录入课程信息和查看课程表的权限。
管理员:系统的特权用户,具有安排课程表和管理用户信息的权限。
1.4 参考资料
《软件工程导论(第6版)》 清华大学出版社 张海藩 牟永敏 编著
2. 软件产品的一般性描述
2.1 运行环境与资源
2.1.1 硬件环境与资源
CPU:双核;内存2G以上,硬盘320G
2.1.2 软件环境与资源
操作系统:Windows11
网络环境:移动网络或WIFI
2.2 软件产品的功能
2.2.1登录模块功能
用户输入账号密码,系统识别账号密码的正确性。正确则进入系统,错误则允许用户重新输入。否则用户可以找回密码,输入账号及新密码,可以创建更新账号。
2.2.2选课模块功能
学生进入选课系统,验证学生账号的有效性,为真则可以进行选课。学生浏览本学期预开课程的信息,选择自己要上的课程并确认。如果选择的课程与已有课程无时间冲突,则选择成功。如所选课程在上课时间上产生冲突,则选课确认失败,提示重选。学生退出系统,系统给出选课表。、
2.2.3录课模块功能
老师进入选课系统,验证老师账号的有效性,为真则可以进行录课。老师录入本学期开设的课程信息。可以增加课程信息,也可以删除课程信息。最后退出系统,生成排课表。
2.2.4排课模块功能
管理员进入选课系统,查看各学生的选课信息,并对学生选课进行审核。若审核通过则选课表不变,若不符合学分规则的则审核不通过,选课表中删除该课程。最后用最新的选课表来生成课程表,供学生及老师查看。
2.3 用户特征
2.3.1学生
学生角色主要是针对在校具有选课资格的大学生而设定,学生登陆并取得合法权限后,就可以使用学生模块,它主要包括:查看课程安排,选课,退课,查看课表4项子功能。
2.3.2老师
老师角色主要是针对在校具有管理课程资格的教师而设定的。教师登录成功后进入教师界面,教师的功能包括录入课程信息,修改课程信息。
2.2.3管理员
管理员是指系统功能的主要使用者,主要功能包括查看用户信息,管理用户信息,管理课程信息,排课生成课程表的功能。
2.4 限制与约束
运行环境:Windows11
处理器:Intel Pentiumlll
CPU:双核
内存:2G以上
硬盘:40G及以上
网络协议: TCP/IP
3. 功能行为需求
3.1 引言
功能行为需求章节旨在详细描述学生选课系统的各项功能性需求。本章将分别通过功能模型,动态模型及静态模型来描述系统的需求,也就是通过用例图、用例描述、活动图及类图和对象图来具体说明。以此详细描述学生选课系统的各项功能,包括学生选课功能、老师录入课程信息功能、管理员安排课程表功能等。
3.2功能模型--用例模型
3.2.1登录模块用例图
图3.2-1 登录模块用例图
3.2.2选课模块用例图
图3.2-2选课模块用例图
3.2.3录课模块用例图
图3.2-3 录课模块用例图
3.2.4排课模块用例图
图3.2-4 排课模块用例图
3.2.5用例描述
(1)登录模块用例描述
用例名称:登录
执行者:用户
目的:完成一次登录系统的完整过程
类型:主要的、基本的
级别:一级
过程描述:
- 用户输入账号密码
- 系统识别账号密码的正确性
- 用户进入系统
异常事件流处理:
- 密码输入错误,允许用户重新输入
(2)选课模块用例描述
用例名称:选课
执行者:学生
目的:完成一次选择课程的完整过程
类型:主要的、基本的
级别:一级
过程描述:
- 学生进入选课系统
- 浏览本学期预开课程的信息
- 选择自己要上的课程并确认
- 退出系统,系统给出选课表
异常事件流处理:
1. 选课确认失败,所选课程在上课时间上产生冲突,提示重选
(3)录课模块用例描述
用例名称:录课
执行者:老师
目的:完成一次录入课程信息的完整过程
类型:主要的、基本的
级别:一级
过程描述:
- 老师进入选课系统
- 录入本学期开设的课程信息
- 退出系统,生成排课表
(4)排课模块用例描述
用例名称:排课
执行者:管理员
目的:完成一次安排课程表的完整过程
类型:主要的、基本的
级别:一级
过程描述:
- 管理员进入选课系统
- 查看各学生的选课信息
- 对学生选课进行审核
- 退出系统,生成课程表
异常事件流处理:
1. 对学生选课表进行审核,不符合学分规则的退回,删除并更新课程表中该课程
3.3 动态模型--活动图
3.3.1选课活动图
图3.3-1 选课活动图
3.3.2录课活动图
图3.3-2 录课活动图
3.3.3排课活动图
图3.3-3 排课活动图
3.4 静态模型--对象类模型
3.4.1 类图
图3.4-1 类图
3.4.2对象图
1)学生
图3.4-2 学生对象图
2)老师
图3.4-3 老师对象图
3)管理员
图3.4-4 管理员对象图
4.非功能性需求
4.1 安全性
- 所有用户登录均需要用户名和密码
- 对用户的访问和操作进行记录,保存在日志中并定时更新
- 对用户的访问权限进行限制,不允许用户访问无关信息
- 保证模块功能的单一性
- 对用户的个人信息进行保密处理,不会对外泄露,不会被其他用户访问
4.2 友好性
- 页面内容:主题突出,栏目菜单布局合理,内容丰富,图文并茂,格式统一
- 导航结构:具有明确的导航指示,便于用户的理解和使用
- 艺术风格:界面、版式清晰悦目,布局合理,字号大小适宜,与主题吻合。
4.3 可维护性
1)系统在设计时保证模块功能的清晰性、灵活性和独立性,以便客户提出新的需求时及时进行系统的更新及维护
2)易于故障的排除和日常操作管理方便,系统在发现错误时及时作出提示,并进行错误处理,系统能够自行进行修复。
5. 其他需求
5.1 系统性能
系统应具有良好的性能表现,能够在高并发和大数据量情况下保持稳定运行。
5.2 数据管理
系统应具有完善的数据管理功能,包括数据备份、恢复和归档等功能,以确保数据的安全性和完整性。
5.3 日志记录
系统应具有日志记录功能,能够记录用户操作和系统事件,以便于系统管理和故障排查。
5.4 用户界面需求
1)界面设计应简洁直观,符合用户的操作习惯。
2)所有的用户输入应进行有效性验证,以确保数据的完整性和准确性。
5.5 可扩展性需求
1)系统应设计为可水平和垂直扩展,以应对未来用户数量和数据量的增长。
2)新功能的添加应该是模块化的,不影响系统的整体稳定性和性能。