1、试验室排课系统设计和实现作 者 计家瑞指导老师 赵会洋摘要 为提升试验室资源利用率,减轻管理人员劳动强度,方便学生、试验室管理人员和老师之间交互和沟通,系统提出了用计算机替换手工排课方法,设计了一个利用计算机实现试验室排课系统。经过对手工排课过程调研和分析,设计出了试验室排课系统功效结构,在此基础上,给出并利用回溯算法实现了试验室排课及课表导出和打印等功效。试验结果表明,该方法含有很高可行性和有效性。关键词 导出和打印;自动排课;回溯算法1. 引言自动排课是在传统人工排课经验基础之上,利用计算机模拟人脑来选择适宜方案进行排课。许昌学院计算机科学和技术学院计算机机房负担着计算机科学和技术学院、软
2、件学院教学试验任务,因为近两年来学院办学规模不停扩大,试验室建设也在逐步发展。高质量教学需要高效率管理支持,伴随开放式试验教学管理模式改革和学院办公信息化项目标推广,传统试验室人工管理模式已经不能满足我们工作学习需求,无法有效合理提升试验室资源利用率。试验室自动排课系统实施,不仅能够提升计算机机房管理水平、教学质量,而且能够使试验室达成高效、有序、网络化管理。2. 系统需求分析排课是高等院校教学管理中一项关键而复杂工作,自动排课算法是一个NP完全问题,集成了时间、空间双重约束,从数学上来讲,排课问题是一个在时间、老师、学生和教室四维空间,以教学计划和多种特殊要求(如指定时间、指定教室、排课等级
3、)为制约条件组合计划问题,其实质是处理各个原因之间冲突。2.1 系统功效分析本系统最终用户是学生、老师和管理员,处理要求以下所表示。(1)先排有指定要求课程,指定要求包含指定教室和指定时间、只指定时间没有指定教室、只指定教室没有指定时间,最终对既没有指定时间又没有指定教室课程进行安排。(2)周五下午不能排课,排课时间为周一至周五,天天早晨、下午各两节课,共十八个上课时间段。(3)满足周课时要求。(4)可依据使用用户不一样,将课表分为班级课表、教室课表、老师课表和总课表。(5)管理员能够设置用户权限、用户初始密码及添加、删除用户。(6)可分别将基础信息和课表信息导出到Word或Excel。(7)
4、可打印基础信息、教学计划和课表信息。(8)设置一个简易留言板,用户能够进行留言,管理员能够对留言板进行管理。(9)不一样等级用户,含有不一样等级用户权限。2.2 系统性能需求(1)系统使用方便、简单,基于试验室排课系统面向对象是全部使用试验室老师、学生及试验室管理人员,所以要求系统应该是使用方便、简单且尽可能适合不一样层次、不一样使用习惯用户使用。(2)系统操作上应该简单、方便、界面简练美观。(3)系统在结构上应该含有很好可扩展性,方便于以后深入开发和维护。2.3 数据库设计数据库构架是应用系统研制成功基石,整个系统操作全部是围绕着数据库表进行,所以怎样建立数据库表,每个表应含有哪些项目等,对
5、节省存放内存、降低运算量、简化程序设计等全部是很关键【1】。本系统建立了数据库表LRS,在LRS数据库表中设置了以下几张表结构,包含老师信息表(teacher)、教室信息表(lab)、班级信息表(class)、课程信息表(course)、任课信息表(lessons)、教学计划表(plan2)、用户信息表(userinfo)、留言信息表(liuyan)、时间表(t_info)、排课单元表(unit)。3. 系统总体设计3.1 系统功效结构本系统是一个基于WEB试验室排课系统,它关键包含登陆界面,管理员主界面,老师主界面,学生主界面,登陆时系统会依据使用者角色不一样,系统会进入不一样操作界面,系统
6、总体结构图1所表示。图1 系统结构图3.2 排课步骤自动排课系统运行是在基础信息录入完成以后进行,基础信息包含老师信息,教室信息,班级信息,课程信息,任课信息,所以在排课之初,需要对基础信息进行正确录入及处理。进入到自动排课页面,页面首先会提醒用户选择要排课年和学期,选择以后单击确定进行排课,单击清除对已经存在排课信息进行清除。自动排课算法设计排课步骤图2所表示。图2 排课步骤图3.3 登录子系统系统设有三级用户:学生用户、老师用户和管理员用户,登录系统时,系统将判定用户身份,依据用户身份不一样进入不一样功效界面。3.4 用户管理子系统本子系统功效依据使用者权限不一样而有所不一样。其具体介绍以
7、下所表示。(1)管理员用户:含有最高权限,其能够对各信息进行查看、编辑、删除、添加、导出和打印。另外作为试验室排课系统最高等级用户,其能够进行自动排课,并能对排课进行清除。 (2)老师用户:老师作为教学活动关键指导者和参与者,其能够对各信息进行查看、编辑、删除、添加、导出和打印。其关键特点是能够依据本身需要指定教室,指定时间等,以提升排课有效性。(3)学生用户:学生是教学活动关键参与者,在该试验室排课系统中,学生用户能够对相关部分信息进行查看、导出和打印,不过对各信息无权修改或删除。学生用户拥有最低权限。4. 系统具体设计4.1 母版页设计试验室排课系统是一个基于WEB系统,名称为LRS。母版
8、页能够极大地简化为站点创建一致外观任务,ASP.NET2.0提供母版页功效,为提升工作效率、降低开发和维护强度提供了有利支持【2】。母版页设计界面图3所表示。图3 母版页设计在母版页中添加了Web用户控件top.ascx、menu.ascx、link.ascx、bottom.ascx。(1)用户控件top.ascx用来显示页面顶部logo、联络管理员、收藏本站、设置主页等内容。(2)用户控件menu.ascx用来显示登录日期和部分常见链接。(3)用户控件link.ascx用来显示到许昌学院和baidu友谊链接。(4)用户控件bottom.ascx用来显示和本系统相关部分基础联络方法。4.2 登
9、录页面设计本系统功效依据使用者不一样而不一样,关键有三种用户:学生用户、老师用户和系统管理员。用户登录时系统将判定用户身份,依据使用者不一样进入不一样功效界面。登录界面设计图4所表示。图4 登录页面设计4.3 管理员用户功效设计管理员用户作为试验室排课系统最高权限管理者。管理员用户管理模块关键有基础信息管理模块、教学计划管理模块、自动排课模块、课表信息模块、数据处理模块、留言板、用户管理模块和相关我们模块。(1)基础信息管理基础信息包含教室信息、老师信息、班级信息、课程信息、任课信息,管理员用户能够对这类信息进行查看、编辑、修改、添加或删除,其中老师信息管理界面图5所表示。图5 老师信息管理页
10、面(2)教学计划管理教学计划是试验室排课关键依据,管理员用户能够对教学计划进行查询、添加和删除。 (3)自动排课自动排课是试验室排课系统关键,是系统开发和研究关键所在。系统依据用户输入教室、老师、班级、课程、任课、教学计划等信息,对各课程进行自动排课,并生成排课单元unit表。管理员能够选择要进行排课年、学期,单击“确定”开始排课,假如排课单元unit表中已经存在该年学期课程安排则显示提醒信息,提醒用户此年学期课程已经安排过,不然进行排课,成功后提醒用户排课成功信息。当基础信息发生更改后,管理员需要对课程进行重新安排,此时单击“清除”则能够对排课单元中已经存在各信息进行清除。(4)课表信息依据
11、课表使用者不一样,能够把课表分为老师课程表、班级课程表、教室课程表、总课表,其中老师课表图6所表示。图6 老师课表(5)数据处理数据处理部分关键是对基础信息、教学计划信息和各课表信息进行导出或打印等操作,其中导出包含导出到Word和Excel。教学计划导出和打印页面图7所表示。图7 教学计划导出和打印页面(6)留言板试验室作为教学活动一个特殊地点,对教学活动正常进行起着不可或缺作用,但试验室常常会遇见设备损坏或因为用户使用不妥而照成软硬件不能正常运行等问题,这类问题单靠管理人员发觉后再维护耗时长且不便,所以在这里设置留言板作用不仅仅是为了给用户提供了一个交流平台,更关键是提供一个用户将需求及设
12、备现实状况反馈给管理员路径。管理员能够添加留言信息、查看留言信息、修改或删除留言信息。(7)用户管理考虑到参与试验室排课系统人员特殊性,在此系统中没有新用户注册功效,以预防非法用户窃取教务信息。管理员用户在用户管理模块拥有功效包含本身密码修改和管理用户信息,在管理用户信息中,管理员能够对用户用户名、密码进行修改,并能够经过修改用户角色达成修改用户权限目标。(8)相关我们为了提升系统可操作性,系统创建了一个相关我们模块,关键是为用户提供系统相关信息。4.4 老师用户功效设计老师用户能够对基础信息进行修改、删除或添加,不过不能进行自动排课、管理用户信息、教学计划和留言信息,除此之外,老师用户几乎拥
13、有管理员全部权限。和管理员用户相比,老师用户含有权限功效如表1所表示。表1 老师用户和管理员用户权限对比表基础信息管理教学计划管理自动排课课表信息数据处理留言板用户管理相关我们管理员老师注:代表用户拥有该模块全部操作权限,代表用户拥有该模块部分操作权限,不做标注代表用户没有此模块任何权限,如老师用户在教学计划管理模块只能对教学计划进行查询,而不能对教学计划进行添加或删除。4.5 学生用户功效设计学生用户在试验室自动排课系统中拥有权限等级最低,能够对部分基础信息、教学计划信息进行查看,但不能对其进行添加、修改或删除操作,和管理员用户相比,学生用户含有权限功效如表2所表示。表2 学生用户和管理员用
14、户权限对比表基础信息管理教学计划管理自动排课课表信息数据处理留言板用户管理相关我们管理员学生注:代表用户拥有该模块全部操作权限,代表用户拥有该模块部分操作权限,不做标注代表用户没有此模块任何权限,如学生用户在基础信息管理模块只能查看基础信息,而不能对基础信息进行添加、修改或删除。5 系统总结本文经过对试验室排课问题研究和分析,设计了一个基于B/S架构试验室排课系统,在排课前置作业中,老师用户能够结合本身排课需求,指定教室、时间,另外基于Web使得排课作业协调、课程安排和系统维护全部能在网络任一地方进行,不再受限于特定机器或地点。即使系统完成有了一定结果,不过碍于笔者本身知识不足和自动排课问题规
15、模大、约束复杂等特点,本系统还有很多需要改善地方,如得到课表适应度低且算法复杂,没有考虑到合班问题,没有考虑人工调整课表问题。系统实现了试验室自动排课功效,为试验室自动排课提供了有利支持,下一步工作将致力于算法改善和实现手动调整上,从而提升系统实用性。参考文件1 段德亮,余健,张仁才等.C#课程设计案例精编M.北京:清华大学出版社,.132 王珊,萨师煊.数据库系统概论M.北京:高等教育出版社,.1173 李纯莲,刘玉宝.C#使用开发教程M.北京:北京交通大学出版社,.2202454 张泊平.现代软件工程M.北京:北京交通大学出版社,.085 王小科,梁冰,吕双等.C#开发经典模块大全M.北京
16、:人民邮电出版社,.27526 丁士锋.C#实用开发详解M.北京:电子工业出版社,.1531787 赛奎春.C#开发经验技巧宝典M.北京:人民邮电出版社,.6028 郑耀东.ASP.NET 2.0编程指南M.北京:人民邮电出版社,.139 陈国顺,付卫华.Net Framework类库概述J.现代情报,.23(12):5810 刘瑞新.C#网络编程及应用M.北京:机械工业出版社,.194274Design and realization of curriculum arrangement in laboratoryJi Jia-rui Abstract:In order to increase
17、 resource utilization rate of laboratory, and to ease labour intensity of staff members as well as widen the reaction and communication among students, staff members and teachers, the system raised the method of substituting mannual curriculum arrangement by computers and designed a curriculum arran
18、gement in laboratory via computer. The system designed a fuctional construction of curriculum arrangement in laboratory, through the research and analysis on the process of mannual curriculum arrangement. Based on this construction, the system offers and also makes use of backtracking algorithm to achieve curriculum arrangement in laboratory. The result verified that this method has high feasibility and validity.Key words:export and print schedule;curriculum arrangement;backtracking algorithm