**大学毕业设计(论文)
1 绪 论
1.1 开发背景
近年来,计算机科学技术的发展迅猛异常,日新月异。网络技术、多媒体技术、面向对象的技术日趋成熟,为计算机的应用揭开了新篇章。为了适应计算机技术的发展,网上教育也以受众广、投入低、不受师资和校舍等办学基础设施等条件限制、容易开展高水平教学、教学质量相对容易保证等特点而受到教育界的广泛重视,网上教育促进了教育思想、教育方法、教育手段的更新。信息时代的未来教育,具有创造性、多样性、开发性和个性化的特点。未来教育发展层次的高低,与教育网络的建设与否息息相关。落后的教学手段与封闭的教学模式,再也不能适应未来教育的需求。
在网络技术逐渐渗入社会生活各个层面的今天,传统的考试方式也面临着变革和更新,而网络考试则是一个很重要的发展方向。基于Web技术的网络考试系统可以借助于遍布全球的因特网进行,因此考试既可以在本地进行,也可以在异地进行,大大拓展了考试的灵活性。试卷可以根据题库中的内容按条件组成,可避免考试前的压题;而且可以采用大量标准化试题,从而使用计算机判卷评分,大大提高阅卷的效率;还可以直接把成绩送到数据库中,进行统计分析、排序等操作。所以现在较好的考试方法是采用网络考试,试题内容放在服务器上,考生通过姓名、准考证号码和口令进行登录,登录后进行考试,考试答案也存放在服务器中,这样考试的公平性、答案的安全性可以得到有效的保证。因此,采用网络考试方式将是以后考试发展的趋势。本校为了适应远程教育的发展,也开始进行计算机实用基础课程的建设,也就是实现网上教学。网上考试是这个课程建设其中的一部分,本文将重点介绍网上考试系统。
1.2 系统的总体概述及其研究意义
网络考试系统的实现技术有多种,可以采用传统的架构,即试题内容放在远程的服务器上,在考试机上安装考试应用程序和数据库客户机配置,因此每次考试时要对机器进行安装、配置,考务工作比较烦琐,而且考试程序放在客户机上,安全性也受到一定影响,因此本文讨论的网络考试系统采用Web 技术实现。Web技术采用了三层体系结构:用户界面层/事务层/数据库层,因此Web结构有着更好的安全性,在用户机上不需要安装任何的应用程序,应用程序可以安装在事务层所在的计算机上,试题存放在数据库服务器上,当然,事务层和数据库可以是同一台机器(如果条件允许,还是应该把这两层分开在不同的计算机上)。本文讨论的系统中,先有超级用户登陆,他首先录入教师的信息。由于库里存在了教师的编号、密码等信息,教师可以进入此系统进行考试前的准备,即向数据库中录入各类型的试题建立题库并进行维护。录入完毕后,可以按照一定的难度和要
第4页 (共30页)
**大学毕业设计(论文)
求组出多套符合条件的试卷,放入库内保存以便于考试时学生随机抽取到一套试卷。这些准备工作就绪后,学生可以参加考试,首先学生要注册,得到自己的用户名和密码(如果是一个班级同时参加考试,为了形式统一,也可以由教师在考前按照学号将考生信息提前输入到学生管理表中,学生考试的时候便可直接登陆)然后由系统进行身份验证,验证通过后,系统随机调出一套完整的试卷,此时系统开始计时,在此同时学生开始答卷,在规定的时间内答完试卷提交,否则系统自动交卷,交卷后进入判卷评分模块,进行试卷评判,最后得出该生的卷面得分。分数而增强保密性。其次,迅速准确,公平公正。计算机考试系统可自动评分,迅速准确,无任何人为因素,从而避免人为误差及人情分等问题,保证考试的公平公正。并且考生可以马上就知道分数,避免三番两次得去找老师问分数。且老师可以不用手工批卷,省时省力。再次,便于组织大规模的异地实时考试。以网络技术为支撑的现代计算机应用,已经具备较大的规模并相当普及,利用计算机网络组织实施大规模的异地实时考试已成为现代考试中的一种重要的方式,计算机网上考试系统是其中最关键的一环。
1.3 本考试系统的功能和特点
本考试系统是由ASP+ACCESS数据库开发的。主要具有如下功能:通过后台管理程序可以动态添加,删除,和修改题库中的题目(题目类型包括单项选择题,多项选择题,填空题和判断题);从题库中随机选题组成试卷(试卷数和题数以及考试时间由出题老师指定);考生注册和登陆;当有考生登陆时,随机分配一套试卷给考生,并记录此试卷编号;当考生答题完毕交卷后,自动给出得分,正误信息或者解答。
本考试系统不仅美观大方,功能齐全,而且还有很好的安全策略:考生所做的试题均由系统随机生成;如果考生到考试规定时间未交卷系统会自动提交;已经交卷的考生不允许再次作答;如果考生在答题过程中因人为或者意外事故(死机,断电,网络中断等)而导致的中途退出考试,当再次登陆时,系统会将刚才的试题重新发送给考生,并从考试规定时间中减去已经用去的作答时间作为剩余答题时间,这样既可以避免再次登陆所造成的试题更换给考生带来不便,又可以防止人为的更换试卷,可谓一举两得。这也是本考试系统最具特色的地方。
考试流程如下:管理员添加试题到题库系统自动生成试卷,通过后台管理程序的“试卷管理”页面,管理员指定所要生成的试卷数,每套试卷单选、多选、填空、判断题的题数和分值,以及考试规定时间。第一次参加考试的考生需要先注册,并牢记用户名和密码。已注册过的考生登录后参加考试,按照要求作答,交卷。系统会自动把用户提交的答案和标准答案比较,判断正误,并给出得分和相关提示信息,同时把考生成绩写入数据库,供老师查看。
分析已有的考试系统,其设计思想如下:单选题、多选题、判断提、填空题分别放在一个表当中,四个表可以看做是题库,存放着所有试题信息。考生考试时,由考试系统随机从题库里抽题给
第5页 (共30页)
**大学毕业设计(论文)
考生,只要考生登陆成功,由系统将试题发送给考生,就算已经参加过考试,禁止再次登陆考试系统,这样做似乎很合理,但在实际应用中却会遇到这样的尴尬局面:考生在答题过程中突然出现死机、掉电、网络中断或其它意外事故,中途退出考试。此时虽然考生已经答题了,但是成绩为0,考生又不能重新登陆,这在许多重要考试中是不允许的。如国家计算机等级考试。很自然会想到以下解决方法:允许考生重复登陆。但马上会带来两个新的问题:一、如果遇到以上意外情况考生可以再次登陆,但题目已经更换,刚才考生作答的题目无效,考生只能重新考试答新的试题,如果刚开始考试还可以容忍,但是快到交卷的时候出现这种情况就不能接受了。二、如果可以无限制的登陆,如果考生有一两道题不会做,就可以干脆不做,退出以后重新登陆,系统会分配新的题目给他,直到避开不会做的题目。正样就使考试失去了公正性。
上述矛盾又有新的解决方法:限制登陆次数,例如只允许登陆三次,因为意外故障有一个概率问题,不会在一段时间内连续发生多次,但还是没有从根本上解决问题,一旦有意外故障发生,试题还是要更换。
本考试系统从根本上解决了上述难题:允许考生多次登陆,但一旦交卷以后就不能再次提交。第一次登陆时由考试系统随机分配试卷给考生,但再次登陆时题目不变。这是对以往的在线考试系统的一个重大改进。为了能够实现上述目标,本考试系统设计思想如下:发给考生的试题并不是直接从题库中直接取出的,而是通过另外一个表“试卷管理表”间接转发的。考试先生成试卷,并将试卷存放到“试卷管理表”中。试卷中的题目是随机从题库中抽出来的。试卷管理表其实是指明哪套试卷包括哪些试题。其中包括完整的试题信息(题干,选项,答案)和题目所属的试卷编号。
由系统从题库中随机选题并生成N(由管理员指定),编号依次为1到N,并存放于“试卷管理表”中,”student”表中记录考生相关信息,包括所选择的试卷编号,默认为0;当考生登陆是,先判断试卷编号,如果为0,说明是第一次参加本轮考试,随机分配一套试卷给考生,并记录此试卷编号。如果不为0,则必为1到N的一个自然数,假定为X,说明考生已经参加过本轮考试,选择的是第X套试卷,但未提交;则系统再将“试卷管理表”中第X套试卷发送给此考生。
虽然网上考试系统有省时,高效等诸多优点,但毕竟还有不尽人意的地方,比如说:在线考试系统只能实现客观题目(例如选择,填空,判断)的自动评分,而对于主观题目如:作文或者问答题还不能做到网上考试、评分。所以还有待于进一步的改进和完善。为了弥补以上不足,我在考试系统中加入了留言薄,用于师生之间的进一步交流或者其他的信息反馈。百尺竿头,更进一步,为了能把考试系统做的竟善竟美,我会继续努力的。
第6页 (共30页)
**大学毕业设计(论文)
2 开发软件和开发环境
我这次开发程序所使用的开发工具是Microsoft公司的ASP,数据库管理软件采用的是Microsoft公司的ACCESS 2000。
2.1 开发软件
ACTIVE SERVER PAGE(ASP)是微软公司开发的服务器端的脚本编写环境,可以用它来创建动态WEB页或生成功能强大的WEB应用程序。使用ASP可以组合HTML页,脚本命令和ACTIVE X 组件来创建动态交互的WEB页和基于WEB 的应用程序。严格说来ASP并不是一种语言,它只是提供一个环境来运行SCRIPT,它所用的语言仍然是VBSCRIPT和JAVASCRIPT(或者Microsoft JSCRIPT),也可以是他们两者的组合。ASP没有固定的开发工具,任何一种文本编译器都可以胜任ASP脚本的编辑工作,当然不同的开发工具开发调试的效率不一样的。
使用VBScript、JavaScript等简单易懂的脚本程序,结合HTML代码,即可快速地创建网站的应用程序。
无须Compile编译,容易编写,可在服务器端直接执行。
使用普通的文本编辑器,如Windows的记事本,即可进行编辑设计。
与浏览器无关(Browser Independence),用户端只要使用可执行HTML代码的浏览器,即可浏览ASP所设计的网页内容。
ASP能与任何ActiveX Scripting语言相兼容。除了可使用VBScript或JavaScript语言来设计外,还通过Plug-in的方式,使用由第三方所提供的其他脚本语言,譬如Perl、Tcl等。脚本引擎是处理脚本程序的COM(Component Object Model)物件。
ASP的源程序,不会被传到客户浏览器,因而可以避免所写的源程序被他人剽窃,也提高了程序的安全性。
可使用服务器端的脚本来产生客户端的脚本。
ActiveX Server Components(ActiveX服务器元件)具有无限可扩充性。可以使用Visual Basic、Java、Visual C++、COBOL等编程语言来编写所需要的ActiveX服务器元件。
2.2 ASP的运行环境
Microsoft公司推出的支持ASP的Web服务器有以下几个:
Windows2000+IIS5·0(Internet Information Server即Internet信息服务管理器5·0) Windows XP +IIS5·0 (Internet Information Server即Internet信息服务管理器5·0) Windows 98 +PWS4·0(Personal Web Server 4·0即个人Web服务管理器)
第7页 (共30页)

