王晓茹+蔡昌
作者简介:王晓茹(1985-),女,广州民航职业技术学院,硕士。研究方向:教育管理。(广东 广州/510403)
蔡昌(1971-),男,广州民航职业技术学院副教授,硕士。研究方向:软件系统架构。(广东广州/510403)摘要:本文分析了现代计算机网络技术条件下,职业院校在线网络考试中实时保存考生答案和剩余考试时间的问题,给出了一种利用Ajax解决这一问题的具体实现路径。
关键词:在线考试;Ajax;实时保护
中图分类号:G717 文献标识码:A文章编号:1005-1422(2014)07-0182-03一、引言
考试是衡量教育教学水平的主要手段,有教学就有评价,有评价就有考试,这是职业院校教育教学规律所决定的,也是师生在教学过程中不可回避的重要环节。当前,职业教育教学改革不断深入,过程性评价与终结性评价相结合的新型教学评价方式的广泛应用,推动着职业教育课程教学质量评价的内容、方式、方法、手段不断更新,越来越体现职业教育教学质量评价的多元评价特色,但考试始终是课程教学评价的一种重要手段,因而仍然是目前职业院校课程教学质量评价和学生学习成果认定的主要方式。
随着计算机技术和网络技术的迅速发展,职业院校教学评价信息化和网络化也将成为必然趋势,以评价学生学习成果为主要内容的课程考试正经历着从无纸化到网络化的飞跃,网络的开放性和分布性特点以及基于互联网的巨大计算能力,使在线网络考试突破了时间和空间的限制。相对于传统考试,在线网络考试在组卷、组考、评判、统分等环节都极大地节省了时间、人力、物力、财力,也更具有客观性、公正性,使考试的信度效度更高,更准确地反映教师课程教学质量和学生学习效果。在考务工作的具体组织实施过程中,它可以免去组织者大量的临考准备工作,试卷可以根据试题题库中的内容由计算机即时自动生成;组织者也无须做考后的阅卷、统计、分析工作,计算机可以自动判卷,直接把考生成绩送到数据库中进行自动统计、排序、汇总。实现无纸化考试,大大提高了工作效率。由于试卷是随机组成的,不存在试卷的泄密和考试作弊问题,使考试的公平性、答案的安全性、评判的公正性得到有效的保证。因此,无论是在高等学校、职业院校还是企业,在线网络考试已越来越受到人们的重视。可安全顺利地完成学业考试、技能考核、岗位评估、产品认证、客服测评、能力测试、销售选拔、渠道考核、招聘评鉴、新员工入职考评、需求调研,问卷调查以及知识竞赛等一系列需要考核评价的工作。
在线网络考试系统一般包括网上报名、题库管理、试卷管理、在线考试、成绩管理等多个模块。由于在线考试系统完全依赖于计算机网络技术,一旦网络出现问题即对考试造成直接影响,给考生带来不可预计的损失。因此,在设计在线考试功能时,需要考虑的问题比较多。比如,考生在考试过程中,当遇到意外情况如数据库连接失败、交卷失败、网络中断等情况时,如不及时加以处理,就会造成数据丢失,导致考生考试失败的现象。因此实时保存考生的答题情况和考试用时是在线网络考试首先要解决的问题。
目前,解决上述问题的方案有很多种,较为典型的是在考试开始时把服务器的时间发到客户端,考试进行过程中由客户端脚本来完成倒计时工作。由于客户端脚本安全性低,很容易被修改,所以缺乏计时的准确性,因此,服务器必须每隔一段时间向客户端发送时间,来校正客户端显示的剩余时间,也就需要频繁地刷新客户端考试页面,这在一定程度上是会影响考生正常考试的。实时保存考生答案问题也按照这样的技术路线解决,考生需要等待页面回送后才能做下一道题,这将导致考生无法将考试进行下去。另外一种解决方案是采用XML技术,把试卷下载到客户端机器上进行答题并实现后台交卷。这在网络状况不好的情况下非常有用,但如果中途需要更换机器,则无法继续考试。为了解决这些问题,我们引入了Ajax技术。
二、Ajax概述
1.Ajax概述
Ajax 是指异步 JavaScript 及 XML(Asynchronous JavaScript And XML)。它不是一种新的编程语言,而是一种使用现有标准的新方法,它由几种技术组合而成,包括:基于XHTML和CSS标准的表示;使用DocumentObjectModel进行动态显示和交互;使用XMLHttpRequest与服务器进行异步通信;使用javascript进行绑定。其核心为javascript、XMLHttpRequest和DOM,可以让开发人员构建基于Ajax技术的Web应用,让客户端脚本直接与Web服务器进行异步数据交换,数据主要以XML形式进行传输。
2.Ajax工作原理
Ajax在用户和服务器之间加了一个中间层,这个中间层就是Ajax引擎,它引入了XMLHTTP组件中的XMLHttpRequest对象,使用户操作与服务器响应异步化。比如用户填写表单并提交,在传统的Web交互方式中,整个表单发送到服务器,服务器将它转发给处理表单的脚本,脚本执行完成后再发送回全新的页面。当然,在服务器上的脚本或程序处理和返回新表单时用户必须等待。屏幕变成一片空白,等到服务器返回数据后再重新绘制。图1Ajax工作原理这就是交互性差的原因,用户得不到立即反馈。Ajax引入了中间层,就是把javascript技术和XMLHttpRequest对象放在Web表单和服务器之间。当用户填写表单时,数据发送给一些javascript代码而不是直接发送给服务器。相反,javascript代码捕获表单数据并向服务器发送请求。同时用户屏幕上的表单也不会闪烁、消失或延迟。也就是说,javascript代码在幕后向服务器发送请求,用户甚至不知道请求的发出。更强大的是,请求是异步发送的,就是说javascript代码(和用户)不用等待服务器的响应。最后,服务器将数据返回javascript代码,后者决定如何处理这些数据。结果就是一种在互联网上的动态、快速响应、高交互性的体验。
·问题探讨·职业院校基于Ajax的在线考试实时保存技术的设计与实现三、设计与实现
1.设计思想
在数据库方面,建立考试主表,记录考生该次考试的总体情况,字段包括:ExamID、 UserID、剩余考试时间等;考试从表,记录该次考试抽出的题目及考生给出的答案等。当考生登陆考试系统时,系统根据其报名专业、事先定好的题数构成、难易度比例等规则,从题库随机抽取一套试题,并产生考试总时间,传给客户端;客户端进行倒计时,定期(比如10秒)将考生答案由Ajax传送给服务器端保存,并返回剩余考试时间,当时间结束时,自动强制提交给服务器,考试结束。
2.关键代码
客户端定期向服务器发送Ajax请求,传入用户答案,返回剩余考试时间。关键代码如下:
function saveData(var ExamID,var sAnswers )
{
var xmlHttp;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{// Internet Explorer
客服热线:400-656-5456 客服专线:010-56265043 电子邮箱:longyuankf@126.com
电信与信息服务业务经营许可证:京icp证060024号
Dragonsource.com Inc. All Rights Reserved