张亚昕
(西安铁路职业技术学院 陕西 西安 710014)
随着计算机的普及和Internet的广泛应用,以及计算机远程教育网络的建设与发展,网上教育已成为了现代教育发展的一种趋势。而考试是教育的一个重要组成部分,教育的网络化必然要求考试的网络化。计算机网络考试适合了目前社会的网络化趋势,必将成为一种必不可少的考试方式。在此背景下,文中运用先进的J2EE架构体系研究开发了一个能够进行多学科课程考试的网上考试系统,方便地实现试题的分值、难度管理,科学、快速地进行试卷分析,提高考试的效率[1-3]。
J2EE为应用Java技术开发服务器端应用提供一个独立、多用户的、可移植的、安全的和基于标准的企业级平台,在这个平台上,可以快速、容易地建立融合了Internet技术的多层分布式企业应用,简化了企业应用的开发、管理和部署[4]。J2EE保留了标准版中的许多优点,例如“编写一次、随处运行”的特性、方便的数据库存储技术,同时还提供了多数标准定义了接口,如 JNDI.JDBC,Java Mail等,在Internet应用中能够保护数据的安全模式,得到了许多厂商的产品支持;降低了开发中间层服务的成本和复杂程度,使得服务快速的展开,缩短产品开发时间,提高产品的市场竞争力[5]。
数据库是整个系统的核心,系统数据库平台的选择需要从数据容量、数据库管理功能、安全性等全面综合考虑,SQL Server数据库管理系统一方面能完全满足数据存储量和功能的需要,另一方面有较完备的数据库安全机制。系统数据库访问采用JDBC技术,JDBC是一套允许Java与SQL数据库对话的程序设计接口,它是用于执行SQL语句的Java API,是Java应用程序连结数据库、存取数据的一种机制,由Java语言编写的类和接口组成。JDBC使用已有的SQL标准并支持与其他数据库连接标准,如ODBC之间的桥接,实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口[6]。
本系统是基于B/S结构的网络应用体系,按照J2EE的体系架构,由4层组成:浏览器层、Web服务器层、业务处理层、数据层。浏览器层主要为所有用户提供登录界面,并对用户输入信息及使用权限进行验证,完成验证后转入相应的Web浏览界面;Web服务器接受到来自客户端的请求后,为不同身份的用户分发不同的浏览界面,完成与用户的交互;业务逻辑层接受Web服务器层的请求,实现网上考试系统的业务逻辑处理功能;数据库服务器负责数据的存储,并集中管理这些数据[7]。
我们设计的网上考试系统主要针对3类用户:教师、学生、系统管理员。学生、教师和系统管理员分别具有不同的权限,只有通过身份认证的用户,才可进入系统完成相应的功能。学生可以进行新用户注册,登陆系统参加在线考试,查询考试成绩。教师可以录入试题,管理题库、生成试卷、在线阅卷,统计本班次、本课程的考试成绩。系统管理员可以设置用户的访问权限、控制考试过程等[8]。如图1所示。
图1 系统功能架构图Fig.1 System function structure chart
根据系统的需要,本考试系统设计主要有3个功能模块,分别是学生模块,教师模块,系统管理员模块。
2.2.1 学生模块
1)在线考试:系统向学生提供一个在线考试的电子平台,每个考生进行身份验证后可进入考试系统,并获得一份电子试卷。考试开始后,系统自动开始考试计时,控制考试时间,并提供考试时间结束前5分钟提醒功能。考生可提前交卷或等考试时间到后系统自动交卷,对于非法退出的考生,系统也进行自动交卷处理。为了避免在考试过程中由于停电、死机等原因造成的系统故障导致考试中断,从而丢失考试信息,系统会自动对考生答完的题目保存答案。对于动态生成的试卷,系统会自动保存每个考生的试卷,当出现异常状况导致考试中断后,经管理员重置后,考生仍可以重新获得原来的试卷,在断点处继续答题,从而最大限度的保护已有的考试数据,确保考试正常进行。考试结束后,系统会对客观题部分自动进行评分并保存,以备人工阅卷。
2)成绩查询:考生可以登录自己的账号查询个人考试成绩,自己做题的答案、标准答案、教师评语等详细信息,并查询和打印参加考试课程总成绩表。
3)密码修改:该系统为每个学生查询成绩提供默认密码,学生也可以更改默认密码。
2.2.2 教师模块
1)题库管理:题库的管理是按照考试科目-章节-知识点-试题的层次关系进行,教师可预先建立章节结构。题型主要有选择题、判断题、填空题、简答题和论述题等。根据题型不同可提供不同的录入界面。每道题目的录入信息主要有题干、知识点、难度、题型、分数等。可进行试题的添加、编辑、删除、查询操作。
2)试卷库管理:试卷是考试环节中的一个重要对象,试卷库管理模块实现对历史试卷的存储和管理,教师可以浏览历史试卷,了解试卷的属性,同时也可以得到这份试卷的答案并进行打印输出等。可对历史试卷进行删除,将已经不适应考试需要的试卷删除,确保考试系统考试的科学性、合理性。
3)试卷生成:试卷生成部分包括手动组卷和自动组卷两种组卷方式。手动组卷是组卷老师人工抽取出满意的试题,组成一份试卷,存入到数据库中。因此试卷难度、分数就由组卷老师在选择试题时进行人工控制。试卷生成后,教师也可以根据客观需要对试题进行修改和删除。自动组卷是教师根据自己对试卷的要求,对题型、难度、知识点、题量、分值等指标提出一定的要求,系统按照一定的组卷算法进行自动组卷,使其各项指标的实际值与教师提出的目标值尽可能接近,最大限度满足教师的需求。若是需要动态生成试卷,教师只需设定好试卷相关参数,如:考试科目、题型、知识点、分值等,系统将在学生考试时自动到题库里随机抽题生成试卷信息。
4)试卷批阅模块:该模块可对学生做完的试卷进行批阅,包括自动阅卷和手工阅卷。自动阅卷:当学生提交考试试卷后,系统根据评分规则和标准答案负责对客观题部分进行成绩计算,如选择题、判断题等。手工阅卷:教师选择手工阅卷,系统查询出要批改的试卷,显示出主观题未批阅考生试卷、考生答案及标准答案;根据考生答题情况和正确答案,对主观题部分如简答题、论述题等进行主观批改。
5)考试成绩统计:系统可按科目和班级统计平均分、最高分、最低分、个分数段考生人数和考试通过人数;也可统计试卷的信度、效度、平均难度等指标。考务人员或教师可以查询、统计和打印成绩统计结果,为以后教学提供参考依据。
2.2.3 系统管理员模块
1)人员管理 系统设置不同的用户有不同的访问权限。系统管理员可以对所有用户进行管理,系统管理员也可以添加教师、修改教师信息、删除教师。系统管理员选择学生并将其添加为考生。也可以将管理权限授权给教师添加修改考生信息。
2)考试管理 系统可以实时监测考试情况,包括应考人数、实考人数、缺考人数、提交试卷人数。并且当考试过程中出现异常情况时,考务管理员可以更新学生的IP地址绑定允许学生重新登录,保证学生可以从断点处继续进行考试。
3)资源管理 对所属考试课程的学习资源,系统管理员可以修改学生的使用权限,在考试过程中,禁止学生使用。当考试结束后,恢复学生对这些资源的使用权限。
控制考试时间,是考试过程中不可缺少的条件,本系统中当点击开始答题按钮后,系统自动开始倒计时,一旦剩余时间用完,系统会自动提交试卷。时间控制功能部分伪代码如下:
其中timeaa为考试所用时间,以分钟为单位。
自动组卷界面,教师可以设定好试卷的相关参数,如:考试科目,试卷由哪些题型组成即可。当确定一切试卷参数后,系统会自动进行判断是否合法及题库里的试题是否够本次试卷所要求的题目量等等信息,并自动到题库里进行随机抽题生成试卷信息,系统自动生成满足条件的试卷。
本系统选择J2EE技术作为系统的整体架构,采用客户层、Web层、业务层和数据层的4层结构来构建网上考试平台。通过对系统全面细致的分析,完成了系统主要功能模块和数据库的设计,并实现了在线考试,智能组卷,自动阅卷人工阅卷相结合,考试结果分析,考试监控等功能。从系统运行情况来看,效率很高,完全能够进行有效的考试,极大改善了教学环境,减轻了教师工作强度。
[1]王育勤,朱卫东,陈楚湘,等.基于NET的考试平台管理系统的设计与实现[J].计算机工程与设计,2007,28(10):2475-2477.
WANG Yu-qin,ZHU Wei-dong,CHEN Chu-xiang,etal.NET based test platform management system design and implementation of[J].Computer Engineering and Design,2007,28(10):2475-2477.
[2]王萍利.基于J2EE的高职院校教学管理信息系统的设计与实现[J].现代电子技术,2011(22):88-89,94.
WANG Ping-li.Design and implementation of vocational college’s teaching and administrative information management system based on J2EE[J].Modern Electronics Technique,2011(22):88-89,94.
[3]王明明,郭昌言,刘从军.基于J2EE的动态配置开发平台研究与实现[J].现代电子技术,2010(6):61-64.
WANG Ming-ming,GUO Chang-yan,LIU Cong-jun.Research and implementation of dynamic configure development platform based on J2EE[J].Modern Electronics Technique,2010(6):61-64.
[4]贾振华,褚燕春,何志学.基于J2EE的网上考试系统的设计与实现[J].北华航天工业学院学报,2008,18(6):12-14.
JIA Zhen-hua,ZHU Yan-chun,HE Zhi-xue.J2EE based online examination system design and implementation[J].Journal of North China Institute of Aerospace Engineering,2008,18(6):12-14.
[5]陆垂伟,周松林,李芳,等.基于J2EE的网络考试系统的设计与实现[J].计算机应用与软件,2006,23(10):139-149.
LU Chui-wei,ZHOU Song-lin,LI Fang,et al.Design and implementation of a network examination system based on J2EE[J].Computer Application and Software,2006,23(10):139-149.
[6]思志学.J2EE整合详解与典型案例[M].北京:电子工业出版社,2008.
[7]王蓉,汪诗林.基于J2EE架构的网络考试系统的设计与实现[J].计算机工程与应用,2005(28):211-214.
WANG Rong,WANG Shi-lin.Design and implementation of based on J2EE architecture of network test system[J].Computer Engineering and Applications,2005(28):211-214.
[8]杨秀梅.基于Asp.net的网上考试系统的设计与实现[J].实验室研究与探索2007,26(2):4538-4540.
YANG Xiu-mei.Based Asp.net design and implementation of online examination system[J].Laboratory Research and Exploration,2007,26(2):4538-4540.