| 软件工程 | 计科21级12班-广东工业大学计算机学院 |
|---|---|
| 这个作业要求在哪里 | 团队作业2-《需求规格说明书》 |
| 这个作业的目标 | 团队项目:通过需求分析形成需求规格说明书,熟悉团队协作方式 |
团队GitHub地址:传送门
一、需求规格说明书
1. 引言
1.1 目的
为明确软件需求、规划项目、确认进度、组织软件开发并测试而撰写的本文档。同时分析项目总体需求,可以作为软甲开发工作的基础和依据以及确认测试和验收的依据
1.2项目
本次待开发的软件为学生签到考勤系统,开发团队为【我知道你很急但你先别急】
2. 项目概述
2.1 产品背景分析
随着高校校园信息化的逐步完善,有效地借助网络、数据库等技术提高工作和管理效率。高校中出现了如教务管理系统,对全校师生的学习、管理、办公带来了便利。因此学生考勤管理系统能进一步加强高校学风建设,维护正常的教学秩序,给学生创造一个优良的学习环境。目前高校学生上课考勤管理都是以任课老师上课点名,记录学生上课情况,对于请假的方式,需要通过递交请假申请等待辅导员批准并开请假条方能生效。这种模式在目前高校管理中暴露了不可避免的弊端:
1、学生请假不方便;
2、学生请假对任课老师不透明;
3、学生难以清楚自己的出勤率
4、老师对本班学生整个学期的上课出勤情况不易清楚掌握;
5、院系领导、学校领导不容易把握学生上课的出勤情况。
因此一个好的学生考勤管理系统在一定程度上可以解决这些弊端,本系统主要针对目前高校学生在线请假以及学生上课出勤管理而设计的信息系统。本系统涉及到高校四大类用户:学生、老师、辅导员、系统管理员。
2.2 面相用户需求分析
2.2.1 学生用户需求分析
主要需求:在线请假、在线申请假条以及查看在校期间所有的上课出勤信息。
在线请假需求:学生可以在线上申请某节课或者某个时间段的假条。
查看出勤信息需求:学生可以查看在校期间所有学期上课出勤的详细信息,如:查看“软件工程导论”这门课程在整个学期个人的出勤情况。
其它需求:查看本人的基本信息,如本人的所属的院系、年级、专业、班级、学号、姓名、性别等,以及修改个人用户密码。
2.2.2 老师用户需求描述
主要需求:管理所教班级学生的上课出勤信息以及查看所教班级学生的上课出勤信息。
管理学生上课出勤需求:在考勤时间段,记录学生考勤信息,再根据学生请假信息,生成学生出勤名单的最终结果,或者手动输入考勤信息。
查看学生出勤信息需求:查看所教班级学生整个学期出勤情况。
其它需求:本人基本信息以及修改个人用户密码。
2.2.3 辅导员用户需求描述
主要需求:审批本班学生的在线请假申请以及查看本班学生本学期所有课程的上课出勤信息。
审批学生请假需求:本班学生在线提交请假申请后,辅导员员收到提醒处理申请的信息,辅导员进行学生请假审批。
查看学生上课出勤信息需求:查看所带班级学生整个学期出勤情况。
其它需求:查看本班学生的基本信息、修改个人用户密码等。
2.2.4 系统管理员用户需求
系统管理员有系统的最高权限,负责系统所需所有数据的动态同步更新以及维护,根据系统针对各用户的设计,基本功能需求如下:
1、管理学校各院系、年级、专业、班级的添加、删除、修改等。
2、管理每个学期每个班级的课程安排及指定辅导员和任课老师。
3、管理系统所有用户。
4、管理系统的请假、考勤信息。
2.3 系统基本功能描述
根据面相用户需求分析,将系统划分为三大功能模块:请假系统、考勤系统、后台管理系统。
2.4 总体设计

2.5 开发环境
1.开发工具:
2.开发语言:
3.技术需求:
2.6 预期的用户数量
2.7 系统的真实性、可用性 以及价值所在
| 真实性 | 本系统贴近校园生活,并且技术上可行 |
|---|---|
| 可用性 | 对学生而言,在本系统上进行请假更加便捷;对教师而言,对课堂进行考勤更加快捷方便,审批请假申请更加快捷,能更清楚掌握学生的课堂出勤情况 |
| 价值所在 | 考勤是一个比较繁琐的工作,课堂每天都要对学生的出勤状态进行记录,传统的点名签到存在着效率低下,不宜统计,易出错等弊端,建立一个高效率的、规范的考勤管理系统,能够大大提高管理效率 |
二、团队计划
1. 原时间计划
| 第9周 | 1.团队组队、团队博客 |
|---|---|
| 2.团队介绍、成员展示、角色分配、选题确定 | |
| 3.制定团队计划安排,团队贡献分的规定 | |
| 第10周 | 1.需求规格说明书 |
| 2.原型设计,队员估计任务难度并学习必要的技术 | |
| 3.编码规范完成、平台环境搭建完成、初步架构搭建 | |
| 第11周 | 1.原型改进(给目标用户展现原型,并进一步理解需求) |
| 2.架构设计,WBS, 团队成员估计各自任务所需时间 | |
| 3.测试计划 | |
| 第12、13周 | 1. 团队项目Alpha任务分配计划 |
| 2. 连续7天的Alpha敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交 | |
| 第14周 | 1.用户反馈+测试计划改进 |
| 2. 团队Alpha阶段个人总结 | |
| 3. 团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理 | |
| 第15周 | 1. 团队项目Alpha博客:事后分析 |
2. 校正后的时间安排
根据本周任务完成情况和团队自身情况校正时间安排:
| 第9周 | 1.团队组队、团队博客 |
|---|---|
| 2.团队介绍、成员展示、角色分配、选题确定 | |
| 3.制定团队计划安排,团队贡献分的规定 | |
| 第10周 | 1.需求规格说明书 |
| 2.原型设计,队员估计任务难度并学习必要的技术 | |
| 第11周 | 1.编码规范完成、平台环境搭建完成、初步架构搭建 |
| 2.原型改进(给目标用户展现原型,并进一步理解需求) | |
| 3.架构设计,WBS, 团队成员估计各自任务所需时间 | |
| 4.测试计划 | |
| 第12、13周 | 1. 团队项目Alpha任务分配计划 |
| 2. 连续7天的Alpha敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交 | |
| 第14周 | 1.用户反馈+测试计划改进 |
| 2. 团队Alpha阶段个人总结 | |
| 3. 团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理 | |
| 第15周 | 1. 团队项目Alpha博客:事后分析 |