欢迎来到 Papicatch的博客
文章目录
🍉报告目的
🍉总体设计
🍈 模块处理逻辑
🍉数据库设计
🍈总览表
🍈表设计
🍍管理员信息表
🍍课程基本信息表
🍍课程扩展信息表
🍍专业信息表
🍍页面主题表
🍍学生信息表
🍍学生-课程关联表
🍍教师信息表
🍍教师-课程关联表
🍍排课时间表
🍍文件信息表
🍍周课程表信息表
🍉接口设计
🍈 外部接口
🍍 登录界面
🍍管理员首页
🍍 教师首页
🍍 学生首页
🍍课程表
🍍成绩查询界面
🍍成绩统计界面
🍍课程管理
🍍成绩管理
🍍用户管理
🍉报告目的
目的是对学生成绩管理系统进行详细设计说明,以便用户及项目开发人员了解产品详细的设计与实现,为开发人员提供开发参考书。以下叙述将结合文字描述、伪代码,图表等来描述学生成绩管理系统的详细设计和相关的模块描述。本报告的预期读者有客户、项目经理、开发人员以及跟该项目相关的其他人员。
🍉总体设计
🍈 模块处理逻辑
下图为用户登录系统的程序流程图,选择登录,已经存在系统的管理员、教师或者学生可以直接进行登录,登录之后进入主页面。
用户登录系统程序流程图
下图为查询课程信息的程序流程图,该模块首先进入等待用户输入搜索信息状态。如果用户已经输入则获取用户输入并根据输入的搜索关键字在课程信息表中匹配课程信息,最后退出。如果用户未输入则模块继续处于等待用户输入搜索信息状态。
查询课程信息程序流程图
下图为查询用户信息的程序流程图,该模块首先进入等待用户输入搜索信息状态。如果用户已经输入则获取用户输入并根据输入的搜索关键字在课程信息表中匹配学生用户、教师用户、管理员用户的信息,最后退出。如果用户未输入则模块继续处于等待用户输入搜索信息状态。
查询用户信息程序流程图
下图为录入课程表程序流程图,管理员具有课程表编辑和排课的权限,登录系统后,选择对应的学年和学期条件,系统回显课程表信息,管理员可以选中对应的课程去排课,未选中课程则对应课程表位置留空,确认保存,则可以生成最终课程表。
录入课程表(排课)程序流程图
🍉数据库设计
🍈总览表
🍈表设计
🍍管理员信息表
作用:存储管理员的基本信息,包括登录所需的用户名和密码,以及管理员的联系信息等。
管理员信息表
数据名称 | 数据类型 | 数据描述 |
Id | Int | 管理员id |
Username | Varchar | 用户名 |
Password | Varchar | 密码 |
Real_name | Varchar | 姓名 |
Level | Tinyint | 级别 |
School | Varchar | 所属学校 |
| Varchar | 邮箱 |
Phone | Varchar | 联系电话 |
Sex | Tinyint | 性别 |
Create_time | timestamp | 创建时间 |
🍍课程基本信息表
作用: 存储课程的基本信息,包括课程名称、学分、分数、课时、学年、学期、课程类型和专业等。
课程基本信息表
数据名称 | 数据类型 | 数据描述 |
Id | Varchar | 课程基本信息id |
Name | Varchar | 课程名称 |
Credits | Decimal | 学分 |
Score | Int | 分数 |
Number | Int | 课时 |
Year | Int | 学年 |
Term | Tinyint | 学期 |
Type | Tinyint | 类型。1必修课 2选修课 |
Profession | Varchar | 专业 |
Create_time | Timestamp | 创建时间 |
🍍课程扩展信息表
作用:存储课程的扩展信息,包括课程的时间安排、教室信息等。
课程扩展信息表
数据名称 | 数据类型 | 数据描述 |
Id | Varchar | 课程扩展信息id |
Course_id | Varchar | 课程基本信息id |
Start | Int | 开始时间 |
End | Int | 结束时间 |
Room | Varchar | 教室信息 |
Profession | Varchar | 专业 |
🍍专业信息表
作用:存储各个专业的信息。
专业信息表
数据名称 | 数据类型 | 数据描述 |
Id | Varchar | 专业信息id |
Name | Varchar | 专业名称 |
🍍页面主题表
作用:存储页面主题信息,用于界面展示模式的切换。
页面主题表
数据名称 | 数据类型 | 数据描述 |
Id | Varchar | 页面主题信息id |
State | Tinyint | 主题标记。0正常模式 1静默模式 |
🍍学生信息表
作用:存储学生的基本信息,包括登录所需的用户名和密码,以及学生的联系信息和学籍信息等。
学生信息表
数据名称 | 数据类型 | 数据描述 |
Id | Varchar | 学生信息id |
Username | Varchar | 用户名 |
Password | Varchar | 密码 |
Real_name | Varchar | 姓名 |
Level | Tinyint | 级别 |
School | Varchar | 学校 |
Admission_time | Varchar | 入校时间 |
| Varchar | 电子邮箱 |
Profession | Varchar | 专业 |
Grade | Int | 年级 |
🍍学生-课程关联表
作用:存储学生选修的课程信息,包括学生ID、课程ID、课程名称、分数、绩点、学分、学期、学年等。
学生-课程关联表
数据名称 | 数据类型 | 数据描述 |
Id | int | 关联id |
Student_id | varchar | 学生id |
Course_id | Varchar | 课程id |
Name | Varchar | 课程名称 |
Score | Varchar | 分数 |
Point | Decimal | 绩点 |
Credits | Decimal | 学分 |
Term | Tinyint | 学期 |
Year | Int | 学年 |
🍍教师信息表
作用:存储教师的基本信息,包括登录所需的用户名和密码,以及教师的联系信息等。
教师信息表
数据名称 | 数据类型 | 数据描述 |
Id | Varchar | 教师信息id |
Username | Varchar | 用户名 |
Password | Varchar | 密码 |
Real_name | Varchar | 姓名 |
Level | Tinyint | 级别 |
School | Varchar | 学校名称 |
| Varchar | 邮箱 |
Phone | Varchar | 联系电话 |
Sex | Tinyint | 性别 |
Create_time | Timestamp | 创建时间 |
🍍教师-课程关联表
作用:存储教师教授的课程信息,包括教师ID、课程ID、课程名称、专业、年级、学期等。
教师-课程关联表
数据名称 | 数据类型 | 数据描述 |
Id | int | 关联id |
Teacher_id | varchar | 教师id |
Username | Varchar | 教师用户名 |
Name | Varchar | 课程名称 |
Profession | Varchar | 专业 |
Grade | Varchar | 年级 |
Term | Tinyint | 学期 |
Course_id | Varchar | 课程id |
🍍排课时间表
作用:存储课程的时间安排信息,包括周课程表ID、专业、年级、学年、学期等。
排课时间表
数据名称 | 数据类型 | 数据描述 |
Id | Varchar | 排课时间id |
Week_id | Int | 周课程表id |
Profession | Varchar | 专业 |
Grade | Varchar | 年级 |
Year | Int | 学年 |
Term | Tinyint | 学期 |
🍍文件信息表
作用:存储系统中文件的信息,包括上传用户ID、级别、文件地址等。
文件信息表
数据名称 | 数据类型 | 数据描述 |
Id | Int | 文件信息id |
User_id | Varchar | 上传用户id |
Level | Int | 级别 |
url | Varchar | 文件地址 |
🍍周课程表信息表
作用:存储每周课程表的信息,包括每天的课程安排。
周课程表信息表
数据名称 | 数据类型 | 数据描述 |
Id | Varchar | 周课程表信息id |
Monday | Varchar | 周一课程 |
Tuesday | Varchar | 周二课程 |
Wednesday | Varchar | 周三课程 |
Thurday | Varchar | 周四课程 |
Friday | Varchar | 周五课程 |
Saturday | Varchar | 周六课程 |
Sunday | Varchar | 周日课程 |