一、需求分析
开发意义: 随着信息技术不断向深入发展,越来越多的学校开始着手信息化建设。其中学生选课、成绩信息化管理就是其中重要的一块内容。学生选课与成绩信息规模大、项目条数多、信息量庞大,传统的人工管理方式显然已经无法满足要求,需要借助计算机来进行现代化信息管理,从而提高管理的准确性与高效性。可行性: 传统人工管理成绩存在诸多弊病,比如准确性低、效率低等。计算机具有存储快、查找便利、准确性高的特点,能非常好的解决人工管理的弊病。应用环境:
Web服务器:tomcat8.5; 编程工具Eclipse Java 2019-09; 数据库:SQL sever 2017; 技术路线: jsp+servlet+javabean;
1.1系统功能需求
系统功能框架介绍,处理模块描述。
查询教师名单; 添加教师信息; 修改教师信息; 删除教师信息; 查询学生名单; 添加学生信息; 修改学生信息; 删除学生信息; 查询课程信息; 添加课程信息; 修改课程信息; 删除课程信息; 修改登录密码;
查看个人信息; 查看任课信息; 按照课程表信息开设课程; 取消个人已开课的课程; 按行政班级查看学生均绩及排名; 按任课课程查询学生单门成绩及排名; 按学年查询个人教授课程的平均成绩; 录入学生成绩, 自动更新该学生已修总学分; 修改登录密码;
查看个人信息; 查看本人课程; 选课与退选; 按学年查询考试成绩; 修改登录密码;
1.2 其他性能需求
分管理员、教师、学生不同身份登录,并给予不同的权限,提高系统安全性; 使用前端验证保证用户的输入正确。 创建触发器及存储过程,保证完整性。 充分考虑系统报错情况,尽量防止系统崩溃。
二、概念结构设计
2.1实体关系分析
开设班级,每个班级包含若干学生; 课程由教师开设; 同一门课可能有多个教师开课,一个教师在一学期可能开多门课程; 需要考虑不同学年,并以学年制管理学籍; 不考虑按照班级直接开课的情况,即所有课程均由学生自由选择; 一个学生只能选择某位老师的开的某个课程,即学生不能同时选择同一门两个不同老师开的课程; 不存在两个及以上老师联合开课的情况,即不存在两个及以上教师负责同一教学班的情况。
2.2 E-R图
基于以上分析可得以下E-R 图:
三、逻辑结构设计
3.1关系模式设计
将E-R图转换为以下关系模式:(加粗代表主键,斜体内容表示外键)
班级(班级编号 , 班级名称) 学生(学号 , 姓名, 性别, 年龄, 生源所在地, 已修学分总数, 登录密码, 班级编号 ) 课程(课程编号 , 课程名称, 学时, 考试或考查, 学分) 教师(教师编号 , 姓名, 性别, 年龄, 职称, 电话, 登录密码) 开课情况(开课编号 ,课程编号 , 任课教师编号 ,开课学年, 开课学期,学号 ,成绩) 选课情况(开课编号 ,学号 ,成绩)
3.2数据类型定义
对关系模式中的属性定义类型、长度和约束:
班级
数据项名 数据类型 长度 完整性约束 备注 班级编号 nvarchar 4 主键,唯一,非空 班级名称 nvarchar 20 非空
学生
数据项名 数据类型 长度 完整性约束 备注 学号 nvarchar 12 主键,唯一,非空 姓名 nvarchar 5 非空 性别 nvarchar 1 非空 年龄 int 4 非空 生源所在地 nvarchar 20 非空 已修学分总数 float 4 登录密码 nvarchar 20 非空 班级编号 nvarchar 4 外键,非空
课程
数据项名 数据类型 长度 完整性约束 备注 课程编号 nvarchar 5 主键,唯一,非空 课程名称 nvarchar 20 非空 学时 int 4 非空 考试或考查 bit 1 非空 学分 float 4 非空
教师
数据项名 数据类型 长度 完整性约束 备注 教师编号 nvarchar 5 主键,唯一,非空 姓名 nvarchar 20 非空 性别 nvarchar 1 非空 年龄 int 4 非空 职称 nvarchar 10 非空 电话 nvarchar 20 非空 登录密码 nvarchar 20 非空
开课选课情况
数据项名 数据类型 长度 完整性约束 备注 开课编号 nvarchar 15 主键,唯一,非空 课程编号 nvarchar 5 外键,非空 任课教师编号 nvarchar 5 外键,非空 开课学年 nvarchar 4 非空 开课学期 bit 1 非空
选课情况
数据项名 数据类型 长度 完整性约束 备注 开课编号 nvarchar 15 联合主键,也均为外键 学号 nvarchar 12 成绩 int 4
♻️ 资源
大小: 3.02MB ➡️ 资源下载:https://download.csdn.net/download/s1t16/87248998