高校教务排课系统
第一章引言
(一)排课系统研究的意义
对于每个学校来说,每到一个新学期的开始,首当其冲的任务就是该学期的课程如何安排的问题,而课程安排又涉及年级、班级、教师、课程、学校等方方面面的因素,如何排出一个好并且适用的课程表,是一项复杂的系统工程,充分考验了排课人的智慧。传统的人工进行排课,最令人担心的问题就是——出现教室资源冲突或教师资源冲突的情况。而且工作繁琐,工作量巨大。计算机软件技术应用于学校的课程安排是发展的必然。充分发挥计算机的优势,将大量复杂的判断与运算交给计算机来做,是真正意义上的人脑的“减负”。利用计算机辅助进行〖本文来自:毕业设计论文网www.paper51.com〗课表编排工作,既提高了排课工作的科学性,又可大大减轻管理人员的工作强度,提高工作效率,从而使学校教务管理现代化迈上了一个新台阶。
(二)现状分析和存在的问题
目前,我国的高校排课系统始终没有一个合理的通用的算法,一般来说,大部分高校使用的排课系统,一般都是自行设计开发,根据自己学校的教学楼分布情况、课程讲授方法设计的排课系统,只适用于一个或一类学校,但是由于各学校实际情况不同,所以,即使同一个排课系统,在不同的学校,系统消耗的代价也不一样,并且排课出错处理如:学生和教师的合理休息问题、移动距离最合理分配以及不同类型课程在一起排课时怎样充分利用教学资源等问题都不能同时合理的解决,大部分是以牺牲其他方面为代价的。
计算机排课系统的关键技术是形成采用框架式可维护的排课策略库。这个策略库要具有学生、教师、教室、课程等多因素自动综合的求优排课算法,课程时间分布的自动平衡和时间段限定,听课人数和教室容量的自动求优、人数模糊、适应交大地域分散特点的教室地理位置自动求近以及位置限定算法等,也就是说,根据课程科目的实际特点,由计算机调用策略库中的算法,自动生成课程安排表。①
(三)本文解决的技术关键
目前在国内众多的高校自动排课系统中,没有一个能够适应高校内部复杂约束条件的限制,所以已经趋向于冲突检查与手工排课结合完成排课功能。在我的排课系统,主要对不同类型课程进行等级划分,排列出课程的排课优先级别,通过优先〖本文来自:毕业设计论文网www.paper51.com〗次序对不同类型的课程使用不同的算法进行排课,能够非常方便地处理各种排课约束条件的限制,例如教师和教室冲突、班级冲突、教师上课时间和地点选择、分层次教学、单双周排课、一课多教师教学、课程连上和隔天教学等各种各样的约束。同时该系统还能够非常迅速地得到排课结果,例如排一千门课只需几分钟时间等一系列问题。
第二章需求分析
(一)系统所具备的功能的探讨
首先肯定排课系统是一个评价标准很难达到统一的问题,同一个排课结果,从学生角度看,不同专业的学生看法不同,有的认为这样上课自己一星期很近张,有的学生认为自己一星期很轻松,有的认为自己一星期时间分配很合理,由于排课系统中所制约的各种因素,例如教师、教室、时间、学生以及授课学时等等。针对于排课系统评价的依据/因素问题,我们从以下几点做了研究,探求其实现的可能性:
1、学生和教师的移动代价
这种评价是考虑一个学校地理分布环境,可供安排教室上课的教学楼和每个校区各教学机构(教研室)的分布情况。所谓的学生移动代价就是指针对排课结果,在其安排课程的顺序上学生不断地要换教室,这更换教室或更换教学楼之间移动的距离是多少,花费多少时间,如果到很远的地方上课,除去正常休息时间能否让学生和教师来得及返回本部校区完成其他教学任务。如果经常让同一批学生和教师在两个或两个距离较远的地区奔波,时间、经济和精力上的花费必然很大,学生经济和精力负担会过重,从学生角度讲,经济负担是一个问题。所以合理分配学生上课,可以有效地从经济等多方面解决教师和学生负担问题。
2、教室的利用
随着高校招生的规模日益扩大,在为课程排定教室的教室利用率问题也日益尖锐起来,这给教务管理部门对教室的灵活管理和分析统计方面提出了一个新的课题。所谓的教室利用率就是一个教室在一个星期内被使用的次数,在很多情况下,一个校区的一些科目的教师不能满足学生上课需求,那么就需要学生到别的校区上课,除去路程等因素外,其他近距离校区是否有相应教室也是一个问题,所以,当发生以上问题时,就需要考虑其他近距离校区的教室使用情况。
3、教师的工作量
在高等院校对于一门课程均有若干名教员担任该课程的讲课任务,有的排课系统软件是按照随机抽取的原则进行班级与教员的匹配的,那么这就存在着一个教师工作量是否安排合理的问题。所谓的教师工作量就是某一教员他(她)的日工作量和周工作量〖本文来自:毕业设计论文网www.paper51.com〗是多少,用来衡量教师工作量的标准就是教师的日(周)平均工作量,这可以通过算法来实现,然后计算出来的数值再加一个上下限。我们订为每个教师每天工作量为两节课,如果某一个教员的日(周)工作量在教师的日(周)平均工作量范围内,我们就可以评价该排课系统是比较好的。反之,则不够好。从教师的工作量角度来评价一个排课系统,我们可以对其排课算法进行优劣评价。
4、排课系统的时间复杂度
不同课程科目,需要不同的上课时间,不同类型的教学设施,合理安排上课时间,给不同级别的科目加一些时间上的限制,可以让学生不至于因为要上各类型的课,由于场地或设施等其他原因而在不同的教室或场地上来回奔波;同时,合理分配学生上课时间,根据学生课节数,安排时间上课,不能让学生集中几天上课,然后其余几天休息,这样就失去教学意义。我们要尽量然让每个专业的课程均匀分布在所有上课时间内。
5、公共课分班教学问题
结论
经过三个多月的设计和开发,排课系统基本开发完毕。其排课功能基本完成,能够完成课程安排的手动和自动排课相结合的功能及各类相关报表的打印。并提供部分系统维护功能,使用户方便进行用户密码和权限管理功能。对于数据的一致性的问题也通过程序进行了有效的解决。
但是由于毕业设计时间较短和〖本文来自:毕业设计论文网www.paper51.com〗本人能力的不足,所以该系统还有许多不尽如人意的地方,比如缺少联机文档,出错处理不够等多方面问题。这些都有待进一步改善。特别是在易用性方面还存在不少问题。这些都是在做开发时做的不够的地方,由于每个高校课程安排,人员配置,教学资源安排和教学地点分布不同,所以一个排课系统只能适用于一类或者几类学校,而且,由于不同课程科目教学方法不同,所以排课系统并没有把手工调整从机器中解脱出来,以后我将尽量注意相关问题,争取做得更好。