学生选课系统课程设计报告报告

学生选课系统课程设计报告报告
学生选课系统课程设计报告报告

一、需求分析

通过对系统需求进行分析,我们可以确定系统中有三类用户:管理员、教师和学生。各类用户的具体描述如下:

(1)管理员

描述:管理员维护整个系统,包括设置选课时段,选课前学生不可登录;选课结束,学生只可查询,管理员对选课结果进行统计;查询选课情况,对学生的选课申请进行处理,进行用户管理;限制最大选课人数;排课、发布选课信息;数据备份和恢复等。

(2)教师

描述:教师撰写教师反馈,反馈选课信息,对排课者提出反馈意见,供排课者在排课时参考使用。查询课程基本情况、学生情况。

(3) 学生

描述:在选课系统中查询课程、教室信息,查看教师反馈,提交选课申请,撤销申请,查询选课情况,登录系统,进行个人信息修改等与选课有关的活动。

根据上面所述,对系统进行了划分,分为三个主要功能,即登录控制、排课和选课,分别对应三个子系统,即登录子系统、排课子系统和选课子系统。其中,登录子系统是前提,排课子系统是基础,选课子系统是关键。登录子系统区分排课者(即系统管理员),教师和学生这三者的不同身份,给出不同的权限,在页面中根据身份判断其相应具有的权限,进行不同的操作。排课子系统主要供排课者使用,其中设定选课时间段,进行排课并检测排课冲突,发布选课信息都是选课的前提和基础。选课子系统是本系统要实现的最终目的。选课子系统主要供学生选课使用,在这里可以进行与选课有关的活动,包括课程浏览查询、选课、退选课程。

数据字典

根据数据流程分析,对系统数据进行分析和汇总,建立系统数据字典。下面列出部分数据字典容。

(1) 排课

系统名:网上选课系统

条目名:排课

输入:课程信息表,教学楼信息表,教师信息表,院系信息表

输出:排课表,选课通知表

描述:

排课者按年级排课。排课表容包括课程代号,课程名称,受课院系,专业代码,专业名称,教师代号,考察方式,学分,开课时间,上课时间,地点,开课院系,最大上课人数和课程选则限制(必修或选修)等。

在排课过程中,排课者可以查询教室使用情况和院系课程设置。

在排课者提交排课表以后,系统应当确保该排课方案中没有时间冲突和教室冲突。如果有冲突,系统应该提示排课者具体冲突产生的原因。

(2) 选课

系统名:网上选课系统

条目名:选课

输入:排课表,选课通知表,教师反馈表

输出:学生选课表

描述:

学生可以在规定的时间段选课。该规定时间段由排课者通过发布消息通知教师和学生。选课过程如下:学生在选课表上单击课程号,则该信息被提交到服务器,并显示学生的选课结果。选课表的容包括排课表的全部容。如果一门课程已经达到最大选课人数,则不能再选择这门课程。如果有学生退课,则该门课程的已选人数减1。

(3) 设定选课时间段

系统名:网上选课系统

条目名:设定选课时间段

输入:选课时间段表输出:选课时间段表

描述:

排课者应该设定选课时间段。学生只能在此设定的时间段选课和退课。

二、概念结构设计

(一) 排课子系统

1 、系统涉及到的实体

排课中所涉及的主要实体及其属性有:

(1) 管理员{用户名,密码,用户类型}

(2) 课程{课程编号,面向专业编号,学分,限选性质,教师编号,考察方式,最大选课人数,课程名称,开课院系编号,面向的年级}

(3) 选课通知{通知编号,通知标题,通知容,通知时间,是否为“热点”}

(4) 选课时间段{开始选课时间,终止选课时间}

2、E-R模型如图1、2所示。

管理员

用户名

用户类型

密码

课程

课程编号

面向专业编号学分

限选性质

课程名称

最大选课人数

选课通知

通知编号

通知标题通知内容

通知时间

是否为“热点”

选课时间

段开始选课时间

终止选课时间

图 1 排课过程实体及其属性

管理员

排课1

1n

选课通知

发布

设置

选课时间段

1n

课程

n

时间

地点

图 2 排课过程E-R 图

(二) 选课子系统

1 、系统涉及到的实体

选课中所涉及的主要实体及其属性有: (1)学生{用户名,密码,用户类型,用户编号}

(2) 课程{课程编号,面向专业编号,学分,限选性质,教师编号,考察方式,最大选课人数,课程名称,开课院系编号,面向的年级}

2 、E-R 模型如图3、4所示。

学生

用户名

用户类型

密码

课程

课程编号

面向专业编号学分

限选性质

课程名称

最大选课人数

图 3 选课过程实体及其属性

学生

选课

课程

成绩

m

n

图 4 选课过程E-R 图

(三) 合并上述E-R 图,得到系统的总E-R 图,如图5所示。

管理员

排课1

1n

选课通知

发布

设置

选课时间段

1n

课程

n

时间

地点

选课

学生

m

n

成绩

图 5 系统的总E-R 图

三、逻辑结构设计

根据以上的分析,将E-R模型转换成逻辑模型,设计出本系统数据库。根据需要,设计了14个数据表,2个视图。如下所示:

●排课表:该表记录了排课的相关信息,包括排课编号、上课教室号、上课时间、课程设置号。

●院系信息表:该表记录了开课院系的相关信息,包括院系编号、院系名称。

●教学楼信息表:该表记录了所有教学楼的相关信息,包括教学楼编号、教学楼名称。

●教室信息表:该表列出了所有可供上课的教室的详细信息,包括教室编号、教室名称、教学楼编号、教室属性。

●备份排课记录表:该表列出了所有备份表信息,包括列表号、备份排课记录表ID。

●选课时间段信息表:该表是控制整个选课过程的关键部分,学生只能在此设定的时间段才能选课,包括开始选课时间和终止选课时间。

●选课通知表:该表是为排课者及时通告选课信息而建的,包括通知编号、通知标题、通知容、通知时间、是否为“热点”。

●课程详细信息表:该表对课程的容做了详细的介绍,包括课程设置编号、课程名称、课程介绍。

●开课信息表:该表列出了选课表的详细信息,包括课程编号、面向专业

号、学分、限选性质、教师编号、考察方式、备注、最大选课人数、课程编号、开课院系编号、面向的年级。

●选课信息表:当学生成功的选课后,就会列出相应的信息,包括排课编号、学生学号。

●反馈信息表:该表列出了教师的反馈信息,包括反馈信息编号、反馈信息标题、反馈信息容、用户ID、反馈时间。

●学生信息表:该表列出了所有在校学生的信息,包括学生学号、学生、所属院系编号、专业号。

●教师信息表:该表列出了所有在校教师的信息,包括教师编号、教师、所属院系编号。

●系统用户信息表:该表列出了所有登录过本系统的用户信息(教师、学生、管理员),包括用户类型、用户编号、用户名、用户密码。

1 排课表(Arrange)

该表记录了排课的相关信息,包括排课编号、上课教室号、上课时间、课程设置号,其结构如表1所示:

表1 Arrange

2 院系信息表(DeptInfo)

该表记录了开课院系的相关信息,包括院系编号、院系名称,其结构如表2所示:

表2 DeptInfo

3 学生信息表(StudentInfo)

该表列出了所有在校学生的信息,包括学生学号、学生、所属院系编号、专业号,其结构如表3所示:

表3 StudentInfo

4 教师信息表(TeacherInfo)

该表列出了所有在校教师的信息,包括教师编号、教师、所属院系编号,其结构如表4所示:

表4 TeacherInfo

5 教学楼信息表(BuildingInfo)

该表记录了所有教学楼的相关信息,包括教学楼编号、教学楼名称,其结构如表5所示:

表5 BuildingInfo

相关主题
相关文档
最新文档