高校排课系统软件需求与数据库设计
1、 系统概述
排课系统业务流程如下:
1) 入学前,专业负责人设计培养方案;
2) 专业负责人安排下学期必修课程和专业选修课程;
3) 专业负责人安排课程班级和教师,教务处老师安排课程时间和地点;
4) 学生选择专业选修课程班级;
5) 个人课程表确定并输出;
2、 功能需求
2.1 前提条件
学院表
字段名称 |
Institute ID |
Institute Name |
字段含义 |
学院编号 |
学院名称 |
类型 |
char(3) |
char(20) |
约束 |
主键 |
|
样本 |
I01 |
信息与机电工程学院 |
专业表
字段名称 |
Major ID |
Major Name |
Institute ID |
Staff ID |
字段含义 |
专业编号 |
专业名称 |
学院编号 |
职工工号 |
类型 |
char(5) |
char(20) |
char(3) |
char(9) |
约束 |
主键 |
|
外码 |
外码 |
样本 |
M0101 |
计算机科学与技术 |
I01 |
S20210001 |
Institute ID:1位首字母 + 2位学院序号
Major ID:1位首字母 + 2位学院序号 + 两位专业序号
(首字母用来区分不同编号表示的内容,下同)
2.2 功能
2.2.1 入学前,专业负责人设计培养方案
1、需求描述:设计培养方案
2、前提条件:设有学院、专业、课程实体
3、操作该功能人员岗位:专业负责人
4、输入信息:专业、课程
5、输出信息:由培养方案明细构成的培养方案
6、E-R概念模型设计
7、表结构设计
课程表
字段名称 |
Course ID |
Course Name |
字段含义 |
课程编号 |
课程名称 |
类型 |
char(8) |
char(20) |
约束 |
主键 |
|
样本 |
A0100001 |
数据库实践 |
Course ID:1位课程种类(实践课A/理论课B)+ 2位学院序号 + 5位课程序号
培养方案表
字段名称 |
Training program ID |
Major ID |
Staff ID |
Grade |
字段含义 |
培养方案编号 |
专业编号 |
职工工号 |
年级 |
类型 |
char(9) |
char(5) |
char(9) |
char(10) |
约束 |
主键 |
外码 |
外码 |
自定义 |
样本 |
T20210101 |
M0101 |
S20210001 |
2021 |
Training program ID:1位首字母 + 4位年级序号 + 4位专业序号
培养方案明细表
字段名称 |
Detail ID |
Training Program ID |
Course ID |
Credits |
字段含义 |
培养方案明细号 |
培养方案编号 |
课程编号 |
学分 |
类型 |
char(13) |
char(9) |
char(8) |
int |
约束 |
主键 |
外码 |
外码 |
|
样本 |
D202101010001 |
T20210101 |
A0100001 |
1 |
字段名称 |
Credits Hourse |
Merit point course |
Course Type |
Available semesters |
Establishment |
字段含义 |
学时 |
是否为绩点课 |
课程类型 |
可修学期 |
是否已开设 |
类型 |
int |
Char(2) |
Char(4) |
Char(10) |
Char(2) |
约束 |
|
是/否 |
必修/选修 |
|
是/否 |
样本 |
32 |
否 |
必修 |
4、5 |
否 |
Detail ID:1位首字母 + 8位培养方案序号 + 4位培养方案明细序号
8、界面设计
用户登录界面
专业负责人操作界面
专业负责人制定培养方案界面
2.2.2 专业负责人安排下学期必修课程和专业选修课程
1、需求描述:安排下学期必修课程和专业选修课程
2、前提条件:设有培养方案明细实体
3、操作该功能人员岗位:专业负责人
4、输入信息:培养方案明细
5、输出信息:学期课程
6、E-R概念模型设计
7、表结构设计
学期表
字段名称 |
Semester ID |
Semester Name |
Year Number |
Year Name |
Semester serial Number |
字段含义 |
学期编号 |
学期名称 |
学年编号 |
学年名称 |
学期序号 |
类型 |
char(4) |
char(20) |
char(7) |
char(20) |
Char(1) |
约束 |
主键 |
|
|
|
|
样本 |
2301 |
2023-2024学年第一学期 |
2023024 |
2023-2024学年 |
1 |
Semester ID:2位年级序号 + 2位学期序号(按大学的总学期数排序)
学期课程表
字段名称 |
Semester Course ID |
Course Name |
Credicts |
Credicts Hourse |
Merit point course |
Course Type |
Semester ID |
字段含义 |
学期课程编号 |
课程名称 |
学分 |
学时 |
是否绩点课 |
课程类型 |
学期编号 |
类型 |
char(13) |
char(20) |
int |
int |
char(2) |
char(4) |
int |
约束 |
主键 |
|
|
|
是/否 |
必修/选修 |
外码 |
样本 |
A01000012301 |
数据库实践 |
1 |
32 |
否 |
必修 |
2301 |
Semester Course ID:1位首字母 + 8位课程序号 + 4位学期序号
2.2.3 专业负责人安排课程班级和教师,教务处老师安排课程时间和地点
1、需求描述:安排课程班级、教师、时间、地点
2、前提条件:设有班级、职工、学期课程实体
3、操作该功能人员岗位:专业负责人、教务处老师
4、输入信息:学期课程
5、输出信息:课程班级信息表
6、E-R概念模型设计
7、表结构设计
职工表
字段名称 |
Staff ID |
Staff Name |
Office |
Title |
字段含义 |
职工工号 |
职工姓名 |
职务 |
职称 |
类型 |
char(9) |
char(20) |
char(20) |
Char(10) |
约束 |
主键 |
|
|
|
样本 |
S20210001 |
李四 |
教师 |
副教授 |
Staff ID:4位年级序号 + 4位职工序号
班级表
字段名称 |
Class ID |
Class Name |
Major ID |
Grade |
Stu_num |
字段含义 |
班级编号 |
班级名称 |
专业编号 |
年级 |
班级人数 |
类型 |
char(9) |
char(20) |
char(5) |
char(10) |
char(2) |
约束 |
主键 |
|
外码 |
自定义 |
自定义 |
样本 |
C21010101 |
21级计应1班 |
M0101 |
2021 |
33 |
Class ID:1位首字母 + 2位入学时间 + 4位专业序号 + 2位班级序号
时间表
字段名称 |
Time ID |
Day of Week |
Section_start |
Section_end |
字段含义 |
时间编号 |
周内某天 |
课程开始节次 |
课程结束节次 |
类型 |
char(6) |
char(4) |
char(8) |
char(8) |
约束 |
主键 |
|
|
|
样本 |
E10102 |
周一 |
第1节次 |
第2节次 |
Time ID:1位首字母 + 1位周内某天 + 2位开始节次 + 2位结束节次
地点表
字段名称 |
Location ID |
Classroom Building |
Classroom |
Capacity |
Equipment |
字段含义 |
地点编号 |
教学楼 |
教室 |
容纳人数 |
设备 |
类型 |
char(7) |
char(20) |
char(12) |
char(3) |
char(20) |
约束 |
主键 |
|
|
|
|
样本 |
L01A001 |
第一教学楼A座 |
001号教室 |
50 |
多媒体投影 |
Location ID:1位首字母 + 3位教学楼序号 + 3位教室序号
课班表
字段名称 |
Course_Class ID |
Cours_Class Name |
Max_num |
CC Type |
字段含义 |
课班编号 |
课班名称 |
课班人数上限 |
课班类型 |
类型 |
char(15) |
char(20) |
char(2) |
char(4) |
约束 |
主键 |
|
自定义 |
|
样本 |
B0100001230101 |
数据库 21级计应1班 |
33 |
必修 |
字段名称 |
Staff ID |
Semester Course ID |
字段含义 |
职工工号 |
学期课程编号 |
类型 |
char(9) |
char(12) |
约束 |
外码 |
外码 |
样本 |
S20210001 |
A01000012301 |
Course_Class ID:1位首字母 + 12位学期课程序号 + 2位课班序号
8、界面设计
专业负责人安排课程班级、教师
教务处老师安排课程时间、地点
2.2.4 学生选择专业选修课程班级
1、需求描述:确定必修课程班级,学生选择专业选修课程班级
2、前提条件:设有学生、班级实体
3、操作该功能人员岗位:学生
4、输入信息:班级
5、输出信息:课班的学生名单(凭据)
6、E-R概念模型设计
7、表结构设计
学生表
字段名称 |
Student ID |
Student Name |
Class ID |
字段含义 |
学号 |
姓名 |
班级号 |
类型 |
char(9) |
char(20) |
char(7) |
约束 |
主键 |
|
外码 |
样本 |
210151913 |
张三 |
C210101 |
Student ID:2位年级序号 + 3位生源地序号 + 4位学生序号
8、界面设计
学生首页
学生选课
查看课表
2.2.5 总课程表确定并输出
1、需求描述:生成个人总课程表
2、前提条件:课班的学生名单(凭据)
3、操作该功能人员岗位:教务处老师
4、输入信息:学生
5、输出信息:总课程表
3、 IDEF1X总图
标签:专业,项目,排课,char,课程,文档,序号,ID,字段名 From: https://www.cnblogs.com/yuooo/p/17483997.html