大型考试考务管理系统设计与实现
2017-05-17周伟吴颖徐昶
周伟+吴颖+徐昶
摘 要:硕士生入学考试、博士生入学考试、在职攻读硕士学位全国联考、同等学力全国统考等大型考试具有考生来源复杂、监考队伍庞大、组考难度较高等特点。本文利用基于构件的云开发的模式,构建了一个功能强大、数据精确、扩展灵活的智能考务管理系统。通过网上报名、微信报名、负责人推荐等多种报名方式,根据监考报名人信用等级,智能编排监考,自动生成考务培训表、试卷交接表、酬金签收表。这些功能大大增强了监考队伍建设,提高了排考工作效率,提升了考务管理水平。
关键词:基于构件;云开发;管理信息系统;网上报名;智能排考
中图分类号:G424.74 文献标志码:A 文章编号:1673-8454(2017)07-0069-03
引言
大型考试,如硕士生入学考试、博士生入学考试、同等学力全国统考、在职硕士全国联考等,具有考生来源复杂、监考队伍庞大、考务要求较高等特点,这使组考工作面临严峻的挑战。
考生来源复杂,素质参差不齐。不同的考试考生构成不同,硕士生入学考试多是应届毕业生,相对简单,也最守纪律;博士生入学考试的考生既有应届毕业生也有在职考生,来源相对复杂,组考有一定难度;参加同等学力全国统考及在职硕士全国联考的考生,属于社会在职人员,社会化程度高,素质参差不齐,对考试纪律相对漠视,违规违纪现象严重,给组考造成很大压力。
监考队伍庞大,考务要求较高。大型考试对监考人员的考务工作要求较高,整个考试过程承担的工作量很大。以硕士生入学考试为例,北京师范大学考点平均每年约有4000名考生。为完成组考工作,需要标准考场约135个,监考教师约270名,考务人员约50人。监考人员需要思想觉悟高、坚持原则、遵守纪律、责任心强、有正义感的各招生单位和教辅单位的正式工作人员。大型考试一般在休息日举行,且到岗时间早,工作时间长,加之监考酬金不高,学校组考部门找到足够多的合格的监考人员难度较大。
考试种类繁多,排考标准不一。不同类型的考试对考场的编排要求不尽相同,一般而言,每个标准考场要编排两名监考人员,监考编排不仅要确保一名监考人员最多编排到一个考场,而且要按性别和监考经验等指标进行合理配对优化,同时要尽量不编排以往考试中差评的监考员。同时,为应对监考人员因特殊原因不能按时参加监考,需要制定应急预案,进行监考人员的适时调整和替补。另外,每种考试的试卷收发流程虽然相似,但每种科目的考场记录表、试卷和答题卡的装袋要求不尽相同。繁杂的排考工作耗费组考人员的大量精力,不利于整个考务工作的组织和实施。
现有的考务管理系统主要解决等级考试的考试报名、成绩分析等问题,而未对真正的考务工作,如监考报名、监考编排、考务用表等,进行信息化管理化。[1-6]本文研发了一种面向大型考试的考务管理系统,通过网上监考报名、智能编排监考、精确考务报表等技术措施,提高组考和排考的工作效率,让考务组织部门把精力集中到考务细节规范中,从而提高考务管理水平,保障考务安全。[7]
一、开发平台和支撑环境
本文采用基于构件的云开发平台构建大型考试考务管理系统。[8]基于构件以“组装而非编码,集成而非实现”的思想进行系统开发,能改善系统质量,提高系统开发效率,降低软件开发成本。[9]云开发平台提供在线集成开发环境,只要通过浏览器可以高效地在线组装业务构件,随时随地开发和维护应用,进一步提高了响应业务变化的速度,更加契合敏捷开发的理念。[10]
本系统采用B/S架构,用Windows Server 2012作为服务器系统,IIS作为应用服务器,SQLServer2012作为数据库服务器。系统采用ASP.NET MVC5+Entity Framework构建底层架构,业务层采用Python与SQL混合编程实现,表示层用HTML5+AJAX技术实现。MVC模式把一个Web应用分解为Model、View、Controller,使复杂项目更加容易维护。Entity Framework是一个对象关系映射(ORM)框架,使开发人员可以用领域对象管理关系数据,提高数据访问层的稳定性。Python是一门简单易学的面向对象的动态解释性语言,能够快速灵活地实现各种业务。SQL是一种高度非过程化的面向集合的数据语言,可以独立完成数据库生命周期内的全部活动,与Python结合使用,能够快速完成业务数据的持久化。
系统架构如图1所示,分为数据访问层、系统开发层、业务构件层和表示层。表示层通过HTML5和多种Javascript框架构建人机交互接口。业务逻辑层通过构件的配置、组装和集成实现事务处理、预测、计划和控制及辅助决策等功能。系统开发层负责对各类构件的配置、组装和集成,对于不能通过现有业务构件实现的业务需求,通过WebIDE开发新的构件实现。数据访问层实现业务数据的持久化。
基于构件的云开发平台使开发团队不用关心系统支撑环境的搭建和配置,只需要关注业务本身。这种开发模式提供了更有组织的复用方法,可通过业务构件的组装和集成实现大多数的业务需求,综合了“基于构件”和“云开发”的优点。
二、系统需求及数据库设计
1.系统需求分析设计
考务工作分为四个阶段进行:
第一阶段,监考报名。考试主管部门通过邮箱、微信、信息门户等平台向全校教师发布“关于选聘教师参加监考工作通知”。教师通过信息门户接口、企业微信接口或直接登录考务管理系统查询考试信息,申请监考。教师也可向各部门考试推荐人申请监考。
第二阶段,监考编排。系统从申请人中自动选择经验丰富的申请人确定监考名单,选取经验最丰富的申请人作为各考场的主监考。副监考的性别尽量与主监考不同,每个考场监考人的总经验应尽量平均。每一名申請人最多编排到一个考场。考务负责人对自动编排的结果进行调整。
第三阶段,监考培训。考务管理员可导出监考人联系方式信息,通过短信平台向各监考人发送培训通知,接收监考申请人反馈并调整监考名单。系统根据调整后的监考名单生成培训门帖、各考试大楼签到表、考务袋签等报表。培训结束之后,统计未参加培训名单,并综合考虑确定最终监考名单。
第四阶段,试卷交接。考务人员于考试当天将试题从保密室运送到各考试大楼考务办,各考场监考教师从考务办领取试题。考试结束之后,监考教师将试卷和答题卡按要求封装并送回考务办,各楼教务办将各楼试卷清点无误后交回保密室。试卷的领取和交回均应在试卷交接表上签字。
根据以上分析,本文系统共有管理员、推荐人、教师三种角色,16个主要功能模块,如图2所示:
2.数据库设计
根据系统的需求分析,遵循数据库的设计范式,减少数据冗余,保证系统的稳定性、安全性和运行效率,共设计16个数据表实现各业务数据的持久化,如表1所示。各数据表的字段在这里不再赘述。
三、系统功能与实现
1.系统的构建
采用基于构件的云开发模式,考试管理、科目设置、考生设置、考场编排等功能模块可以通过CRUD网格构件开发工具配置完成;试卷交接表、考务培训表、监考酬金表等功能模块可以通过数据报表构件开发工具配置完成;数据导出、结果查询功能模块可以用SQL网格构件工具配置完成。
对于监考编排、移动端监考报名等一些较为复杂或个性化的功能模块可以用WebIDE在线编写Python脚本实现。如用Python实现一个表示算法1的WebAPI,然后在考试管理的CRUD网格构件中配置一个按钮引用此接口,即实现了智能编排监考功能。(见图3)
这种开发方式结合的基于构件开发和云开发的优势,很好地契合了敏捷软件开发的理念,大幅提高了系统的开发效率,减轻了系统的维护负担,提升了构件质量,降低了系统整体成本。
2.系统的功能
通过网上报名、微信报名、负责人推荐等多种报名方式,根据监考人信用智能编排监考,自动生成考务培训表、试卷交接表、酬金签收表等功能,提高了组考和排考的工作效率,加强了监考队伍建设,提升了考务工作的管理水平。
(1)网上申请监考。教师可用浏览器、微信等工具通过系统了解监考的报名条件、工作要求、监考费信息,决定是否申请监考工作。各单位的教务秘书可通过系统推荐教师申请参加监考工作。监考人信息一经录入系统,申请参加之后的监考工作只需核对信息。通过与微信企业号的集成,教师信息可在登录时由企业号转发,无需录入。
(2)智能编排监考。根据监考人信用智能确定监考名单,并根据性别、监考经验自动优化主监考和副监考的工作组合。算法1是一种贪心算法,实现了身份优先(在职教师优于退休教师,教师优于学生)、级别优先(管理员提高工作特别认真监考教师的级别)、经验优先(监考次数多者优先)、推荐人级别优先(同等情况具有高级别推荐人者优先)的考场监考编排方法。其中监考次数在系统里自动累积,监考人级别、推荐人级别由管理员维护。自动编排之后,管理员可对编排结果进行调整。管理员还可以把在监考工作中出现重大失误的监考人列入黑名单,从而禁止该教师申请之后考试的监考工作。
(3)自动精确报表。自动生成考试概要表、培训表、试卷交接表、酬金签收表等考务报表,所有的报表数据均可以导出为Excel文件。考试概要表能让管理员快速了解各考试大楼的考生、考场、监考人分布情况。培训门帖按姓名拼音顺序显示监考人员,能让监考教师在培训时快速找到座位;考務袋签显示考场号、考场名称、主副监考及每场考试考生人数,让监考教师知晓工作时间。试卷交接表则规范了考务细节,确保考务安全。
本系统首次应用在2012年同等学力全国统考北京师范大学考点中。五年来,本系统已服务硕士生入学考试、博士生入学考试、在职攻读硕士学位全国联考、同等学力全国统考、大学英语四六级等大型考试共20多次。
结束语
本文用基于构件的云开发模式构建了一个功能强大、数据精确、扩展灵活的智能考务管理系统,简化了工作流程,提高了工作效率,规范了监考队伍,提高了信息化水平,切实解决了大型考试排考复杂、组考难度大的现实问题,大大提升了大型考试考务组织工作的管理水平。
参考文献:
[1]李治军.基于Web的考务管理系统设计与实现[D].中南大学,2009.
[2]贾艳丽,刘岩.基于SSH框架的考务管理信息系统的研究开发[J].计算机与现代化,2011(10):126-128,131.
[3]张韵.高校考务管理信息系统的设计与实现[D].云南大学,2011.
[4]李传伟,陈建明.考务管理信息系统的设计与实现[J].计算机工程与设计,2004(9):1576-1578.
[5]赵辉,陆冷飞.基于知识管理的高校考务管理系统的研究与实现[J].中国教育信息化,2008(5):39-42.
[6]谭武.基于Web的考务管理系统的设计与实现[J].中国教育信息化,2012(11):37-39.
[7]马小侠,赵潇,杨巍.细节规范是考务安全的重要保障[J].学位与研究生教育,2011(1):63-67.
[8]周伟,蔡莹,王天楠,陈平.基于构件的管理信息系统云开发平台研究[J].中国教育信息化,2016(7):28-32.
[9]Roger S. Pressman. Software Engineering: A practi-tioners Approach [M]. Beijing: China Machine Press, 2009.
[10]徐鹏,陈思,苏森.互联网应用PaaS 平台体系结构[J].北京邮电大学学报,2012(1):120-124.
(编辑:王天鹏)