基于C/S模式的机房排课系统设计与实现
来源:岁月联盟
时间:2010-08-15
图1 课程、教师、机房、学生相互关系E-R图由图可看出,一名教师可以占用多个机房,而一个机房内可供多个教师上机辅导;同样,对于课程来说,一门课程可能占用多个机房,而一个机房内可允许多门课程同时上机。与在教室上课不同的是,在机房一个教师可以同时辅导多门课程的上机实验。3. 系统设计3.1系统体系结构排课系统的操作对象分为排课管理员、实验室值班员以及普通用户(包括一般教师、学生等),级别不同,可操作的项目也不同,其系统逻辑模型,如图2所示。

| 图2 系统逻辑模型 |

图4 系统主要功能模块 3.3.1.排课管理(1)预约登记:教师从教务处拿到上机计划书后到排课管理员那里申请排课,排课管理员按上机计划书将排课信息录入机保存到排课计划主表中;(2)排课:操作员根据机房使用情况,指定某课程在某时间内的上课机房,并在同一页面内可以查询机房的使用情况和空余情况以及已排课情况;排课时,可以先“预排”, 若预排成功,则可以排课,否则不予排课。也可以直接排课,如果排课条件不满足,系统会自动显示预排课的结果以及不满足条件的原因。此时,系统会提示操作员是否“强制排课”,即在机位条件不满足时强行排课,此功能仅限于当排课人数与机房机位数相差无几时使用,如果排课人数远远超出机房机位数而进行强制排课,会导致上课时出现混乱状况。3.3.2.调停课管理 (1)调课:排好的课程可能由于多种原因而进行调整,引起调课的原因主要有:机房的调换和上课时间的调整,当新调整的机房或时间段空余机位不足时,提示操作员是否要执行“强制调课”;(2)停课:将已排好的某些课程取消,并恢复机时。3.3.3.系统维护(1)修改机房信息:主要是可用机器的数量增加或减少,可用机房的增加或减少;(2)修改班级信息:主要是增加删除班级、修改班级人数;(3)初始化周次:每学期开始排新课时,必须要对本学期的周次、开始时间进行确认;(4)代码表维护:对上机性质、时段划分、课程代号等代码表的增删改;(5)授权管理:增加或删除使用本系统的用户,对用户进行授权。4. 系统实现4.1排课过程算法实现用N-S流程图表示,如图5所示。| 图5 排课过程N-S流程图 |
4.2调课过程算法实现调课算法的步骤实际是先停课后排课,调课方式有三种:(1)机房调整:即上机时间不变,只改变上课机房;(2)时间调整:上课机房不变,仅改变上机时间;(3)同时调整:即时间和上课机房都要变动。停课过程比较简单,只需将相关记录从排课计划子表中删除即可;再排课的过程类似于初排课过程,这里不再赘述。4.3查询结果显示方式无论是排课查询还是机房查询,其查询结果显示的内容都类似,这里以排课查询为例说明。查询时首先会出现一个“定制查询信息”的窗口,设置好查询条件之后单击查询按钮即可看到查询结果,如图6所示:
图6查询窗口 该窗口共分为三部分:左边是树形目录,所定制的时间可以在此分层显示,单击某一时间(如图中单击星期五)则在右边上半部分显示所选时间的总排课信息,并以图示的方式显示了机房的占用情况;当单击该表某条记录时,又会在下半部分显示更为详细的排课信息。此种显示方式不但界面美观,操作方便,更重要的是它在容纳大量信息的同时又不显得拥挤和繁杂,使操作者对所查询的信息一目了然,十分清楚。5. 本文介绍了基于c/s模式的机房排课系统的设计与实现,其中Server端选用Windows2000和Sql server 2000,Client端选用Delphi6.0开发应用程序,实现了排课、调课、查询、统计、打印等基本功能,投入实际运行后,不但大大提高了排课人员的工作效率,而且规范了实验室人员的机房管理工作和学生的上机实验过程。6. :1.张亮,杨生树,陈娟《公安院校计算机排课管理的设计与实现》,江苏警官学院学报,2003.52.景雪琴,《从排课表到教室调度表的设计与实现》,计算机应用与软件,2004,23.韩明,《计算机辅助大学排课系统》,电脑开发与应用,2002,104.侯秀萍,《基于C/S模式的自动排课系统的研究》,微机,2003,3











