实验室排课系统的设计与实现

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验室排课系统的设计与实现

作者计家瑞

指导教师赵会洋

[摘要] 为提高实验室的资源利用率,减轻管理人员的劳动强度,方便学生、实验室管理人员与教师之间的交互和沟通,系统提出了用计算机代替手工排课的方法,设计了一个利用计算机实现实验室排课的系统。通过对手工排课过程的调研与分析,设计出了实验室排课系统的功能结构,在此基础上,给出并利用回溯算法实现了实验室排课及课表的导出与打印等功能。实验结果表明,该方法具有很高的可行性和有效性。

[关键词] 导出与打印;自动排课;回溯算法

1.引言

自动排课是在传统人工排课经验的基础之上,利用计算机模拟人脑来选择合适的方案进行排课。许昌学院计算机科学与技术学院计算机机房承担着计算机科学与技术学院、软件学院的教学实验任务,由于近两年来学院的办学规模不断扩大,实验室的建设也在逐步发展。高质量的教学需要高效率的管理支持,随着开放式实验教学管理模式的改革和学院办公信息化项目的推广,传统的实验室人工管理模式已经不能满足我们工作学习的需求,无法有效合理的提高实验室资源的利用率。实验室自动排课系统的实施,不仅可以提高计算机机房的管理水平、教学质量,而且可以使实验室达到高效、有序、网络化的管理。

2.系统需求分析

排课是高等院校教学管理中一项重要而复杂的工作,自动排课算法是一个NP完全问题,集成了时间、空间的双重约束,从数学上来讲,排课问题是一个在时间、教师、学生和教室四维空间,以教学计划和各种特殊要求(如指定时间、指定教室、排课等级)为制约条件的组合规划问题,其实质是解决各个因素之间的冲突。

2.1 系统的功能分析

本系统的最终用户是学生、教师和管理员,处理要求如下所示。

(1)先排有指定要求的课程,指定要求包括指定教室和指定时间、只指定时间没有指定教室、只指定教室没有指定时间,最后对既没有指定时间又没有指定教室的课程进行安排。

(2)周五下午不能排课,排课时间为周一至周五,每天上午、下午各两节课,共十八个上课时间段。

(3)满足周课时要求。

(4)可根据使用用户的不同,将课表分为班级课表、教室课表、教师课表和总课表。

(5)管理员可以设置用户权限、用户初始密码及添加、删除用户。

(6)可分别将基本信息和课表信息导出到Word或者Excel。

(7)可打印基本信息、教学计划和课表信息。

(8)设置一个简易留言板,用户可以进行留言,管理员可以对留言板进行管理。

(9)不同级别的用户,具有不同级别的用户权限。

2.2 系统的性能需求

(1)系统使用方便、简单,基于实验室排课系统的面向对象是所有使用实验室的教师、学生及实验室管理人员,因此要求系统应该是使用方便、简单且尽量适合不同层次、不同使用习惯的用户使用。

(2)系统操作上应该简单、方便、界面简洁美观。

(3)系统在结构上应该具有很好的可扩展性,以便于以后的进一步开发和维护。

2.3 数据库设计

数据库的构架是应用系统研制成功的基石,整个系统的操作都是围绕着数据库表进行的,因而如何建立数据库表,每个表应具有哪些项目等,对节省存储内存、减少运算量、简化程序设计等都是非常重要的【1】。

本系统建立了数据库表LRS,在LRS数据库表中设立了以下几张表结构,包括教师信息表(teacher)、教室信息表(lab)、班级信息表(class)、课程信息表(course)、任课信息表(lessons)、教学计划表(plan2)、用户信息表(userinfo)、留言信息表(liuyan)、时间表(t_info)、排课单元表(unit)。

3.系统总体设计

3.1系统功能结构

本系统是一个基于WEB的实验室排课系统,它主要包括登陆界面,管理员主界面,教师主界面,学生主界面,登陆时系统会根据使用者角色的不同,系统会进入不同的操作界面,系统总体结构如图1所示。

图1 系统结构图

3.2排课流程

自动排课系统的运行是在基本信息录入完毕之后进行的,基本信息包括教师信息,教室信息,班级信息,课程信息,任课信息,因此在排课之初,需要对基本信息进行正确的录入及处理。

进入到自动排课页面,页面首先会提醒用户选择要排课的学年和学期,选择之后单击确定进行排课,单击清除对已经存在的排课信息进行清除。

自动排课算法设计的排课流程如图2所示。

图2 排课流程图

3.3登录子系统

系统设有三级用户:学生用户、教师用户和管理员用户,登录系统时,系统将判断用户身份,根据用户身份的不同进入不同的功能界面。

3.4用户管理子系统

本子系统的功能根据使用者权限的不同而有所不同。其具体的介绍如下所示。

(1)管理员用户:具有最高权限,其可以对各信息进行查看、编辑、删除、添加、导出和打印。另外作为实验室排课系统的最高级别用户,其可以进行自动排课,并能对排课进行清除。

(2)教师用户:教师作为教学活动的重要指导者和参与者,其可以对各信息进行查看、编辑、删除、添加、导出和打印。其主要特点是可以根据自身的需要指定教室,指定时间等,以提高排课的有效性。

(3)学生用户:学生是教学活动的重要参与者,在该实验室排课系统中,学生用户可以对相关部分信息进行查看、导出和打印,但是对各信息无权修改或者删除。学生用户拥有最低权限。

4.系统详细设计

4.1 母版页设计

实验室排课系统是一个基于WEB的系统,名称为LRS。

母版页可以极大地简化为站点创建一致外观的任务,2.0提供的母版页功能,为提高工作效率、降低开发和维护强度提供了有利的支持【2】。母版页设计界面如图3所示。

图3 母版页设计

在母版页中添加了Web用户控件top.ascx、menu.ascx、link.ascx、bottom.ascx。

(1)用户控件top.ascx用来显示页面顶部的logo、联系管理员、收藏本站、设置主页等内容。

(2)用户控件menu.ascx用来显示登录日期以及一些常用的链接。

(3)用户控件link.ascx用来显示到许昌学院和百度的友情链接。

(4)用户控件bottom.ascx用来显示与本系统有关的一些基本的联系方式。

4.2 登录页面设计

本系统的功能根据使用者的不同而不同,主要有三种用户:学生用户、教师用户和系统管理员。用户登录时系统将判断用户身份,根据使用者的不同进入不同的功能界面。登录界面设计如图4所示。

图4 登录页面设计

4.3 管理员用户功能设计

管理员用户作为实验室排课系统的最高权限管理者。管理员用户的管理模块主要有基本信息管理模块、教学计划管理模块、自动排课模块、课表信息模块、数据处理模块、留言板、用户管理模块和关于我们模块。

(1)基本信息管理

基本信息包括教室信息、教师信息、班级信息、课程信息、任课信息,管理员用户可以对此类信息进行查看、编辑、修改、添加或删除,其中教师信息管理界面如图5所示。

相关文档
最新文档