论文部分内容阅读
由于互联网的普及,人们通过网络浏览器得到各种各样的服务,使得网络应用越来越广泛.许多研究人员力图在网络交互应用上改进传统的网络应用以满足用户的需要.web应用被指出存在诸如没有响应及交互速度慢等缺点。因此许多网络应用领域的研究人员开始着手进行改进。在数据频繁交互的网络应用平台建设中,新的网络开发技术异军突起。Ajax技术是在现有的网络技术基础上构建出来的,现在已被许多的web应用系统所采用。Ajax技术已越来越普遍的应用于web应用系统。这种新的网络应用拉近了桌面应用与传统网络应用的距离,用户无需在计算机上安装任何软件仅仅通过浏览器就可以得到丰富多彩的内容,并且可以通过网络与服务器进行数据交互。用户不需要更换浏览器就可以体验这项技术。目前Web应用程序中客户与服务器的弱交互和响应能力所造成的中断让用户感觉很痛苦。为了用户更方便的使用Web应用程序采用先进的技术是必要的。用户需要的是高可用性、互动性、能迅速响应的Web应用程序。Ajax技术能满足这些用户的需要。最近流行的异步技术是传统http请求响应模式向Ajax的根本技术,它能在没有任何人为干预的情况下完成数据从客户浏览器向服务器的数据请求和响应。这一新技术的核心是快速交互的单接口模式。Ajax技术能创建交互式Web应用程序。用户在进行小数据提交时是并不会把整个页面的数据提交给服务器,这样使得网页交互性更强,速度更快,功能更好。传统的Web应用的请求响应需要用户先提交一个请求到服务器,接着等待服务器处理请求并生成响应,刷新浏览器数据,这个过程造成了等待。采用Ajax、JavaScript、XMLHttpRequest技术的话,用户在向服务器提交数据时则无需重新加载页面。AJAX技术改进了数据交互及响应的速度,用户体验更平滑、迅速。我们在远程教育应用的研究中发现了同样的问题,并试图利用先进的技术进行改善AJAX就是我们说到的先进技术。在学生通过远程考试做题的网络应用研究中,AJAX就是一种很适合的技术。学生无需更换浏览器便可以感受到这项技术。远程教育系统将AJAX的优点发挥的淋漓尽致,特别是在在线考试的应用上,它提高了在线考试的效率,加快了页面刷新速度,使学生在在线答题时能快捷的与系统进行交互。这项新技术,极大减少了服务器的数据装载负荷,避免了服务器和学生机之间通信数据的拥塞,节约了学生的考试时间,使整个考试更顺畅。当学生向服务器提出请求后,只有页面中的小部分数据而不是整个页面的数据从远程的web服务器传到学生机上;当学生传数据到服务器时,同样只有小部分数据需要传到远方的服务器上。这个过程降低了远程教育网络服务器的负载,提高了带宽利用率。研究发现我们能够在一定程度上解决学生在考试过程中出现的一些问题。然而在远程教育系统的应用中特别是在线考试模块里还存在许多其它的问题。尽管如此,我们仍需前行。网络应用技术的革新将一步一步弥补远程教育技术中存在的缺陷。带宽的缺乏限制了发展中国家的教育机构对远程教育的推广。而在线考试是远程教育系统中的一个重要环节,它能客观评估学生对学科知识的掌握程度。我们发现,一些研究人员试图改进远程教学,特别是在在线考试模块上如何减少从服务器传送到学生机的数据并做出及时的反应的问题,但他们并没有实现最理想的目标。为了让学生在考试过程更加快捷、方便。我们应考虑如何将答案从学生机传到服务器或将题目从服务器传到学生机的方法。其中主要的问题是学生考试时准备答下一题的时候,由于传输答案浪费时间所造成的中断。首先,我们应该确保考试过程更流畅,这样学生能在较短的时间从服务器接收到题目。其次,我们要考虑在从学生使用的计算机传输答案到服务器时如何有效利用带宽。我们使用缓存方法来改善在线考试系统.客户端用缓存与JavaScript结合的数组能让数据实时获取内存程序调用。我们系统中使用的缓存能同时存放问题和答案.它能缓存从服务器下载的所有题目的数据,及学生将要上传的有关答案的数据.我们使用缓存控制方法来判断是否应该从缓存中恢复题目或答案的数据还是应该从缓存里取出所要的数据.缓存控制的功能是保持已下载的所有的题目的列表存在过期缓存中,这样就不需要重复下载数据.当一个用户请求一个问题数据的时候,预期缓存则会从过期缓存中判断是否相关的数据已经下载下来了.在系统的缓存应用里实现了两个主要功能:减少了服务器端的重复下载和最小化请求数量.Ajax技术和对题目的数据缓存实现了前者.Ajax只把需要地数据提交给服务器,而不需要的数据如网页的页头、页脚、及导航菜单这些固定的数据是不会提交到服务器的。不用将整个页面的数据进行提交,这样就减少了对服务器的数据提交量。当一个学生请求题目的数据的时候是从已下载到缓存题库数据的中提取的,从而减少了请求时间。最少化请求数量能提高带宽利用率。我们采用了UML来设计这个系统,例图能详细说明整个系统,描述诸多的功能,例如学生注册、考试注册、考试、及更新考试、修改注册信息等。在线考试系统的设计可以用实例图的形式合并不同的类,例如学生、用户、考试、问题、答案。系统的交互则是用序列图表示用户接口、注册、考试、结果、问题等之间的数据传递。为了实现这个目标,我们的论文进行了基于Ajax技术在线考试系统的研究,采用了先进的技术、缓存的方法和统一建模语言(UML)设计的使用用例、类和序列图,有力的构建了更快、交互性更好的网络应用。系统实施应用后,考试过程更快、交互性更强。诚然Ajax的技术是实施的关键。没有等待时间、没有因为交互而产生的中断,这就使整个考试过程更加顺畅。在用户发送数据到服务器或从服务器接收数据的考试过程中,带宽利用率更高,数据拥塞减少,网络应用的效率得到了提高。