排课毕业设计需求分析草稿
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
…
需求分析
1.对功能的规定
作为一个完整的数据库系统,其各种功能也要求比较完善,本系统的主要功能有:
(1)系统登入功能:在系统授权范围内,用户选择各自的用户名,输入密码后登入系统;
(2)基本信息管理:教师、教室、班级、课程、课程申请等数据的增、删、改、查;
(3)数据处理:自动排课、手动排课、教师、教室、班级、课程、课程申请等数据的输入、编辑、修改、删除等功能;
(4)数据输出:查询教师、班级课程表,打印教师、班级课程表,查询教师、班级、教室课程以及课程申请的基本信息;
(5)系统设置:对用户权限的设置和密码的更改。在本系统中,普通用户即教师和学生只能浏览、查询和打印基本信息以及查询课表和打印课表,不能添加、删除、修改基本信息并且无权排课、调课。教师也可根据实际情况提前申请课程日期。
,
2.对性能的规定
(1)一个大学由多少个院系组成(院系类);
(2)一个院系有多少个专业(专业类);
(3)一个专业有多少个年级(年级类);
(4)一个年级有多少个自然班(班别类);
(5)一个自然班有多少个学生(学生类);
(6)一个大学有多少个教师(教师类);
:
(7)一个大学有多少个教室(教室类);
(8)教师和学生都不能发生课时冲突,即没有教师要同时给两个(或两个以上的)班上课,也没有一个班要同时上两门(或两门以上)不同的课程;
(9)教师和学生合理的不排课时间要求一定要满足;
(10)要求排连堂的课一定要连堂;
(11)主课(大学英语、高等数学、大学物理等)课程排上午,副课(思想道德修养、文献检索等)课程排下午,其它课程在上、下午随机分布;
(12)满足教师教案的周期性,教师备一次课后应在他授课的所有班上都讲授一遍之后才进入到下一阶段的备课和授课;
(13)尽量避免断点,即不出现一天内前、后节次有课,中间无课的现象;
(14)文、理课(如高等数学和大学英语)相间,以使学生智力得到调整,提高学习效率;
—
(15)同一门课一周内在节次上要均匀分布;
(16)排课前考虑老师的时间问题。张教师一周5天共上20节,则尽可能安排每天4节课且4节课不连续安排在如1234或5678节等;
(17)排课时还要充分考虑到课程的均匀性问题。即课程安排尽可能均匀,英语一周3节,若一周上5天的课,尽量每隔一天安排一次课程;
(18)对于数量巨大的信息,系统仍具有较快的响应速度和较小的系统开支。
3、逻辑设计
整个排课的过程分成一下步骤:
(1)管理员通过教师信息,班级信息,教室信息,课程信息,课程申请信息确定所对应的的教师表,班级表,教室表,课程表以及课程申请表。
(2)管理员首先根据教师预先排课申请表手动确定合适部分课程的时间。(3):
(4)自动排课。从教师表,班级表,教室表,课程表提取相应信息、寻找合适的节次进行合理有序的安排。或者(2)和(3)颠倒进行。
(5)对确定的课表根据反馈适当性修改,最终确定。
4.系统数据结构图
(1)顶级数据流动图
管理员 排课系统 打印课程表
班级和老师
>
(2) 第二级数据流动图
、
数据流动图:
{
5.基本设计概念和处理流程
(
活动者1:用户(管理员),系统的最大使用者,可操作系统的全部功能,即使用系统对全校的班级进行排课,首先获得相应的基本信息(教师信息,班级信息,教室信息,课程信息,课程申请信息,预先课程申请信息),根据基本信
息进行自动排课和手动调课适当性,合理性结合,并对教师的课表和班级的课表进行查询。
活动者2:用户(学生),作为系统的一般使用者,他们能进行查询和打印课表,并能看到教师、班级、教室、课程基本信息。学生可以查询自己班级的课表和自己关注的老师的课表;
活动者2:用户(教师),作为系统的一般使用者,他们能进行查询和打印课表,并能看到教师、班级、教室、课程和课程申请基本信息。老师可以查询自己的课表,也可查询自己所教的班级的课表。
用况说明:
(1)用况名称:主界面
参与者:用户(管理员、教师、学生)
主要事件流:
,
用户在这里根据自己的需要选择需要的操作,其中以管理员身份登入的就可选择此界面上的所有功能操作,而以老师和学生身份登入的就只能浏览各个模块的基本信息并可选择查询这个模块。
(2)用况名称:教师设置
参与者:用户(管理员、教师、学生)
主要事件流:
管理人员对教师的基本情况如姓名、职称、学位、住所等进行编辑、添加、删除、查询等操作;教师和学生能够浏览和查询基本信息。
(3)用况名称:班级设置
参与者:用户(管理员、教师、学生)
主要事件流:
、
管理员对班级的基本情况如班级名称、班级人数、专业、年级等进行编辑、添加、删除、查询等操作;教师和学生能够浏览和查询基本信息。
(4)用况名称:教室设置
主要事件流:
管理员对教室的基本情况如教室名称、教室容量、教室性质等进行编辑、添加、删除、查询等操作;教师和学生能够浏览和查询基本信息。
(5)用况名称:课程设置
参与者:用户(管理员、教师、学生)
主要事件流:
…
管理员对课程的基本情况如课程名称、课程类别、考核方式、课程性质等进行编辑、添加、删除、查询等操作;教师和学生能够浏览和查询基本信息。
(6)用况名称:课程申请
参与者:用户(管理员、教师、学生)
主要事件流:
管理员对课程的基本情况如课程名称、教师姓名、班级名称、周课数、学分、开始周、周数等进行编辑、添加、删除、查询等操作;教师能够浏览和查询基本信息。
(7)用况名称:自动排课
参与者:用户(管理员)
主要事件流:
!
管理员在输入教师信息、班级信息和教室信息、课程信息后系统就可根据算法和代码自动的安排各班和各老师的课程表。
(8)用况名称:手动排课
参与者:用户(管理员)
主要事件流:
在自动排课后,教务处的管理人员可调整课表的一些冲突问题如场地冲突、时间冲突等进行改正,或是对某些老师由于特殊情况要课程调动的预先课程申请表进行重新安排。
(9)用况名称:高级查询