1 引言
1.1 编写目的
选课系统需求分析说明书就是对该软件功能需求、性能需求、用户界面需求等得描述。
编写文档的目的在于:
- 详细、准确与全面得定义本选课系统的功能与用户需求。对要实现的软件功能做总体的描述,帮助用户判断所规定的软件就是否符合她们得要求或者怎样修改才符合她们得要求。
- 明确工程的任务目标,用户需求规定以及完成该项工程运行环境得规定。
- 提高开发效率。深刻了解该选课系统的需求,才能编写出用户所需得软件,减少时后重新设计、编码、测试的活动即再次工程的次数与工作量。
- 为成本计划与编制计划进度提供基础,本文档所描述的需求信息将作为该项目最终验收得标准与依据。
1.2 范围
1、 用户角色:
学生:具有选课、查看个人课程表、查看成绩等权限。
教师:具有课程管理、录入成绩、查看学生选课情况等权限。
管理员:具有最高权限,可以管理系统的所有功能,包括用户管理、课程管理、成绩管理等。
2、 功能模块:
课程管理:包括课程信息的录入、修改和删除,教室分配,课程时间安排等。
学生信息管理:包括学生个人信息的录入、修改和删除,学生选课情况的查看等。
教师信息管理:包括教师个人信息的录入、修改和删除,教师授课情况的查看等。
选课管理:学生选课、退课功能,选课冲突检测,选课结果通知等。
成绩管理:录入学生成绩,计算学生成绩,成绩查询功能等。
3、 用户权限:
学生:具有选课、查看课程表、查看成绩等权限。
教师:具有课程管理、成绩录入、学生信息查看等权限。
管理员:具有系统管理的所有权限,包括用户管理、课程管理、成绩管理等。
4、 数据存储和管理:
(1) 数据库存储学生、教师、课程等信息。
(2) 数据管理功能包括增加、删除、修改和查询学生、教师、课程信息。
(3) 数据备份和恢复功能,确保数据安全性和完整性。
5、 系统界面:
用户登录界面:提供用户身份验证功能,确保只有授权用户能够登录系统。
功能操作界面:根据用户角色不同,提供相应的功能操作界面,简洁明了,易于操作。
1.3 定义
教务处:对学生、教师、选课进行管理与统计,及时查看系统状态、维护并生成选课报表、排课报表,进行开设课程及排课等操作。所涉及得信息包括课程信息、教师信息与学生信息。
学生选课:学生可以自由得选择自己想上得课程,及课程教师与上课时间得一种操作
补选、退选:超过容量限制而未被保留的学生,或者因选课人数太少而取消课程的学生,需重新选课。
管理员:管理学生及教师得信息,可以就是系统维护者与教务处得管理人员
课程表:学生得上课时间与课程相对应所形成得二维表
2 项目概述
2.1 项目描述
学生选课系统旨在为学校提供一个便捷、高效的选课管理平台,使学生、教师和管理员能够轻松地进行课程管理、选课和成绩管理。系统将提供丰富的功能模块和用户权限管理,确保系统的安全性和数据完整性。
2.2 项目功能
图表 1 学生选课系统项目功能
2.3 用户特点
1、 管理员: 特点: 管理员是选课系统的管理者,负责整个系统的运行和维护,以及处理系统中的各种异常情况。 需求:
(1) 管理课程信息,包括添加、编辑、删除课程信息。
(2) 处理选课过程中的异常情况,如课程容量超限、时间冲突等。
(3) 生成选课报表和统计数据,帮助学校管理和决策。
2、 教师: 特点: 教师是选课系统的课程提供者之一,他们通过系统发布自己的课程信息,并与学生进行课程相关的沟通和管理。 需求:
(1) 发布课程信息,包括课程名称、简介、上课时间、地点等。
(2) 查看选课情况,了解学生的选课情况和人数。
(3) 与学生进行选课相关的沟通,如解答问题、提供课程建议等。
3、 学生: 特点: 学生是选课系统的主要用户之一,他们通过系统来选择适合自己的课程,以满足学习需求和个人兴趣。 需求:
(1) 查看可选课程列表和课程详情,包括课程介绍、授课教师、上课时间等信息
(2) 进行选课操作,包括添加、删除选课。
(3) 查看已选课程和课程时间表。
(4) 接收选课相关通知。
2.4 一般约束
- 系统软硬件的约束:主服务器运行Windows Server 或Linux,客户端为个人电脑,一般要求浏览器IE6、0版本以上。
- 系统稳定性的约束:系统能够长时间稳定运行, 平均故障间隔时间不少于10000个小时。
- 数据安全性的约束:主服务器端运行大型数据库,具有较强得数据处理能力与容错能力。特别是安全保护能力,防止信息被窃取与篡改。
- 对系统细节的约束:比如学生每学期选课学分不能低于15学分等。
3 具体需求
3.1 功能需求
3.1.1 对象模型
图表 2 学生选课系统类图
3.1.2 功能模型——用例模型
图表 3 学生选课管理系统
图表 4 课程管理子系统
图表 5 学生信息管理子系统
图表 6 教师信息管理子系统
图表 7 选课管理子系统
图表 8 成绩管理子系统
3.1.3 动态模型——活动图
图表 9 活动图
3.2 性能需求
3.2.1 时间特性
实时性: 系统需要能够及时响应用户的操作,包括选课、退课、成绩查询等,确保用户在进行操作时能够立即看到最新的信息。
响应时间: 系统应该具有快速响应用户请求的能力,包括页面加载、数据查询等操作,以提供良好的用户体验。
并发处理能力: 系统需要能够同时处理多个用户的请求,特别是在选课高峰期或成绩发布时,系统应该具有良好的并发处理能力,以避免因大量用户同时访问而导致系统性能下降或崩溃。
数据处理速度: 系统需要能够高效地处理大量的选课信息、成绩数据等,包括录入学生成绩、计算总成绩以及更新课程信息等操作,以确保系统运行的流畅性和效率性。
稳定性和可靠性: 系统应该具有稳定性和可靠性,能够长时间稳定运行而不出现故障或数据丢失的情况,保障用户正常使用。
3.2.2 故障处理
异常情况处理: 系统应该能够及时检测和处理各种异常情况,例如数据库连接中断、网络故障、用户操作错误等。当发生异常情况时,系统应该能够给出清晰的错误提示,并采取适当的措施进行处理,例如重新连接数据库、恢复系统状态等。
容错性: 系统应该具有一定的容错能力,能够在部分组件或功能出现故障时继续提供基本的服务。例如,即使某个课程信息页面无法加载,用户仍然可以进行其他操作,如选课或查询成绩。
自动恢复: 系统应该具有自动恢复功能,能够在出现故障后自动尝试修复问题并恢复正常运行。例如,当数据库出现连接错误时,系统可以自动尝试重新连接,而无需用户手动干预。
日志记录和监控: 系统应该能够记录各种故障事件和异常情况,并提供监控和分析工具,帮助管理员及时发现并解决潜在的问题。通过记录详细的日志信息,可以帮助开发人员快速定位和修复故障。
故障转移和备份: 系统应该具有故障转移和备份机制,能够在主要组件或功能出现故障时自动切换到备用系统或备用数据源,以保证系统的可用性和稳定性。
3.3 其他需求
3.3.1 数据库
1、选用数据库MySQL
2、数据库的容量至少满足14000多名学生的信息及相关课程信息
3、对数据库的需求:要求新系统有稳定、完整的数据库系统支持。同时要具有灵活的数据库管理能力,包括查询、更新、修改、统计等功能。数据库的备份也需要方便更新与维护。
4、不同的用户具有不同的能力, 在选课阶段学生可以选课、退课。在非选课阶段,只有管理员才可以对数据库进行相关的一系列更新操作。
3.3.2 操作
1、用户操作
(1) 学生:系统的登录、课程表的查询、选课与退课等
(2) 教师:选课系统的登录、课程表得查询、学生成绩录入与修改等
(3) 管理员:对学生选课结果的查询、对教师信息的管理、对学生信息的管理、对课余量得修改及对学生选课功能的开放与关闭操作
2、操作周期:
选课阶段为交互作用操作, 周期为两周, 其余时间无人操作。
3、管理员可以进行一些后援与恢复操作。
3.3.3 界面需求
1、页面内容:主题突出,栏目、菜单布置合理,内容丰富,文字准确,行文格式统一规范。
2、导航结构:具有明确得导航指示,便于理解,便于用户使用。
3、艺术风格:界面、版面形象清新悦目, 布局合理,字号大小适宜,字体选择合适,动静效果好,色彩与谐,与主题相吻合。