所有学科论文分类


基于ASP.NETAjax技术的网络考试系统的设计

时间:2015-12-03 12:08 来源:第一论文网 作者:陈编 点击:
网络考试系统具有很大的优势:一方面。随着Ajax技术的出现与应用。而且页面的更新为局部更新。局部更新,基于ASP.NETAjax技术的网络考试系统的设计。
  1.前言
  随着Internet的快速发展,网络技术逐渐渗入到社会生活的各个层面。传统的教育方式也面临着变革,教学手段不断发展变化。考试是教学的重要环节。考试方式也正在随着Internet技术的进步在不断的更新发展。

  传统的考试以笔试为主,网络考试是传统考试的延伸,它大大简化了传统考试的过程。网络考试与传统的考试形式相比,减少了出卷,批改试卷等工作所需的精力和时间,具有组织考试简单方便的优点。与传统考试相比,网络考试系统具有很大的优势:一方面,只要准备好足够大的题库,便可以动态地管理各种考试信息;另一方面,考试时间灵活,可以在规定时间段内的任意时间参加考试。第三,网络考试的最大特点是阅卷速度快,计算机阅卷给了考生最大的公平感。

  《计算机应用基础课》是我校全校性的公共基础课,由于修读该课程的学生人数多,组织考试的工作量很大,计算机应用基础网络考试系统的使用,在一定程度上减轻了教师的负担,使试卷的生成、批改、成绩的统计都实现了自动化,使考核更加公平、准确,有良好的实用价值和应用前景。

  网络考试系统的实现技术有多种。在传统的使用动态HTML技术开发的网络考试系统中,有时页面只有很小一部分的更改,都需要服务器向客户端返回一个完整的HTML页面。当参加考试人员较多,要传送的数据量大或网络速度较慢时,容易出现白屏现象,考生需要等待较长时间,页面回送后才能做下一道题。随着Ajax技术的出现与应用,为上述问题的解决提供了很好的解决方案。

  2.Ajax技术

  Ajax是AsynchronousJavaScript And XML(异步JavaScript 和 XML)的缩写,是多种技术的集合。Ajax使用通信技术(通常为SOAP和XML)向服务器发送异步请求和接收服务器的异步响应,然后利用显示技术(JavaScript、DOM、HTML和CSS)处理响应。Ajax使开发人员能够通过JavaScript 调用执行服务器端方法,此时,客户端不需要刷新浏览器,就可以得到更新过的数据,实现页面的局部刷新。Ajax技术应用于网络考试系统,可以带给考生更好的用户体验,学生在进入下一题时,不会有画面的闪烁换页,答题页面是局部更新,在不换页的情况下,读取Server端的数据来局部更新页面。通过应用Ajax技术,减少了服务器与浏览器交换的数据量,提高了交互效率,使网络在线考试系统更加完善和成熟。

  通常,典型的Ajax应用程序都会或多或少地使用下列几种技术。
  (1)描述页面的HTML/XHTML
  (2)表示文档结构的DOM
  (3)定义元素样式的CSS
  (4)表示服务器和客户端通信内容的XML或JSON
  (5)服务器端处理浏览器请求的CGI
  (6)实现与服务器异步通信XMLHttpRequest对象
  作为Ajax的最核心部分——XMLHttpRequest对象是当今所有AJAX和Web2.0应用程序的技术基础,是一套可以在JavaScript、VBScript等脚本语言中,通过HTTP协议传送或接收XML及其他数据的API。

  XMLHttpRequest对象的强大之处在于,它允许开发者在JavaScript 中以异步的方式向服务器发出HTTP请求并得到响应。这就让客户端可以在任何时候与服务器进行通信,而并不仅限于在整个页面提交的时候。同时,它的异步调用模型也并不会阻塞用户的当前操作,用户在等待时仍可以进行其他操作。

  在Ajax中,XMLHttpRequest与服务器通信的步骤如图 1所示。 
  局部更新
  图1 XMLHttpRequest与服务器通信的步骤
  ①在Ajax交互中,首先由一个客户端触发一个Ajax事件。
  ②创建XMLHttpRequest对象的一个实例。使用open()方法设置服务器URL以及所希望的HTTP方法(通常是GET或POST)。请求实际上通过send()方法调用触发。
  ③向服务器做出请求,可以调用Servlet、CGI脚本等任何服务器端技术。
  ④在服务器端根据请求做出相应的处理,包括访问数据库,甚至访问另一个系统。
  ⑤请求返回到浏览器。
  ⑥XMLHttpRequest对象在接收到响应后,根据配置调用callback()函数处理返回结果。这个函数会检查XMLHttpRequest对象的readyState属性,然后查看服务器返回的状态码。如果一切正常,callback()函数就会在客户端做相应的处理。
  (7)协调上述各种技术的JavaScript。

  3.《计算机应用基础》网络考试系统的主要实现技术

  网络考试系统实现的主要技术是ASP.NET Ajax技术。开发模式选用Ajax框架。Ajax框架现在已有很多,通过使用Ajax框架进行Web开发可以提高效率,并且代码稳定性好。其中ASP.NET Ajax是由微软公司Atlas演化而来的,是Microsoft在.NET环境中应用Ajax开发框架的简称。它是一套相当完整的Ajax解决方案。

  ASP.NET的开发环境采用的是Visual Studio 2005。VisualStudio 2005是随着.NET Framework 2.0一同发布的集成开发环境。本系统采用的开发语言是c#。系统后台数据库采用的是SQLServer2000。ASP.NET与数据源的连接是通过ADO.NET进行的。与ADO相比,ADO是基于连接的,而ADO.NET是依赖于简短的、基于XML的消息与数据源进行交互。对于基于Internet的应用程序而言,ADO.NET的效率要高得多。

  ASP.NET 2.0应用程序的运行宿主是微软的 IIS,该软件整合在Windows Server 2003中。在Windows XP环境下,自带了一个IIS的5.1 版本,可在开发时作本地调试。

  4.《计算机应用基础》网络考试系统的设计

  系统设计的基础是系统架构。计算机网络考试的基本体系结构,主要可以分为两类:C/S和B/S。与C/S相比,B/S结构的产品体现着更为方便的特性。B/S结构的软件只需要管理服务器,所有的客户端只是浏览器,不需要做维护,对软件功能的扩展仅需要对服务器端软件进行修改就能使所有用户同时升级至新功能。B/S系统有三种架构方式:单层设计架构、二层设计架构、三层设计架构。本系统采用的是较为简单的二层架构。从代码复杂度来看,层次越多代码越复杂,函数的层层调用会影响程序的执行速度。分层架构影响应用程序的执行速度,但在很多企业级应用中使用三层架构,因为其有较好的扩展性。其速度上的劣势,可以通过将应用分布在不同服务器上加以解决。综合考虑网络考试的要求,我采用了二层设计架构。

  对于网络考试系统,最终目的是生成试卷,进行考试。围绕这个核心功能,还有一些辅助功能,考试信息的设置,题库的生成等。

  网络考试系统的用户可分为三类:管理员,教师和学生。(一)管理员可以输入试题,生成题库;输入考试班级信息和任课教师信息;开启考试和关闭考试,这个功能可以控制考试时间,在考试时间才可以进行考试。管理员是对整个考试信息进行管理。(二)教师对学生进行管理。教师可以输入考生信息;查询班级成绩;查询某个考生的成绩;查询考生试卷;修改考生的考试状态,这个功能可以设置一些停考的考生,考试状态设为关闭后,就不能参加考试了。教师只能对本班的学生进行查询操作。(三)学生登录后,如果是考试时间,即考试开启了,并且学生可以参加考试,就进入考试,随机生成试题,学生开始考试;如果在考试过程中,出现死机,退出考试,系统记录考试当前状态,学生可以通过二次登录再次进入考试,继续退出时的状态进行考试。考试完毕学生可以点击交卷结束考试,到了考试结束时间,系统也会自动结束考试。学生只能考试一次,学生一旦进入交卷,学生的考试状态就设为关闭了,考试完毕就不能再考试了。如果要补考,则必须把原来的试卷删除,系统会把学生的考试状态重新开启,才能补考。

  网络考试的几个关键问题,①实现动态随机的抽题,每位考生的试卷不同。②考试过程中出现异常情况退出考试,可以实现二次登录,继续考试。③考试页面的局部刷新。④采用各种方法,尽量提高系统性能,减轻服务器负担,达到在线考试的满意效果。

  试卷试题的生成使用动态随机抽题。实现方法如下:数据库的试题表中有试题编号字段和所属章节字段,根据不同的章节,建立了六个章节试题的视图。随机抽题的时候,从视图中随机生成题号,抽取指定数量的试题。在考试时如果出现异常情况退出考试,可以二次登录,继续考试。实现方法为:在考生点击下一题时,把考生做的这一题的答案放入一个暂存表。考生登录时,系统会根据是第一次登录还是再次登录,决定是否从暂存表加载答案。如果是再次登录,系统就会从暂存表加载答案。为了减轻服务器的负担,系统把考试的计时放到客户端,而且页面的更新为局部更新,减少传输的数据量。

  系统总体划分为三个模块,即管理员模块、教师模块和学生模块。管理员的功能模块如图 2所示。
  
  图2 管理员模块
  教师的功能模块包括录入学生,查询班级成绩,查询学生成绩,查询学生试卷,更改学生考试状态,查询学生信息,查询班级信息和删除学生试卷模块。
  学生考试流程如图3所示。
  
  图3 学生考试流程

  5.总结与下一步研究

  基于ASP.NET Ajax技术的《计算机应用基础》网络考试系统现已投入使用,基本运行正常。但还有可以继续深入研究的内容。现将内容简要列出,以作为将来继续研究的参考。(1)考试题型的多样化。客观题可以进行计算机阅卷。主观题可以让教师在计算机上阅卷。试卷如果既有主观题,又有客观题,可以采用计算机阅卷与人工阅卷相结合的方式。(2)考试信息的加密。系统在数据库中存储的信息都是明文的形式,为提高系统的安全性,可以对考试信息进行加密。(3)成绩的统计分析。在线考试的成绩信息还只是基本的呈现功能,可以增加统计分析功能,对考试结果进行自动统计分析并实现图形化显示。

[参考文献]
[1]陈黎夫.ASP.NETAJAX程序设计[M]. 人民邮电出版社.
[2]黄桂金,宋强,王占中.ASP.NETAJAX网站开发从入门到精通[M]. 清华大学出版社.
(当前页面链接:http://www.lunwen01.com/jisuanjiwangluo/1500.html)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------

最新更新

·基于网络的微机实验室排课系统分析与设计
本文是在高校课程编排算法和已完成大规模课程安排的基础上进行实践环节实验室排课算法...
15-12-08
·基于ASP.NETAjax技术的网络考试系统的设计
网络考试系统具有很大的优势:一方面。随着Ajax技术的出现与应用。而且页面的更新为局...
15-12-03
·一种AdHoc网络中信任管理模型的研究与设计
综合考虑AdHoc网络的特点。信任管理是通过收集和处理信任数据。信任管理的相关研究。...
15-12-03
·一种快速帧内预测算法
目前最新的视频编码标准H.264/AVC。编码帧内预测模式所需的比特在总码流中占较大的比...
15-12-03
·SSL协议中间人攻击原理及解决
协议的实现有Netscape开发的商用SSL包。中间人攻击也就难免了。协议,SSL协议中间人攻...
15-12-03
·黑客常用的入侵手段与网络安全防范策略
计算机网络的脆弱及其潜在的威胁,使计算机用户深受其害,因此采取强有力的安全策略,...
15-08-24
·计算机网络可靠性研究
整体设计的计算机网络包括网络的结构体系和层次结构。在庞大的计算机网络系统中,不仅...
15-08-19
·计算机网络服务质量的优化
对计算机网络服务进行优化时候,最主要的工作就是解决网络服务中出现的问题。而在日常...
15-08-19

热门阅读

·基于网络的微机实验室排课系统分析与设计
本文是在高校课程编排算法和已完成大规模课程安排的基础上进行实践环节实验室排课算法...
·黑客常用的入侵手段与网络安全防范策略
计算机网络的脆弱及其潜在的威胁,使计算机用户深受其害,因此采取强有力的安全策略,...
·计算机网络课程教学探究
在讲授计算机网络的分层结构时,如果采用平铺直叙的方式,虽然能把概念讲得很清楚,但...
·计算机网络安全建设和技术管窥
网络全世界每个人都可以访问,访问的方式千变万化,和网络行为具有突发性等特点。网络...
·基于ASP.NETAjax技术的网络考试系统的设计
网络考试系统具有很大的优势:一方面。随着Ajax技术的出现与应用。而且页面的更新为局...
·SSL协议中间人攻击原理及解决
协议的实现有Netscape开发的商用SSL包。中间人攻击也就难免了。协议,SSL协议中间人攻...
·一种AdHoc网络中信任管理模型的研究与设计
综合考虑AdHoc网络的特点。信任管理是通过收集和处理信任数据。信任管理的相关研究。...
·浅析计算机病毒及预防
随着计算机在社会生活各个领域的广泛运用,计算机病毒攻击与防范技术也在不断拓展升级...
·计算机网络可靠性研究
整体设计的计算机网络包括网络的结构体系和层次结构。在庞大的计算机网络系统中,不仅...
·计算机网络服务质量的优化
对计算机网络服务进行优化时候,最主要的工作就是解决网络服务中出现的问题。而在日常...

热门标签