当前位置:文档之家› 在线考试系统设计与关键技术

在线考试系统设计与关键技术

在线考试系统设计与关键技术研究孙久运(中国矿业大学环测学院,江苏徐州 221008)摘要:论述了在线考试系统的目标、体系结构与功能,探讨了在线考试系统中部分关键技术的实现方法。

关键词:在线考试系统;B/S结构;ASP1 引言目前信息技术已在教育中获得了深入的应用,成为20世纪中期以来推动教育发展的主要动力之一。

其中基于Web的在线考试是近年教育信息化中的一个亮点,它借助于遍布全球的internet网,对考试的试题管理、出卷、组织形式、规模、评定、考场管理上进行了全面的改革。

与传统考试相比基于Web技术的网络考试系统考试既可以在本地进行,也可以在异地进行,大大拓展了考试的灵活性;试卷可以根据题库中的内容即时生成,采用大量标准化试题,用计算机判卷,大大减少了教师出题和判卷等繁重工作的工作量;还可以直接把成绩送到数据库中,进行成绩统计、排序,试卷分析等操作[1]。

此外还可以使用户在网上学习过后及时检验自己的学习效果,发现自己的不足,使学生的学习效率得到很大的提高。

这样考试的便捷性、公平性、对学习的促进性可以得到有效的保证。

由于在线考试的优越性,采用网络考试方式将是考试的发展趋势。

但在线考试系统在网络信息安全、考试内容异构处理、并发和不规范操作、功能的全面性等方面还存在着不足。

因此,研究与解决在线考试系统所存在的问题是很有必要的,本文对在线考试的整体解决方案进行了分析,提出了安全、内容等方面相关的解决方法。

2整体解决方案2.1 系统目标(1)全面兼顾系统力求能通过网络实现纸笔考试的所有环节,能完成纸笔考试能进行的考试内容,这是在线考试的基础,否则就是不完备的。

(2)良好的开放性和通用性不局限于单一类型或单一科目、不局限于单一网络,考试与管理界面美观、简洁,不需要特殊的培训即可进行。

(3)安全可靠提供严格的用户级别、身份验证,进行存储与传输加密,具有操作故障提示、数据自动存储等机制;采用成熟的产品与技术,不盲目追求新颖,保证系统运行稳定、安全可靠。

(4)可扩展与升级提供外部数据接口,方便与其它系统共享数据,能在系统升级的同时保证数据的继承与一致。

(5)自动化程度高系统具备考生身份自动验证、随机抽取试卷,能自动存储、计时、交卷与评卷, 保证考试的公平、规范与快捷高效。

2.2 体系结构分析在线考试系统运行模式或体系结构主要有两类:客户机/服务器(C/S)模式和浏览器/服务器(B/S)模式。

C/S模式是两层应用结构模式,数据库(如试题库)放在远程服务器上,应用软件在客户机上,客户机端软件不但要完成用户交互和数据显示工作,而且还要完成对应用逻辑的处理工作,即用户界面与应用逻辑位于同一平台上。

因此编程工作主要集中在客户端,是“胖”客户端模式,对于考试、管理、监控等要编制不同的客户端软件,在应用时需要安装。

C/S结构在技术上虽然很成熟,但该结构存在灵活性差、升级困难、维护工作量大和系统安全性差等缺陷,已较难适应当前信息技术与网络技术发展的需要[2,3]。

B/S结构,由客户端(Web浏览器)、Web服务器、数据库服务器(如试题库)三层体系结构组成,甚至多层结构。

三层体系结构的特点是用户界面与应用逻辑位于不同的平台,用户不能直接与数据库打交道,用户的请求由应用服务器处理后,从数据库提取相应数据返回用户。

中间应用逻辑层是整个系统的核心,软件开发主要对应用服务软件的开发,应用服务器软件可以根据处理逻辑的不同划分为不同的模块,使客户端应用程序在需要某种应用服务时只与应用服务器上处理这个应用逻辑的模块通讯,一个模块能够同时响应多个客户端应用请求,而在客户端与数据库服务端不需要安装软件。

三层体系结构使系统的性能、安全性、可扩展性有了很大的提高,因此具有系统维护升级方便、跨平台操作、具有良好的开放性和可扩充性以及系统安全性等优点。

所以目前的在线考试系统一般选择B/S结构。

鉴于ASP/ADO技术具有嵌套灵活、脚本安全、功能可扩充、数据库访问亲善和浏览器无关等特点, 笔者在开发在线考试系统时选择B/S模式,采用Microsoft提出的基于ASP/ADO技术的Web解决方案。

图-1 基于B/S的三层网络体系结构2.3 功能结构一个完善的在线考试系统应能实现传统考试所能完成的工作,还应优于传统考试所能达到的效果,根据这个原则和上述系统目标,系统的主要功能模块如下:图-2 网络考试系统功能结构3 相关技术解决策略在线考试系统关键技术主要在于以下各方面的保障:安全性、公平公正性、试卷内容的全面性。

对于以上三方面的每一方面又有更加细化的内容,由于设计理念、开发技术、操作系统、应用需求的不同的致使解决方案也不尽相同。

本文不可能全面涉及,下面仅对基于ASP技术的在线考试中的一些问题进行探讨。

3.1 键盘与鼠标右键的屏蔽为了避免考试中一些错误的操作导致考试的失败,往往需要对键盘与鼠标右键进行屏蔽。

在ASP中可以应用JavaScript语言来解决这一问题,代码如下:<script language=javascript>function keydown()//屏蔽键盘{event.keyCode=0;event.returnValue=false;}function click() //屏蔽鼠标右键{event.returnValue=false;}document.oncontextmenu=click;</script>若要让键盘中的一部分可以键可用,可在函数keydown()函数中增加以下代码:event.ctrlKey;//Ctrl键可用event.keyCode==80;//PrtSc键可用3.2 取得客户端真实IP地址进行考试监控时,有时获取客户端真实的IP地址是必须的,可以应用VBScript语言编写如下代码来获取。

function checkip_trueip()getclientip = request.servervariables("http_x_forwarded_for")if getclientip = "" thengetclientip = request.servervariables("remote_addr")end ifend function3.3 随机出题dim S1(),Sn(201)sub GetRndA(byval imax,byval iget) '从imax条记录中随机抽出n 条记录, 并将序号放在S1()中dim n,iRnd,bFlag,bFlag1bFlag=Truebflag1=trueiRnd=n=0n=0do while n<igetRandomizeiRnd=Int(imax*Rnd(imax)+0)+1if bFlag=True thenS1(0)=iRndSn(n)=nbFlag=falsen=n+1elsebflag1=truei=0do while i<nif iRnd=S1(i) thenbflag1=falseexit doend ifi=i+1loopif bflag1=true thenif n>=iget then werqif n<=0 then sdfS1(n)=iRndSn(n)=nn=n+1end ifend ifloopend sub3.4 特殊内容的输入<script language =javascript>var WbIsIE5 = (erAgent.indexOf("IE 5")>-1) || (navigator. userAgent.indexOf("IE 6")> -1);var Wedit;</script><td><select class="WTBGen" onchange = "WInsertSymbol( this [this.selectedIndex]. innerText);this.selectedIndex=0;">selected="selected">符号</option> <optionvalue="&amp;#177;">&#177;</option> <optionvalue="&amp;#183;">&#183;</option> <optionvalue="&amp;#171;">&#171;</option> <optionvalue="&amp;#187;">&#187;</option> <optionvalue="&amp;#188;">&#188;</option> <optionvalue="&amp;#189;">&#189;</option> <option<optionvalue="&amp;#190;">&#190;</option>value="&amp;#247;">&#247;</option> <option</select></td><td height="100%"><input type="hidden" id="richtext" name="richtext"> <iframe class="WComposition" ID="WComposition";" MARGINHEIGHT="5"MARGINWIDTH="5" width="100%" height="100%"></iframe></td><script language =javascript>function WInsertSymbol(str1){WComposition.focus();if (WbIsIE5) WselectRange();Wedit.pasteHTML(str1);}function WselectRange(){Wselection = WBTB_Composition.document.selection;Wedit = WBTB_Composition.document.selection.createRange();WRangeType = WBTB_Composition.document.selection.type;}</script>4、结束语在线考试是今后教育改革中重要内容,基于B/S模式的在线考试系统是最佳的选择,但是由于网络发展的同时网络病毒、网络黑客,要保证在线考试的成功实施,必须要不断完善系统,提高系统的安全性与可靠性。

相关主题