网上考试系统的设计与实现(共60页).doc
《网上考试系统的设计与实现(共60页).doc》由会员分享,可在线阅读,更多相关《网上考试系统的设计与实现(共60页).doc(60页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上1绪论1.1选题背景网络化教育代表了教育改革的一个发展方向,已经成为现代教育的一个特征,并对教育发展形成新的推动力。随着Internet/Intranet技术迅速发展和广泛普及,建立在其上的远程教育成为现代教育技术未来发展方向之一,在线测试作为远程教育的一个子系统也成为一个重要的研究领域。现代远程教育作为一种新的教学手段已经开始进入我们的生活,正在给传统教育模式带来新的变革。Internet技术的发展使得考试的技术手段和载体发生了革命性的变化,Internet的开放性、分布性特点和基于Internet的巨大的计算能力使得考试突破了时间和空间的限制。基于Internet
2、的考试系统正成为人们的研究热点之一,与传统考试模式相比,网上考试具有无可比拟的优越性,它可以将传统考试过程中试卷组织、审定印制、传送收集、登记发放、评判归档各个环节缩小到一至两个环节,几乎屏蔽了所有人工直接干预考试活动的可能性,不但能够节约大量时间、人力、物力与财力,而且还可以大幅度提高考试成绩的客观性和公正性。网上考试系统课题产生背景是当今教育信息化的趋势及我国高校教育信息化系统的建设;目的是充分利用学校现有的计算机软、硬件资源和网络资源实现无纸化考试以避免传统手工考试的不足。与传统考试模式相比,网上考试渗入了更多的技术环节,对实现安全性的途径、方法也提出了更高的技术要求。通过Interne
3、t/Intranet来实现网上考试,是现代教育技术的一个具体实现,具有很重要的现实意义。可以实现教考分离以及考务工作的全自动化管理,可以有效利用校园网的软硬件资源,使其发挥最大效力,更好的为学校的教学、科研、管理服务,可以大规模的实行考试,实现考试的客观、公证性,自动化组卷、阅卷可以减轻教师的工作强度。传统考试要求老师收集资料、出试卷、印试卷、安排考试、监考、收集试卷、评改试卷、讲评试卷和分析试卷。这是一个漫长而复杂的过程,已经越来越不适应现代教学的需要。网络考试系统是传统考场的延伸,它可以利用网络的无限广阔空间,随时随地的对学生进行考试,加上Web数据库技术的利用,大大简化了传统考试的过程。
4、本文以Internet为平台,研究了基于Web考试系统的设计与实现,包括系统需求分析和系统功能设计以及数据库设计。重点阐述了用户管理模块、用户权限管理模块、题库管理模块、试卷管理模块、信息发布管理模块、用户操作日志记录模块和专家答疑模块的设计。特别是在题库管理模块中对自动组卷功能常用的算法(包括随机选取法、回溯试探法和遗传算法)进行了比较。对于较流行的存储加密、防SQL注入过滤、模糊检索、验证码技术也给出了具体实现。1.2国内外网上考试系统现状与发展趋势随着计算机应用的迅猛发展,网络应用不断扩大,现在很多国外的大学和社会其他部门都已经开设了远程教育,通过计算机网络实现异地教育和培训,且这些应用
5、正逐步深入到千家万户。人们迫切要求利用这些技术来进行网上在线考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。例如目前许多国际著名的计算机公司所举办的各种认证考试绝大部分采用这种方式。在英国,已经实现了英语资格考试的网上学习和水平认证全过程。远程教育包括很多环节,例如教学系统、答疑系统和考试系统等等。其中很重要的一个环节就是网上考试系统,同时它也是最难实现的环节。在我国,虽然远程教育已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人
6、工阅卷、成绩评估和试卷分析。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。网上考试系统是建立在国际互联网上的应用系统,客户端的配置可以是极为简单,使考试不受地域的局限。1.3本系统设计路线目前,网络应用软件的模式主要有二类:Client/Server模式,Browser/Web Server模式。前者主要的缺点是维护、升级较麻烦,后者是近几年伴随Internet迅速发展起来的一种技术,它与客户机/服务器方式类似,客户端是一个标准的浏览器,服务器端是Web Server,
7、而Web Server与数据库和应用服务器的紧密结合,使得这种模式的应用范围不断扩大,它已不仅仅用于网上查询,有很多部门的业务系统、企业的MIS系统纷纷采用这种模式,它的主要优点是便于扩充应用、升级维护更简便。利用网络和数据库技术,结合目前硬件价格普遍下跌与宽带网大力建设的有利优势,应用ASP(Active Server Page)技术,开发了基于Web的B/S模式的网络考试系统。它运用方便、操作简单,效率很高。现阶段虽只实现了试卷的客观题部分,但已具有多用户同时在线考试、动态随机出题、时间控制、自动阅卷,试题管理、修改试题库、用户管理、章节管理、用户权限管理、用户日志管理等重要功能,也就是说
8、实现了真正的无纸化考试,满足任何授权的考生随时随地考试并迅速获得成绩,同时也大大减轻了教师出题和阅卷等繁重的工作量。基于上述考虑,整个考试系统采用Browser/Web Server的二层体系结构比较合适,服务器端采用Microsoft SQL Server数据库系统和ASP组件来构成考试的应用服务系统;客户端采用浏览器来完成考试全过程,同时可进行远程系统维护和管理。Web服务器接受请求,通过应用程序服务器执行一个ASP程序,从而实现与客户机进行信息资源的交互。数据库服务器用来存储管理信息系统中所用到的各种数据。系统的客户端只需要一个浏览器即可。相关人员通过浏览器来增加、修改、删除数据,对信息
9、进行管理。2系统实现关键技术本网上考试系统设计遵循软件工程的基本原则,经过可行性分析、需求分析、数据库分析与设计、系统实现、系统测试等几个阶段。系统实现的关键技术包括Web技术、ASP技术、数据库技术、页面布局显示技术,以及试卷的生成与评估的算法等。下面对涉及的技术和相关理论作一个概述。2.1 Web技术Web技术的迅猛发展,使全人类都能共享Web上的各类资源,包括功能强大的计算资源、海量信息的数据库资源、五花八门的多媒体信息资源、门类齐全的软件工具资源等,这些使得任何人能在任何时间、任何地点和任何设备上获得所需要的信息资源和服务。Web技术为Internet的普及与推广起到关键性的作用,例如
10、在远程教育、电子商务、电子政务、办公自动化、掌上电脑、信息家电、嵌入式系统等方面的应用,几乎无所不在。Web是一个无集中控制、无统一结构、无完整性约束、无事务管理、无标准查询语言和数据模型、可无限扩充的一个松散的分布式信息系统。Web是在TCP/IP、Mime、Hypertext等技术之上发展起来的,并在此基础之上,开发了HTTP、HTML、URL等技术,但其核心是HTTP。从本质上讲是各种技术的集成与综合应用,它以TCP/IP协议为基础,使用HTML描述网络的资源,通过超文本(Hypertext)、超媒体(Hypermedia)技术实现超级链接,无论文本、图形,还是动画、声音都能通过文挡中的
11、链接连接到服务器上的其它文档或其它站点,使客户以用交互方式快速地搜索所需要的资料,通过表单供用户填写并通过服务器应用程序提交给数据库等。2.2 ASP技术简介随着计算机及网络技术的飞速发展,Internet/Intranet应用在全球范围内日益普及,在众多的网络服务中,Web给人耳目一新的感觉,而在这其中,ASP技术则因为可以进行复杂的数据库操作、很强的交互性以及方便用户控制管理且简便易学而备受青睐,成为当前相当热门的网络开发技术。ASP程序工作在Web服务端,浏览器向服务器发出一个HTTP请求,请求一个.asp文件,Web服务器响应该请求并调用ASP引擎执行该文件,当遇到任何与Active脚
12、本兼容的脚本(如VBScript 、JavaScript)时ASP引擎调用相应的脚本引擎解释执行其中的脚本命令,若脚本中含有访问数据库的请求,则通过ODBC连结后台数据库,由数据库访问组件ADO(Active Data Object)执行访库操作,最后,ASP依据访数据库的结果集自动生成标准的HTML页面发送到客户浏览器。此过程如图21所示:Web服务器客户端浏览器ASPADO访问ODBC数据库HTTP图21 客户访问数据过程图ASP是服务器端脚本编程环境。使用ASP可以交互HTML页、脚本命令和ActiveX组件组合起来,创建动态的、交互的Web网页和基于Web的功能强大的应用程序。ASP(
13、Active Server Pages )是微软公司推出的一种用以取代CGI(Common Gateway Interface)的技术。简单讲,ASP是位于服务器端的脚本运行环境,通过这种环境,用户可以创建和运行动态的、交互式的Web应用程序,如交互式的动态网页,包括使用html表单收集和处理信息、上传与下载文件等。ASP工作原理如图22所示:浏览器WEB服务器Active Server Pages图22 Active Server Pages工作原理图ASP内含于IIS(Microsoft Internet Information Server)3.0和4.0之中。有了ASP就不必担心客户浏
14、览器是否能运行你所编写的代码,因为所有的程序都将在服务器执行,包括所有嵌在普通html中的脚本程序。当程序执行完毕后,服务器仅将执行的结果返回客户浏览器,这样就减轻了客户浏览器的负担,大大提高了信息交互速度。从字面上说,ASP包含下面3方面的含义: Active、Server、 Pages。作为IIS环境下开发WEB应用的一种简单、方便的编程工具,ASP具有如下特点:(1)使用VBScript JavaScript 等简单易懂的脚本语言,结合html代码,可快速完成网站应用程序的开发;(2)容易编写,无须编译,可在服务器直接执行;(3)使用普通的文本编辑器,如windows的记事本,即可进行编
15、辑;(4)与浏览器无关,只要客户端浏览器能够执行html代码,就可以浏览ASP设计的网页内容。ASP所使用的脚本语言均在WEB服务器执行,客户端的浏览器不执行这些脚本语言;(5)ASP需要能够能与任何ActiveX Scripting语言相兼容,除了可以使用VBScript 或JavaScript脚本语言来设计外,还可以通过plug-in的方式,使用由第三方所提供的其他脚本语言,例如rexx、perl 、tcl等,脚本引擎是处理脚本程序的COM组件;(6)ASP 的源程序不会被传到客户浏览器,因而可以避免源程序被剽窃,提高了程序的安全性;(7)可使用服务器端的脚本来产生客户端的脚本;Activ
16、es服务器组件具有无限可扩充性,可以使用Visual Basic、Java、Visual C+、Cobol等编程语言来编写所需的Actives服务器组件。2.3 数据库技术简介由于本系统涉及到许多数据的处理,这就需要有一个强大的后台数据库管理系统支持。目前主要的数据库有:Access、DB2、FoxPro、Informix、Oracle、Sybase、SQL Server、达梦、虚谷等,其中网络型的SQL Server、Oracle产品安全性远远高于桌面型的Access、FoxPro等数据库。本系统采用的是微软公司的SQL Server 2000。原因如下:第一,SQL Server与Wind
17、ows 2000 Server服务器紧密集成,而Windows 2000 Server服务器具有很好的安全性,能够排除所有未经授权的非法用户的访问,确保了SQL Server 2000服务器的安全性,符合系统对安全性的要求;第二,用户可以使用Web浏览器查询存储在SQL Server 2000数据库中的数据,符合系统远程访问数据库的要求。第三,容量庞大,每个数据库中可创建多达20万个数据表,数据表中的记录的行数只受服务器硬盘空间的限制,符合系统的考题数目较多的要求。2.4 ASP访问Web数据库原理ASP是一个服务器的脚本环境,内嵌在HTML页面中的脚本程序在这里运行并建立Web服务器应用程序
18、。在ASP脚本中可以通过三种方式访问数据库:传统的IDC(Internet Database Connector)、ADO(ActiveX Data Object)和RDS(Remote Data Server)。其中ADO是ASP内置的数据库存取组件,各种脚本和语言均可调用它实现对数据库的直接访问,并利用相应的数据接口显示查询结果。ADO拥有强大的活力,它是位于ODBC和OLEDB之上的高性能数据库操作接口,提供了开放的数据操作对象模型,允许开发人员使用任何语言和统一的编程模式操作各种与ODBC和OLEDB兼容的数据库,如Microsoft Access、FoxPro、Microsoft S
19、QL Server、Oracle等。ADO简单易行、应用广泛使之成为ASP访问数据库所采用的最佳选择。这种对数据库的访问方式是由Internet Information Server来完成的。执行过程如图23所示:图23 ASP访问Web数据库过程(1)浏览器:用户通过Web浏览器用HTTP协议向Internet信息服务器(IIS)发出请求。(2)服务器:服务器检查网页文件的类型,对扩展名是.asp的文件服务器调用ASP系统程序,解释执行被请求页面文件的所有脚本命令。若脚本中含有对数据库的请求,服务器就执行连接访问数据库的操作,并将结果以HTML格式送回用户浏览器作为响应。(3)数据库:储存了
20、动态交互所需的信息数据,用户可通过指令对其进行查询、修改、添加、删除等操作。数据库是实现有组织的,动态的存储大量关联数据,方便多用户访问的计算机软硬自愿组成的系统,它与文件系统的重要区别是数据的充分共享,交叉访问,与应用程序的高度独立性。ADO是一项容易使用并且可扩展的将数据库访问添加到Web页的技术。可以使用ADO去编写紧凑简明的脚本以便连接到ODBC兼容的数据库和OLEDB兼容的数据源。ADO包括Command、Connection、Recordset、Fields、Parameters、Property、Error七个对象和一个动态的Properties集合,绝大部分的数据库访问任务都可
21、以通过它们的组合来完成。一般使用ADO访问数据库的ASP脚本程序使用Connection对象建立并管理与远程数据库的连接;使用Command对象提供灵活的查询;使用Recordset对象访问数据库查询所返回的结果。这三者是ADO中最基本也是最核心的对象。使用ASP通过ADO访问数据库,主要有以下步骤:(1)确定数据源,连接数据库。ADO提供Connection对象,可以使用该对象建立和管理应用程序和ODBC数据库之间的连接。Connection对象具有各种属性和方法,可以使用它们打开和关闭数据库连接,并且发出查询请求来更新信息。要建立数据库连接,首先应创建Connection对象的实例。(2)
22、使用“Server.CreateObject”建立ADO的连结对象。(3)通过Connection对象的“Open”方法打开数据库。(4)表单中提取信息,构造处理数据库的SQL命令并使用“Execute”命令执行访问数据库的操作,并将返回的结果集储存到Recordset中。(5)使用Recordsets对象提供的方法和属性,完成SQL结果集的处理,并显示结果。(6)关闭Recordsets结果集和数据库。2.5 页面显示技术CSS和DIVCSS是Cascading Style Sheets(层叠样式表)的简称。由W3C的CSS工作组产生和维护,是一种标记语言,它不需要编译,可以直接由浏览器执行
23、(属于浏览器解释型语言)。在标准网页设计中CSS负责网页内容(XHTML)的表现。CSS文件也可以说是一个文本文件,它包含了一些CSS标记,CSS文件必须使用css为文件名后缀。可以通过简单的更改CSS文件,改变网页的整体表现形式,从而减少设计工作量,实现内容与表现分离,有了CSS,网页的内容(XHMTL)与表现就可以分开了。使网页的表现非常统一,并且容易修改。CSS支持多种设备,比如手机,PDA、打印机、电视机、游戏机等。使用CSS可以减少网页的代码量,增加网页的浏览速度,减少硬盘容量。DIV元素是用来为HTML文档内大块(block-level)的内容提供结构和背景的元素。DIV的起始标签
24、和结束标签之间的所有内容都是用来构成这个块的,其中所包含元素的特性由DIV标签的属性来控制,或者是通过使用样式表(CSS)格式化这个块来进行控制。2.6 UML概述UML(统一建模语言)是一套用来设计软件蓝图的标准建模语言,也是一种可视化的面向对象的模型分析语言。从系统工程角度来看,UML可以说是一种软件结构分析工具。也就是说,UML是一种从软件分析、设计到编写程序规范的标准化建模语言。2.6.1 UML的概念模型为了理解UML,需要形成一个语言的概念模型。UML包括三个主要要素: UML的基本构建块、支配这些构建块放在一起的规则和一些运用于整个UML的公共机制。这三部分构成了UML的概念模型
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网上 考试 系统 设计 实现 60
限制150内