基于Web的考务管理系统的设计与实现

2012-10-19 08:57:54谭武
中国教育信息化 2012年11期
关键词:考务考场科目

谭武

(广东省商业职业技术学校,广东 广州 510360)

基于Web的考务管理系统的设计与实现

谭武

(广东省商业职业技术学校,广东 广州 510360)

随着教学管理模式的改革与发展,以及学校办学规模的逐渐扩大,考务管理工作的复杂度和难度都在大幅度地提高,如何高效、无误地完成考务工作,给考务工作者留下了一个很大的难题。本文提出了人工与自动相结合的考场编排算法,并采用SSH框架与Ajax技术设计并实现了基于Web的网络化、智能化的考务管理系统。

考务管理;考场编排;算法;SSH框架;Ajax技术

一、引言

随着教学管理模式的改革与发展,以及学校办学规模的逐渐扩大,考务管理工作的复杂度和难度都在大幅度的提高,如何高效、无误地完成考务工作,给考务工作者留下了一个很大的难题。

目前大部分学校的考务管理工作还是停留在人工操作上,考场编排容易出现漏排、多排和冲突等情况。尽管有一部分学校已经启用了信息化的考务管理系统,但这些系统往往存在着诸多不足,主要表现在:系统缺少自动安排考试的功能,考试安排的主要工作还是要靠人工完成;系统缺少检验安排结果的功能;系统的操作极其繁琐,相关信息的提示不足,安排考试时仍需要翻查各种文件资料和做各种标记。

正是由于人工安排的困难和现有系统存在的诸多不足,开发一个智能化的考务管理系统是非常有必要的。

二、考务管理系统的需求分析

学校的考试类型可分为两大类:第一类是学期教学计划内考试,主要以期末考试、学科补考的形式出现,由学校自行组织;第二类是国家、省、市级的统一考试,如全国大学生英语四、六级考试,省级或国家级计算机等级考试等,这类考试一般是校外组织、校内实施,[1]而本系统的设计主要是针对前者。

考务管理系统的主要功能是实现学校的考务管理。该系统分为四个模块:用户管理模块、考试数据管理模块、考场编排模块和查询打印模块。用户管理模块的功能主要是添加、删除系统的用户,并设置系统用户的权限。考试数据管理模块是考务管理系统的基础模块。该模块的功能是管理各种用于编排考场的信息,主要包括教学计划、科目、班级、课室、考试时间、试卷、监考员等。该模块又可以分为教学计划管理、科目管理、班级管理、课室管理、考试时间管理和监考员管理等子模块。考场编排包括自动编排和人工编排。自动编排:系统根据考试的基本信息,自动完成所有考试科目的考试安排工作,包括安排考试时间、考试班级、考场、监考员等,并自动完成校对工作。人工编排:考务员根据考务管理系统提供的考试基本信息的提示信息,安排每一个考试科目的考试时间、考试班级、考场、监考员等,并自动完成校对工作。查询打印模块的功能是查询考试、考场信息和打印考场安排的各种信息。考务管理系统的功能结构如图1所示。

三、考务管理系统的系统架构设计

传统的开发模式,由于开发出来的Web应用系统结构模糊不清,可扩展性差,无法重用,而且系统难于维护和升级,已被广大开发者所遗弃。J2EE是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。J2EE为搭建具有可伸缩性、灵活性、易维护性的商务系统提供了良好的机制。

本系统的架构是基于J2EE的三层架构,三层即数据层、业务层和表现层。系统采用SSH框架来实现这三层的分离与合作。SSH框架整合了Struts、Spring和Hibernate三大主流开源框架,分别应用于系统的表示层、业务逻辑层和数据持久层,实现了层间解耦,具有高可扩展性、高性能和高安全性的特点,使J2EE企业级开发更加快捷高效。[2]考务管理系统的层次结构及基本业务流程如图2所示。

下面以科目管理子模块为例,说明系统的实现原理。

在表示层中,首先用户通过“科目管理页面”提交管理科目的请求(Request),然后Struts根据配置文件(strutsconfig.xml)将ActionServlet接收到的Request委派给“科目管理Action”处理。在业务层中,管理服务组件的Spring IoC容器负责向“科目管理Action”提供相应的业务组件“科目管理”,通过业务组件“科目管理”所提供的方法来实现业务逻辑的处理。同时,Spring通过依赖注入的方式为业务组件“科目管理”注入“科目DAO”组件,从而通过“科目DAO”组件提供的方法对“科目”组件进行操作。而在持久层中,则依赖于Hibernate的对象化映射,将对“科目”组件的操作映射为对数据库的操作,从而实现了对数据库中相对应的表“科目”的更新。

为了提高系统的易用性、改善用户体验,系统在SSH框架之上结合Ajax技术开发实现。Ajax(Asynchronous JavaScript and XML)[3]是异步JavaScript和XML的简称,是一种能以异步的方式与服务器端进行交互的客户端Web开发技术。

Ajax是多种技术的一种综合应用,包括了JavaScript、XHTML、CSS、DOM、XML和XSTL,以及最重要的一个对象XMLHttpRequest。其中,使用XHTML和CSS实现数据信息的统一化、标准化显示;使用DOM实现浏览器端丰富的动态显示效果以及与服务器端的交互;使用XML和XSTL进行浏览器和服务器两端的数据信息交换与处理。[4]

四、考场自动编排算法的设计

考务管理系统的主要工作是编排考场,在考场的编排方式上,一般分为自动编排、手工编排和自动与手工编排结合等。[1]自动编排考场需要设计编排的算法,由于考场编排工作的复杂性和特殊性,导致在实现编排算法时受到较多的限制,所以一般的考务管理系统并没有实现自动编排的功能。手工编排考场的关键是实现考场相关信息的动态显示和编排结果的验证、核对。手工编排对考务管理人员的逻辑思维能力和思维的严密性提出了较高的要求,否则编排就非常容易出错。所以,在考场的编排方式上最好是采用自动编排和手工编排相结合的方式。下文将详细介绍自动编排算法的设计与实现。

考场自动编排算法的设计应遵循以下原则:(1)正确性。考场编排所需的数据,包括科目、班级、考场、监考员,必须保证是正确的。其次,考场编排的结果要保证不能存在冲突。(2)合理性。第一,在安排考试时,某个班的考试不能安排得过于集中,考试应合理分布。譬如,不能出现像一个班第一天有2次考试,第三天也有2次考试,而第二天却1次考试都没有的情况。第二,教师的监考次数应基本持平,不能出现有些教师的监考次数较多,而某些教师的监考次数较少的现象。第三,考场的安排应尽量合理,避免出现有些考场空余座位较多,而有些考场则座位不够的情况。(3)高效性。指的是考场自动编排算法的设计应保证系统能在较短的时间内编排完成,避免出现让用户等待的时间太长的情况。

除了以上原则外,考场自动编排算法的设计还要考虑以下实际情况。

班级人数超过一定数量(一般为25人)时,同一班级同一个科目的考试将分为两个考场进行,学号为单号的一个考场,其余的在另外考场;同一个考场同一时间段可以同时进行两个班级不同科目的考试,也可以只进行一个班级一个科目的考试;安排考场时,班级人数不能多于课室所能容纳的人数;教师的监考次数由各个部门指定,但是所指定的监考总次数应大于或等于考试的次数;教师的具体监考任务由教务员安排,但是每个教师的监考次数不能大于各个部门指定的监考次数;尽量保证最后一时间段的考试所有班级都参加,也就是说应使得所有班级考试结束的时间基本保持一致。

基于以上设计原则与约束条件,考场自动编排算法的基本流程如图3所示。

考场自动编排算法的主要流程包括“准备数据”、“自动编排考试的班级、科目”、“手动确定考试时间段和具体时间”、“自动编排考场”、“自动编排监考员”等。“准备数据”,包括教学计划管理、科目管理、班级管理、考场管理、监考员管理等。“自动编排考试的班级、科目”,该步骤的主要任务是确定某个班级在哪个时间段考哪个科目。具体的流程如图4所示。

“手动确定考试时间段和具体时间”,该步骤的任务是由考务员最终确定考试时间段的考试安排和每个时间段的具体时间。目的是保证考试时间的合理性和考试时间的合理分布。“安排考场”,该步骤的主要任务是为考试查找并安排合适的考场。考场的安排应遵循以下原则:(1)考场的容量以够用为原则;(2)班级的人数应小于或等于考场的容量;(3)同一时间段,不能安排2个不同的班级在同一考场考同一个科目;(4)同一时间段,不能安排超过2个班级同时进行考试。具体的流程如图5所示。“安排监考员”,该步骤的任务是为每一场考试安排相应的监考员。具体的流程如图6所示。

考场自动编排算法的设计实现了考场编排的自动化与智能化,而“手工确定考试时间段和具体时间”功能的加入,又增加了系统的人性化和合理性,保证了考场编排结果的可用性。

五、结束语

考务管理系统的启用,将有利于提高学校的服务水平和管理水平,有助于提高学校的信息化水平,提高考务管理工作的效率,能满足学校考务管理工作的需要,将填补学校在考务管理方面信息化、自动化的空白,能解决实际的问题,在学校中有非常高的推广价值。☉

[1]洪流,叶红辉.高校考务管理系统的优化及实现[J].湖州师范学院学报,2008(4).

[2]郭广军,朱昭君,王剑波.基于SSH架构的课程作业与成绩管理系统[J].微电子学与计算机,2010,27(8):157-160.

[3]LiZhiqiang.Studyon ApplicationofE-BusinessSystem Based on Ajax Technology.IEEE.2010:472-475.

[4]赵永屹,宿红毅,胡韶辉.基于AJAX与J2EE的新型Web应用的设计与实现[J].计算机工程与设计,2007,28 (1):189-192.

(编辑:金冉)

TP311.52

B

1673-8454(2012)11-0037-03

猜你喜欢
考务考场科目
2024年拟在河北招生的普通高校招生专业选考科目要求发布
考试与招生(2022年2期)2022-03-18 08:10:02
研究高校考务管理信息化建设
内江科技(2021年8期)2021-12-28 20:37:06
牵牢平移手 考场稳稳走
山东:《人事考试考务服务规范》发布
考场上怎样才能写好记叙性散文
期末小考场
考场借笔
快乐语文(2018年13期)2018-06-11 01:18:28
高校学院考务管理系统的设计与实现
让讨厌的科目“牛”起来
成人高校考务管理系统存在的问题及对策探索