高校教务系统需求文档

简介: 高校教务系统需求文档

高校教务系统需求文档


管理员可以对学生的学生,班级,课程,及教师的基本信息,班级开课,考试成绩进行管理和维护


教师可以修改自己的部分个人信息,查看担任的课程,教受的学生,录入学生的成绩


学生可以修改自己部分的个人信息,查看看个人信息,查看本人成绩


学生


个人信息模块

成绩模块


教师


个人信息模块


查看学生信息


录入学生成绩


管理员


管理学生信息

管理教师信息

管理班级信息

管理课程信息

管理成绩信息

学生表:学号,姓名,密码,性别,出生日期,电话,入学分数,班级号,学分, 家庭地址


image.png


课程表 :课程号,课程名,学分,学时


image.png


学生课程表:学号,课程号,课程名,成绩


image.png


班级表:班级号,班级名称


image.png


教师表:教师号,姓名,密码,性别,出生日期, 电话,所在院系,是否为管理员


image.png


开课信息表:教师号,课程号,班级号,所在院系


image.png


学生


登录:学号 密码,(学生没有注册的功能)


查看个人信息,修改密码和手机号(其余的个人信息,只有管理员才可以修改),修改条件,需要根据原手机号进行修改,修改可以写成验证码的形式,或者是简单的输入手机号验证,只有验证通过了才可以进行修改密码


查看成绩:分课程查看

根据学生的stu_id从学生课程表里面差查成绩。根据不同的课程course_id进行分类,学生只能看自己所学的成绩


教师


登录:教师编号和密码


注册:编号根据学院和注册的顺序自动生成,注册成功以后返回生成的教师编号(在注册过程中,教师编号不是自己填的,是注册成功以后后端生成并返回的)


查看个人信息


查看查看担任的课程及学生名单(这个的跨表查询比较多)


通过班级查看:根据开课信息表,教师teacher_id和course_id查询,所有教授的班级,然后通过学生表class_id 查询在班级内的学生,这样就得到了 老师担任的课程以及学生名单

直接通过课程id,根据课程信息表,教师teacher_id查询,得到该教师担任的课程号,然后根据得到的课程号分别通过学生课程表查询到选择本课程的学生

录入学生成绩:录入格式,学号,课程号,课程名,成绩(学生课程表),如果成绩及格,同时也要修改学生表里面的学分(加上本课程的学分)

录入的学生一定是选自己课程的学生,一定是存在的学生(简单来说就是从学生课程表里面查询到选自己课的学生,然后修改成绩这一属性)


管理员


超级管理员:直接写在代码里面,可以用来添加管理员,添加的管理员只能从已注册的教师账户里面选(管理员也属于教师)


登录:和教师登录一样,在登录过程中判断是否是管理员,如果是管理员进入管理员界面,是用户进入用户界面


管理学生信息:录入学生信息,尽量能够实现批量录入(从文件中录入信息),学分默认为 0,密码初始化统一为学号后6位,查看和修改学生的信息,删除学生

在录入学生的信息时,所分配的班级一定是在班级表内存在的(管理员需要先新建班级,然后再录入学生的成绩)


新增班级:创建新的班级(新增班级表里面的内容)


管理课程信息:新增课程,课程号(系统自动生成)课程名,课程的学分,学时


查询课程


修改课程


删除课程,删除课程的同时,需要将学生信息表和开课信息表中的相关数据删除


管理教师信息:


给老师分配担任的科目,担任的班级。(所分配的一定是老师存在,课程存在,班级存在,需要从三个表中查数据)同一门课可以有多个班级,联想自己大学中的课程(暂时不考虑选课,共选课)需要修改我增添数据的表是开课信息表,将分配的结果存进开课信息表。另外操作的表是学生课程表,根据其他相关表在学生课程表里面添加新的内容(这些操作都是后端根据分配的课程完成的在这个阶段和前端没有关系)


修改老师的个人信息,调整老师所在的院系(院系暂时不考虑也行)


管理成绩信息:


分班级查看:

分课程查看:

例;查看数据211班,python课程的成绩

首先需要查询出来所有数据211班的学生(学生表),然后根据再查询这些学生python课程的成绩(学生课程表)

例2查询python课程所有班级的成绩

直接根据学生课程表进行查询就行,查询课程名为python

统计并分析成绩:班级的平均分,最高分,及格率等,可以理解为是对成绩的数据分析(在查询成绩的过程同时就可以操作)


相关文章
|
前端开发 数据库 微服务
JavaWeb - 我们的开发规范(VO、DTO、BO、PO、DO、POJO)
JavaWeb - 我们的开发规范(VO、DTO、BO、PO、DO、POJO)
2109 0
JavaWeb - 我们的开发规范(VO、DTO、BO、PO、DO、POJO)
|
存储 JSON 网络协议
阿里巴巴FastJSON使用实例
阿里巴巴FastJSON使用实例
1228 0
|
机器学习/深度学习 编解码 算法
yolo原理系列——yolov1--yolov5详细解释
yolo原理系列——yolov1--yolov5详细解释
1704 0
yolo原理系列——yolov1--yolov5详细解释
|
10月前
|
敏捷开发 监控 数据可视化
干货:18种项目管理可视化图表是什么?怎么用?
项目管理的核心之一是高效的沟通和信息传递。
605 0
干货:18种项目管理可视化图表是什么?怎么用?
|
缓存 Ubuntu Shell
【虚拟机】 VMware虚拟机占用空间过大解决
【虚拟机】 VMware虚拟机占用空间过大解决
638 1
Invalid bound statement (not found)错误【已解决】
Invalid bound statement (not found)错误【已解决】
1893 1
|
Java Linux
Centos7 部署 Springboot步骤,小白详细教程,全图
Centos7 部署 Springboot步骤,小白详细教程,全图
1025 0
Centos7 部署 Springboot步骤,小白详细教程,全图
|
弹性计算
阿里云服务器采用AMD CPU处理器ECS实例规格大全
阿里云有AMD服务器吗?有的,阿里云百科分享阿里云服务器ECS实例采用AMD处理器的规格大全
761 0
阿里云服务器采用AMD CPU处理器ECS实例规格大全
|
存储 SQL 网络协议
RHCA回忆录---开篇:RH358
RHCA回忆录---开篇:RH358
888 0
RHCA回忆录---开篇:RH358
|
搜索推荐 云栖大会 开发者
人人都是开发者,让数字公益更简单
以技术助力公益,让数字公益更简单。
443 0