Web考试系统

2024-08-09

Web考试系统(精选10篇)

Web考试系统 篇1

1 概述

传统的考试一般经过教师出卷、考生考试、教师阅卷、成绩评估和试卷分析几个步骤, 但随着考试要求越来越高, 组织考试将是一件十分烦琐和容易出错的事情, 传统的考试方式已经不能适应现代考试的需要。随着Web开发平台与技术的发展, Web应用规模不断增长, 目前已经深入到各个信息领域。基于Web的考试[1]是考试理念、考试手段和考试组织的一种改革和创新。它既降低了教师出卷的难度和错误, 也很大程度地满足学生对考试服务的需求。这种新型的软件可以代替教师的一部分机械性、重复性劳动, 为师生提供发挥创造性的平台环境, 同时也提高了考试的质量, 从而使考试更趋于公证和客观。

2 Web考试系统的设计

根据目前考试过程的现状, 充分利用Internet, 开发基于Web应用的考试系统。本系统利用Web交互、数据访问等技术, 实现跨越时间、空间的考试系统, 主旨是提高考试工作效率, 实现考试信息管理以及考试流程的系统化、规范化和自动化[2]。

2.1 考试系统总体设计

基于Web的考试系统采用基于B/S架构的三层结构设计, 物理结构为“Web浏览器-Web服务器-数据库服务器”, 总体结构如图1所示:

这种结构需要Web服务器的支持, 主要包括登录和权限管理、题库管理、试卷生成管理、考试管理和成绩管理等, 它直接与后台数据库进行数据处理和事务处理;而学生端使用Web浏览器, 由浏览器提供学生考试的界面, 并将学生的考试答案通过服务器提交到后台数据库, 无须安装客户端软件, 因而简单易用, 维护方便。本系统主要是采用Windows 2000 Server作为操作系统, Access 2000作为数据库服务器[3]。

2.2 考试系统功能模块图

基于Web的考试系统由管理员、教师、学生3个子系统构成。管理员子系统分为两个功能模块:a.课程管理, 用于课程的增加与删除授权、有修改等;b.用户管理, 用于提供所有用户的注册与删除功能。教师子系统分为3个功能模块:a.题库管理, 提供对试题进行添加与删除的功能;b.组卷管理, 提供手工组卷、对组卷库中的组卷进行删除和审批的功能;c.评卷管理提供分类流水阅卷的功能。学生子系统分为两个功能模块:a.考试模块, 提供考生考试的功能;b.成绩查询, 提供考生查询本人成绩的功能。实际过程中, 各个模块并不是孤立的, 而是彼此合作共同来完成整个考试的。

2.3 考试系统的工作流程

学生登陆时要进行准考证号的验证, 只有通过验证的学生才能顺利进入考试过程, 考试完毕要进行交卷给数据库, 系统进行智能评卷需要跟数据库进行频繁的数据处理, 最终完成整个考试流程[4]。

3 考试系统实现的关键技术

3.1 数据库管理

数据库管理是本系统的核心部分[5], 数据库管理的主要问题有可靠性、服务效率、故障恢复等。针对数据库可靠性和故障恢复技术, 在本系统里采用同步的数据库复制技术来实现系统冗余备份。正常状态下, 由工作服务器进行数据库服务工作, 当工作服务器发生故障时, 备份服务器会接管工作服务器。当原工作服务器被修复后, 作为新的备份数据服务器。

3.2 系统安全性

由于本系统是基于B/S架构设计, 除了自身的优势之外, 也存在着一定的安全问题, 例如假冒等。针对以上问题, 本文主要采用身份认证来予以解决, 学生在登陆过程中, 只有将准考证号和姓名正确无误地输入才能通过确认进入考试状态, 同时学生参加考试必须携带附有照片的证件, 进而确保整个考试流程的安全性。

3.3 智能评卷

阅卷分为两个部分:客观考题计算机自动评判;主观考题显示考生答案与正确答案, 教师在线阅卷。考试结果的统计与分析既是现代考试流程中一个重要步骤, 也是智能评卷必不可少的手段。它对检验教育质量、深化教学改革、确保培养目标的实现有着重要作用。本系统能够根据试卷标识, 从数据库中取回所有考试学生的考试结果, 统计各个分数段的人数以及在总人数中的比例, 进一步分析试卷中每一道题的正确率。

4 结论

随着考试方式的不断改革, 人们迫切要求新的技术来支持考试, 为了适应新形势的发展, 我们提出了基于Web的考试系统。本系统采用流行的B/S模式的3层架构, 应用Windows2000 Server作为操作系统, Access 2000作为数据库服务器, 完成了基于网络的自动考试、自动评分、自动分析试卷等无纸化考试过程, 从而提高了教学效率和教学质量, 保证了考试的公开性、公正性、规范性。

摘要:针对现有的考试模式的不足, 提出了基于Web的考试系统。给出了系统的体系结构, 讨论了该考试系统的功能模块和考试工作流程, 最后分析了该系统实现所采用的关键技术。

关键词:Web,考试,数据库

参考文献

[1]黄柱中.基于Web考试系统设计与实现[J].中国科技信息, 2006 (19) :67-68.

[2]范永全, 张俊兰.基于ASPNET和XML的网络考试系统[J].计算机工程与设计, 2006, 27 (8) :1472-1475, 1508.

[3]王捷, 杨宗凯, 吴砥.NET技术的管理信息系统开发中的应用[J].微机发展.2004 (I1) :I17-I20.

[4]赵英杰, 赵菲.计算机考试系统的开发应用[J].管理信息系统, 2000 (8) :100-200.

[5]董勇, 翁代云.基于ASP技术的Web考试系统的安全机制设计[J].现代电子技术, 2007 (5) :75-76, 79.

Web考试系统 篇2

【关键词】 WEB;在线考试系统;设计与实现

【中图分类号】G64.28 【文献标识码】B 【文章编号】2095-3089(2015)15-000-01

一、 系统介绍

基于Web 的在线考试系统实现在线出卷与考试等相关功能,是以Web 服务器为基础,采用HTML、ASP、Dreamweaver CS4、VBScript、Java编程语言等工具来访问Web 页面。此系统主要应用为对试卷进行录入查询修改等功能以及参加在线考试的ASP应用程序,其特点为灵活性和方便性。在线考试系统具有以下几个特点:①管理员可以向题库添加、修改和查询试题(卷),并基于此进行分类综合汇总,建立相应的数据库以及自动新增科目;②管理员可以对试卷的难易程度和形式以及各个题目的分数进行规划,从现有试题库中抽取各类试题构成需要的试卷;③考生在浏览器输入正确的信息后,系统会自动对身份进行有效与否验证,如果通过,考生会被规定在要求的时间内答题,系统在规定时间到后自动提交试卷,并且答案分数等记录会被数据库收录,方便以后审核和查阅;④电脑系统根据难度系数高低,随机抽取试题库中的试题进行各种形式和不同内容的组卷,这种形式的试卷称为实时互动试卷。

二、系统需求分析及故障处理

1、系统需求分析。考试系统需要有一个高效共享的标准化题库,来保存各种试题信息。教师对题库进行有效的管理,以实现对客观题目的添加、编辑、删除功能。试题类型可分为单选题、多选题、判断题和填空题。用户可用智能组卷系统进行自动组卷,设置一定的参数,如难度分值比及各类题型的题数和分值等。考生需通过标准的web浏览器进行身份验证,验证成功后才能参加考试。考生在限定的考试时间内进行答题,考试时间到时则客户端强行交卷。如果考试过程中客户端出现非法操作或断电死机等意外故障,并因此导致考试中途停止,考试系统应提供一次登录功能,恢复考生之前的答题状态,使得考生继续考试。

系统的安全性:对考生登录考试系统须进行身份识别,通过密码验证后才能继续考试,否则无法进行下一步的操作。系统的科学性:每门课程在试题组织上都具有严谨的科学性,能够正确地反映该课程的知识结构和知识点。系统的稳定性:考试系统必须可以让大量的学生同时进行在线考试,这就要求考试系统的稳定性要强。系统的易维护性:考试系统是一个比较复杂的软件系统,使用频率比较高,因此要求考试系统的管理和维护要方便。

2、故障的处理需求。考试系统在运行期间可能会发生许多突发事件,要求考试系统应当及时检测,并且快速准确地处理这些突发事件。在编写系统程序时,应当加入异常情况的处理机制。当系统运行出现异常情况时,有相应的模块/代码可以快速地处理这些问题。考试系统在运行过程中可能会因为考生数量多而出现线路堵塞或者断开的情况,在线考试系统还应该具有定时自动重新连接的功能。考试系统在运行时,系统经过长时间运行后,数据通信可能会发生一些错误,如何避免这些错误是一个非常重要的问题。

在数据存储和数据通讯领域,为了保证数据的正确,不得不采用检错的手段。在诸多检错手段中,CRC是最著名的一种。如果考试系统遇到了无法解决的问题,系统管理员就应该手工修改数据,重启考试系统,或者重启操作系统。

三、系统功能、程序设计

基于Web在线考试系统主要模块有:系统管理員模块,出卷教师模块,考试学生模块,帮助模块。其中,系统管理员模块又分为:权限管理子模块,信息管理子模块,分析统计子模块;教师模块又可分为:考试管理子模块,类型管理子模块,评阅试卷子模块;学生模块又可分为:登陆注册子模块,集体考试子模块,自主考试子模块,成绩及答案子模块。

四、考试系统实现

1、考试系统配置。

(1)创建DSN。打开控制面板中的管理工具,会发现ODBC数据源;打开其对话框,选择“添加”后,会出现“数据源”为“SQL Server”选项,点击它,然后为新的数据源取个名字(比如取Online Test),再去选择数据库服务器访问方式中的选择数据库,点选它,当出现“测试成功”提示的时候,表示已成功建立了数据源,这时只需要建立好连接就行了。(2)通过DSN的方式使ASP与SQL Server建立链接。当通过DSN方式去访问数据库的时候,在线考试系统会更加安全,同时,采用这样的方式,就不会使数据库中的参数泄露。DSN创建完成后,ODBC数据源管理的对话框就能看到以下代码:

dim obj Coon set objConn=server.Create object("ADODB.Connection")

objConn.open "DSN二数据源名;UID=帐号;PWD二密码”。

2、考试系统平台实现。考试服务器是考试得以实施、数据得以中转和进行数据处理的中间站。考试前,考试服务器会通过接收的相关数据,利用考试客户端来进行在线考试。考试过程完成后,考试服务器会对考生的考试数据进行验证、加密和导出。只要客户机上安装有此浏览器,考生便可通过此台客户机登录进入考试系统,但要提前把考试服务器的服务器端程序运行好。

考试结束后,系统会自动将考生的考试成绩和试卷放在一起进行压缩加密,然后上传到服务器开始审阅,审阅的同时,系统会将服务器上的原始资料进行备份,以方便将来进行核查。如果考生进行的是标准客观题的试卷考试,那么当考生试卷上交后,计算机服务器会对考生所做的试卷内容进行测评,并在测评完成后给出考生的考试成绩。通过这样快速简单的网络在线考试系统,使得那些需要当场考试并及时公布成绩的考试模式成为了现实。

参考文献

[1]赵泽.在线考试系统的设计与实现[D].电子科技大学,2011.

[2]陈曦,网络考试系统中考试控制方案的研究[J],网络与通信,2010,6(

基于Web的在线考试系统 篇3

利用ASP网络编程技术和SQL Server 2000数据库技术实现B/S模式下的网上考试,系统最终实现的主要功能如下:

在线考试系统主要包括系统的用户登录、在线的考试系统、自动评分系统、在线的管理系统和在线的阅卷系统等。

主要完成题库维护、试卷生成、考试库维护、自动阅卷等功能,以便形成一个完整的有机统一的考试系统。

(1)题库维护:管理员可以增加、修改、删除题库中题目。

(2)试卷生成:系统可以按照科目生成考试试卷,教师可自助设定考试;如果题库随机生成试卷,在生成试卷中系统排除了重复题目的出现。本过程用存储过程完成。

(3)考试控制:主要实现对考生登录、考试答题数据提交的控制以及考生个人信息的维护。

(4)考生库维护:主要实现对考试人员的管理与维护。

(5)阅卷功能:主要实现对考生的客观题进行自动阅卷。

(6)高级用户管理:主要实现对学生、教师以及界面的管理。

2 在线考试系统功能

2.1 学生使用网络考试子系统的流程

考试子系统是网络考试系统的核心部分,由于采用Web技术实现,所以从理论上讲,考试可以在任何时候、任何地方进行。显示登录页面后,考生在这个页面输入自己的信息,学号和密码,单击“确认”后进入信息处理程序(在服务器端执行),如信息不正确(包括有些考生试图绕过登录页面,直接进入试卷页面的情况,此时由于没有登录信息,系统也会认为是非法考生),系统给出提示信息,并重新定位到登录页面;如信息正确,则显示试卷页面,试卷页面上的试题内容根据考生输入的试卷科目从数据库中取出符合条件的记录动态地生成。当考试时间到或考生点击“交卷”按钮时,则系统把考生答案传送至服务器的数据库中保存起来,并把数据库中标记考生是否参加过某门课程考试的标记置“1”(它的初始值为“0”。由于每一科只允许考试一次,在选择考试科目前,应该先判断该学生所选科目是否已考过,如果考过,不允许重考。

2.2 系统数据库

(1)数据库类型:

Microsoft SQL Server 2000。

(2)创建数据库。

网络考试系统采用了SQL Server作为数据库管理系统。先启动“企业管理器”程序,然后创建名为“TestOnline”的数据库。

(3)数据库表结构。

网络考试系统的数据库中共包含6个数据表。

管理员信息表用来保存管理员信息;课程信息表用来保存课程信息;学生成绩信息表用来保存学生考试成绩;学生信息表用来保存学生资料;教师信息表用来保存教师资料;考试试题表用来保存考试类型。

2.3 程序模块

(1)登录界面

用户进入网络考试系统时,首先展示给用户的是系统登录页面(包括学生登录、教师登录和管理员登录3部分)。用户登录需要验证后才能通过,如图1所示。

(2)考试界面

验证通过进入下一界面,考试界面,如图2所示。

(3)学生在线考试

通过选择自己的科目再进行考试,如图3所示。

(4)考试结束交卷

如图4所示。

在对话框提示过确定后,会自动给出成绩,同时为了让用户了解自身的不足,并有针对性地进行复习和训练。因此,用户做完后,只要点击"查看答案",就可以与相应试题的标准答案对比,以便及时反馈情况。

老师设置客观题目答案以后,电脑可以自动把学生的客观题目答案和老师的答案进行比较,然后进行打分。

此程序可以用于考试也可用于平常练习,比较灵活。

(5)教师登录

教师登录后可进行试题信息管理(添加、删除、修改),试题结果管理,个人信息维护操作。主要功能是教师对试题进行添加、删除、修改、查询等操作,对试卷属性的设置,对成绩的分析和导出等。详述如下:教师登录:为安全起见,防止非教师身份进入,不采用注册方式,而是根据管理员告之的用户名和密码登录,进入系统。教师只能访问自己的所教的科目和考生。对题进行添加、删除、修改、查询等操作。试卷的设置,教师通过设置修改,可自主编写题目并提交到数据库中,考生试卷的抽取就是根据这些数据抽取的,如图5所示。

在组卷过程中,肯定会遇到有许多题目是关于同一个教学内容的,这里称之为关于同一考核点的试题。因此,在组装一份试卷时,对于同一考核点的试题只能出一道题。这里设计一种快速选题算法,该算法只需经一次比较,便可判定是否已选过该考核点的试题,且又可以有针对性地重点选取某个考核点的试题。即每一道题都设有一个相关码,对于同一章、同一节、同一考核点的题,则相关码相同,显然,前面章节的相关码都要小于后面章节的相关码。故在组卷时,同一试卷中不允许出现相关码相同的试题。所以,在选题过程中每选出一题,就要与已经选出的题的相关码逐一进行比较,若该题的相关码与已选各题的相关码均不相同,则可将该题加入到试卷中,否则,放弃该题,重新进行选题。

在只考虑最佳情况下,即每次选出的题都恰好是尚未选过的,每选一道题就要与已选出的各题逐一比较,假设已选出了M题,再选下一题时,则需比较M次,不妨设一份试卷的总题数为N,在最佳情况下,则总的比较次数为:0,1,2,…N-2,N-1即时间复杂度为O(N),这样,就可保证下面算法中选择出来的试题编号都合法。随机抽取试题且避免抽取相同试题的技术。随机抽取试题,是自动生成试卷的关键技术。

在考试结果管理这一功能菜单中,可以显示多人考试结果并有序排列,同时还可以根据考题的意外原因,将成绩改变,增加了考试的灵活性。

个人信息维护教师可以根据自己需要将个人信息修改,提高数据的安全性。

(6)管理员登录

系统后台管理员只有一个,拥有最高权限。一个管理员可以对教师、科目、学生信息管理,以及试题、考试结果、管理员信息维护等操作,如图6所示。

学生信息管理:对学生进行添加、删除、修改等操作,并可查看考生信息。

教师信息管理:对教师进行添加、删除、操作。

试题信息管理:可对试题进行增加,查询,发布管理,修改。

科目信息管理;可以对考试科目进行添加删除操作,管理员不允许发布的教师就无权组织相应的考试。

考试结果管理:对成绩浏览,可进行修改删除操作。

管理员信息维护:只允许修改密码。

3 结语

给出了一个计算机网络考试系统的设计模型,并且对关键的实现技术进行了阐述。当然,系统还面临着一些需进一步研究的问题,例如:一些象简答题、论述题等主观试题,存在一定的难度,相信随着网络技术的发展和数据库技术的成熟,一定能开发出一个更加完善、健全的考试系统,促进教育事业的进一步发展。

参考文献

[1]启明工作室,编著.ASP.NET+SQL Server网络应用系统开发与实例.人民邮电出版社,2005,2.

[2][美]Todd Cook.JSP从入门到精通[M].北京:电子工业出版社,2003:1-385.

[3]网络信息制作与发布.电大教材.

[4]周绍广.ASP编程基础与实例.机械工业出版社,2002.

[5]李清国.Windows2000+ASP SQL Server案例教程.中科多媒体电子出版社,2001.

[6]袁宁.网上商店大制作.重庆大学出版社,2001.

[7]萨师煊,王珊.数据库系统概论[M].北京:高等教育出版社,1997:91-132.

[8]立雅科技.Dreamweaver MX&ASP网页整合大全.电子工业出版社,2004.3.

[9]网页设计梦幻组合.清华大学出版社,2004.

[10]李晓黎.ASP+SQLSERVER网络应用系统开发指南.人民邮电出版社,2004,1.

[11]潘锦平.软件开发技术.西安电子科技大学出版社,1999.

对遗留系统的Web服务封装 篇4

关键词:SOA;Web服务;遗留系统;JNI

中图分类号:TP393文献标识码:A 文章编号:1009-3044(2007)15-30773-03

The Web Service Encapsulation of Legacy System

XIAO Yi,WANG Yong-jun

(National University of Defense Technology,Changsha 410073,China)

Abstract:Focusing on all sorts of LEGACY SYSTEM currently present, the paper analyses Service Oriented Architecture (SOA) and Web Service, proposes a design and realization method of encapsulating them as Web Service.This method considers LEGACY SYSTEM’s feature of multi-language(programming language), multi-os(Operation System) maturely, proposes a solution to special system(developed by c/c++ and running on linux/unix),and can efficiently encapsulate LEGACY SYSTEM as Web Service on the basis of SOA.

Key words:SOA; Web service; legacy system

1 引言

1996年,市场研究公司Gartner[1]最早提出了面向服务体系结构(Service Oriented Architecture ,简称SOA)的预言;2002年12月,Gartner又提出“SOA是现代应用开发领域最重要的课题”,并且预计到2008年,SOA将成为占有绝对优势的软件工程实践方法。Gartner建议,主流企业现在就应该在理解和应用SOA开发技能方面进行投资。

对于SOA发展的理解认识,如何实现对遗留系统的重复利用是一个非常重要的环节。这是面向服务架构中实现服务到服务的一个重要基础,也是如何区别面向服务架构体系和其它架构体系的重点所在[2]。本文主要研究对遗留系统进行Web服务封装以构建SOA体系结构的设计与实现。

2 面向服务体系结构(SOA)与Web服务

SOA是根据Internet环境下业务集成的需要,为了连接能完成特定任务的独立功能实体而提出的一种软件系统架构[3]。SOA不是一项具体的技术,因此它与很多已经存在的软件技术(如面向对象技术)并不矛盾,而是一种互补的关系,它们面向不同的应用层次和细节,共同构成合理的软件工程开发方法。对于SOA而言,服务是独立的功能实体,它不负责功能实体的管理和恢复,而强调服务的整合以及重组[4]。

近年来,SOA及其实现技术己经得到国内外众多的组织和公司,尤其是国外的大公司(如微软、IBM、BEA、Oracle、Sun、SAPAG、诺基亚)的大力支持,他们的研究集中在SOA的实现方面,并参与标准的制定。结构化信息标准促进组织(OASIS)、开放SOA合作组织(OSOA)、万维网联盟(W3C)、Web服务互操作组织(WS-I)、互联网工程任务组(IETF)等标准化组织对相关技术和标准作出了不小的贡献[5]。而在国内,SOA几乎已经成为企业应用架构的主流,从2006年6月22日计算机世界“中间件应用年会”上可以看出,大部分主题演讲都涉及到SOA的应用和部署问题。种种迹象表明,SOA已经超越概念走向应用,并逐渐形成一股不可阻挡的潮流[6]。

2.1 相关概念

关于Web服务有多种定义,一般情况下,人们把它定义为:以独立于平台的方式,通过标准的Web协议,可以由程序访问的应用程序逻辑单元。从表面上看,Web服务就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API。

同传统技术相比,Web服务具有如下特征:

(1)Web服务是平台无关的。通常消息是以XML和一些其他Web相关标准序列化之后通过HTTP传输;

(2)Web服务的软件模块是松散耦合的;

(3)Web服务具有异构平台的互通性。Web服务的最大优势就是提供了异构平台无缝衔接的技术;

(4)Web服务将软件重用提升到了更高的高度。

我们可以采用任何语言在任何平台下把一组功能包装成Web服务并发布,用户只要获得了Web服务的描述信息,就可以生成客户端并通过代理访问Web服务提供的功能。

正由于Web服务的以上特征以及广泛普及,使用Web服务来实现SOA是很好的选择。

Web服务以XML为基础,其核心协议包括SOAP、WSDL、UDDI。

图1 Web服务核心协议

2.2 全新Web服务的构建

Web服务是独立于实现平台的,但是,就具体的实现技术平台而言,当前Web服务的架构平台主要有两大阵营:微软的.NET平台和J2EE平台。

微软的.NET框架包括基本的运行库、.NET框架用户接口库、C#、C++、VB.NET、Jscript.NET、ASP.NET以及.NET框架API的各个方面。

J2EE是开发和部署企业级应用的平台,理所当然地成为开发和部署Web服务的平台。使用J2EE开发和部署Web服务,不仅可以利用J2EE平台提供的可移植性、扩展性和可靠性,最重要的是有大量的J2EE平台提供商,像Sun、IBM、BEA等。JAVA阵营的开源项目也进行的如火如荼。Apache已经宣布结束旧版本的Axis开发,转而专注于Axis2,该版本继承了 Axis 上的所有已有功能,并通过更改体系结构实现了更大的灵活性,从而将其推向了一个新的高度;XFire是一个免费的开源SOAP框架,它不仅可以极大方便地实现Web Services,并且可以提供许多Web Services规范中的高级特征,这些特征在多数的商业或者开源工具都没有提供。

3 对遗留系统的Web服务封装

什么是遗留系统(LegacySystem,后面简称为LS)?任何作为产品在在各种实体中实际运行的系统,从它被交付使用的那一刻起,就成为LS了。LS一般是用传统的方法开发的,很多的LS都没有按组件或者面向对象的思想进行设计开发,大多数都是一些孤立的系统,很少与其他系统之间有信息的集成,而且界面表示逻辑通常与业务逻辑、数据访问混杂在一起。一方面,LS是经过时间检验的,在其中倾注了大量的时间和精力,已经成为整个实体运转过程中值得信赖的组成部分;另一方面,LS也有许多缺点:不够灵活,维护费用昂贵,通常不容易与其他的应用系统集成。

3.1 遗留系统危机

软件产品[7]从发布的那一刻起,与时间和老化的赛跑就开始了。“遗留代码就是昨天写好的代码”这样的陈词滥调越来越真实了。随着技术开发的步伐不断发展,技术废退的步伐也在发展。

信息系统的趋势是随着时间而扩展,而同时移除无用代码的工作很少得到资助。所有这些软件的问题是什么呢?简明扼要的讲,软件越多就意味着要演化和维护的软件也越多。例如,公司修改软件,以响应不断变更的业务实践、修正错误或者改善性能、可维护性或者其他质量属性。这与Lehman的第一定律完全一致:“一个大型程序在不断变更中得到应用,或者逐步变得没有什么用处。”

许多年来累计的代码变化经常会导致代码更加难以维护。Lehman第二定律描述了对一个系统变更的结果:“由于一个大型系统不断的变化,它的复杂性增加了,这反映了不断恶化的结构,除非进行了维护或者化简它的工作。”复杂性的增加意味着,系统越来越变得脆弱,因为每一次变化都很有可能会带来副作用。依此类推,软件维护变得越来越困难。

当维护和增强再不能获取所希望的系统属性的时候,人们就试图通过软件现代化改造来演化一个LS了。

3.2 遗留系统的现代化改造

LS[7]的现代化改造比大多数软件工程师所怀疑的更有挑战性。Standish研究组的研究表明,23%的项目在完成以前就被取消了,而只有28%的项目按时和按预算完成了所期望的功能。LS的现代化改造工作最终失败有各种各样的原因,但可以简化成少数几个因素:复杂性、风险和商业组件。

3.2.1 复杂性

由于大多数LS的规模和内在的不可理解性,我们应该在可能的地方尽量化简复杂性,实在不能消除复杂性的地方管理复杂性,这是非常关键的。虽然还有其他限制,但相比起来复杂性是LS的现代化改造中最大的限制。

3.2.2 风险

许多组织不能正确的管理风险。尽早在项目中识别风险、维护和监视这些风险,并且经常考虑怎样降低识别出来的风险,我们可以从中获益匪浅。

3.2.3 商业组件

在现代化改造工作中使用商业组件是实际的需要,但也并不是没有问题。对于那些用大量商业组件开发的软件系统来说,因为组件版本经常定期更新。如果系统在进入测试阶段以后已经非常成功了,配置管理就不太可能接受商业软件产品新版本的引入。结果,很有可能改造后的系统包含陈旧的或者废弃的组件版本。

3.3 遗留系统与SOA

从业务和竞争力的角度来看,我们可以用一个词来概括用户的实际需求——速度。业务需要迅速响应市场中转瞬即逝的机会。单纯地依靠旧的或新的技术都不可能获得成本有效、完整或足够灵活的解决方案。所以说,在新旧技术之间需要架设一座桥梁,它可以不断扩展现有系统,同时还能提供像Web服务这样的新技术。

在SOA的世界里,完成业务任务的方式是执行一系列的“服务”。只要服务按照期望的方式做出响应,并提供了用户所需要的服务质量,那么对于用户来说,服务到底是如何实现就无关紧要了。这样,在部署了多个厂商软硬件产品的IT环境中,或者在一个LS与新的应用程序、集成技术或数据源混合存在的企业中,SOA成为近乎理想的应用方式。因此,面对IT技术的不断发展,若想继续使用LS提供的功能并希望与其他系统集成构建SOA的话,就需要对LS进行Web服务封装了。

并不是所有的LS都能够进行Web服务封装。如果LS中的功能模块可以经济有效的从系统中剥离出来,则可以把这部分封装成新的组件模块,然后通过Web服务的技术封装成可以作为Web服务发布的形式。如果LS中功能模块的剥离成本要高于重写新的功能模块的成本,则可以直接重写新的Web服务模块。分析要考虑的因素有很多,可以通过面向服务的方法来分析。通过服务,所有的使用者都引用抽象功能或模块以执行希望的动作,其他任意数量的用户也都可以利用这些通用的模块。

3.4 封装技术验证

现有实体A中一直以来运行着LS,随着技术的发展与需求的变化,要求将LS封装为Web服务来构建SOA,目前的条件如下:

(1)LS的运行环境为linux/unix;

(2)LS是基于c/c++开发的。

3.4.1 系统分析

虽然有着两大阵营,但是在linux/unix环境下,由于Microsoft.NET平台的操作系统局限性,J2EE平台就成为我们唯一的选择了。由此带来的问题是:LS是基于c/c++开发的,也就是说,我们在java环境中无法直接对LS进行Web服务封装。对于这一问题,本文给出的解决方案就是:JNI(Java Native Interface,java本地接口)。

JNI技术[8]是java对本地操作的一种方法,它允许java程序调用c/c++写成的本地库函数,而本地函数是以库文件的形式存放的(windows平台上是.dll文件,linux/unix平台上是.so文件)。

基于以上的分析,我们对LS的Web服务封装得出了一个基本的设计方案:对LS的原有系统进行封装,使之符合JNI调用的规范;然后再将得到的java程序进行Web服务在J2EE平台下的封装,由此构建一个标准的SOA。具体架构如图2所示。

图2 架构图

3.4.2 软件开发工具需求

本文所采用的开发工具均为免费自由使用的开源软件。

(1)JAVA开发工具包(JDK1.5.0)

JDK全名为Java Development Kit,是一套Java compiler,JVM,class library及其它工具的组合,是开发Java程序最基本的软体要求。

(2)Apache Tomcat v5.5.12

Tomcat是Sun的JSWDK(Java server Web Development Kit)中Servlet的运行坏境(servlet容器)。Tomcat的源代码被提供给Apache(开放源代码组织)的Jakarta项目,在Open Source的模型下进行进一步的开发。在本文Tomcat 实际上被用来运行JSP页面和Servlet.,即Web服务器。

(3)Apache AXIS v2.0

Apache可扩展交互系统(Apache extensible Interaction System ,AXIS)是Apache软件组织对SOAP规范的实现,是Apache SOAP项目的第三代产品,是在基于可配置的消息链和Handler对象重新设计SOAP的过程中发展而来的。

在AXIS软件中提供了一个AXIS Web应用,可以把它发布到Tomcat服务器中。Tomcat充当AXIS Web应用的容器,而AXIS Web应用又充当SOAP服务(即Web服务)的容器。SOAP客户程序可以通过AXIS API发出RPC请求,访问Web服务。

(4)MySQL Server v5.0.18

由于遗留系统运行在Linux下,使用MySQL作为数据库服务器非常合适。MySQL[9]是一种关系型数据库,它功能强大而且相当简单,同时还能做到轻小高效。它在一个小巧而快速的引擎中集成了大量的特性。虽然与昂贵的商业数据库相比MySQL不具备其全部特性,但对于中等规模的数据库管理来说已经足够了。

3.4.3 服务设计原则

服务是其接口采用某种一致认可的格式发布的服务操作的逻辑分组,关于适用于整个服务的设计原则,目前主要有如下所示:

(1)命名服务时应以最大化易用性为目标

在选择服务、操作、数据类型和参数的名称时有一个指导原则:希望最大化服务的易用性。应使用服务使用者专业领域内有意义的名称,优先选用业务概念而不是技术概念;应使用名词对服务进行命名,而使用动词对操作进行命名。

(2)服务应具有精心选择的粒度

没有可用于确定服务粒度的简单启发式方法。不过有两个在设计服务时应该考虑的因素:

a)服务将通常作为测试和发布的单位。如果粒度过粗,而将大量操作分组到单个服务中,则可能将增加服务的使用者。因此,如果对服务的某些方面进行更改(可能仅为了少数人的利益),则必须重新发布整个服务,从而可能影响所有使用者。

b)服务使用者所面临的一个挑战就是找到正确的操作。通常,使用者需要浏览服务列表,然后在标识为合适的服务中浏览操作列表。因此,服务粒度的两个极端――提供仅有几个方法的很多服务,或数十或数百个操作均集中在几个服务中――都将对易用性造成影响。

在选择服务粒度时,需要在多个因素间进行折衷,如可维护性、可操作性和易用性。

(3)服务应是内聚而完整的

有两个对象设计概念很有用:内聚性和完整性。我们可将这些概念应用于服务接口。

(4)服务应对实现细节进行封装

另一个对象设计原则(封装)也适用于设计服务接口。封装服务实现的细节――所用的算法和资源――能够实现使用者和提供者之间的分离,从而为将来扩展提供灵活性。

3.4.4 接口设计

接口设计在SOA中是最重要的,因为设计糟糕的接口对需要使用这些接口的所有应用程序都会造成负面影响。根据上面所述的服务设计原则,下面以“数据库信息检索”模块为例来说明接口设计。

3.4.4.1 Web服务接口设计

Web服务接口是SOA提供给外界所有应用程序使用的公共接口,起着Web服务与外界门户和桥梁的作用。Web服务通过精心定义的接口对外展现所提供的功能(即服务),对于外界调用接口的应用程序而已,服务接口也是Web服务唯一的价值体现方式。

对于“数据库信息检索”模块来说,它的功能点主要为通过id值在数据库中检索对应的详细信息。下面依据上面所述的服务设计原则,我们进行设计。

按照服务的命名原则,定义服务名(即接口名)为DatabaseInfoService。

对数据库进行信息检索并不是每次都需要所有的相关详细信息,按照一般的定义,可以给出相对应的所有方法。不过,这对于Web服务接口设计而言,就显得有些不太合理了。根据服务粒度选择的原则,我们定义操作getDBInfoDetails:通过id检索时返回所有对应的详细信息,而不仅仅是当前所需要的信息。

因此,Web服务接口设计如下:

public interface DatabaseInfoService{

String getDBInfoDetails (int id); };

在上述代码中,getDBInfoDetails方法返回XML格式的字符串,在这个字符串中含有要检索的数据库信息。

3.4.4.2 java本地接口(JNI)设计

JNI的任务是为了沟通LS和Web服务,因此在设计上直接继承Web服务接口的设计即可:

public interface JQueryDatabase

{

String getDBInfoDetails (int id);

};

设计JNI接口为JQueryDatabase,函数JQueryDatabase是本地方法,但是只有函数声明,具体的实现是通过LS来完成的。

3.4.5 接口实现

3.4.5.1 Web服务实现

Apache Axis提供了WSDL2Java和Java2WSDL开发工具。

WSDL2Java利用已知的WSDL文件生成服务端和客户端代码,从WSDL文件生成客户端存根(stub)代码、服务端框架(skeleton)代码以及WSDL中的数据类型文件,只需向框架代码中补充相关的业务逻辑代码即可以得到完整的Web 服务代码,因此该工具极大地减轻了开发人员的编码负担。

而生成WSDL文件同样也不要手工完成,Java2WSDL根据已有的Java类文件生成WSDL 文件,Java类文件可以是接口类文件。

Web服务的实现过程只需按以下步骤:

(1)java Java2WSDL -cn DatabaseInfoService –o

-cn 开关指定形成服务基础的类。-o 开关指定输出目录。如果没有出现问题,此类将以静默方式执行,在输出文件中生成 DatabaseInfoService.wsdl 文件。

(2)java WSDL2Java -uri DatabaseInfoService.wsdl -ss -sd -d xmlbeans -o service

这是生成服务器端代码。第一个参数是WSDL文件的URL。第二个开关-ss告知应用程序生成服务(而不是客户机)。-sd开关告知应用程序生成XML服务描述符,从而更便于在生成服务代码后进行部署。其后紧跟数据绑定方法。最后,为了保持条理清楚,将服务生成到名为service的新目录中。

(3)java WSDL2Java -uri DatabaseInfoService.wsdl -d xmlbeans -o client

这是生成客户端代码。相应的参数和服务器端代码生成几乎完全相同,不过不需要服务描述符。另外,为了保持条理性,将新文件放入了独立的client目录中。

接下来,只要实现java本地接口,再将Web服务发布即可。

3.4.5.2 java本地接口(JNI)实现

实现JNI的步骤如下:

(1)javah –jni myPackage.JQueryDatabase.class

这是生成c/c++头文件代码。生成后的文件为myPackage_ JQueryDatabase.h。

(2)将生成的头文件加入到LS中具体实现,并生成库文件放

到系统库中。

最后运行即可。

4 结束语

本文对面向服务体系结构与Web服务进行了分析,提出了对遗留系统进行Web服务封装的方法。该方法充分考虑了遗留系统多语言、多平台的特点,较好的解决了linux/unix环境下采用c/c++语言开发的遗留系统的封装问题,为构建面向服务的体系结构提出了一条解决之道。

参考文献:

[1]柴晓路. Web服务架构与开放互操作技术[M]. 清华大学出版社.

[2]Thomas.Erl. SOA历史发展简要概述[M], 2007.

[3]Eric Newcomer,Greg Lomow著. Understanding SOA with Web Services中文版[M]. 电子工业出版社.

[4]毛永茂, 基于SOA的在线商务网站原型系统的设计与实现. 2005.

[5]Thomas ERL著, 王满红 陈荣华,译. SOA概念、技术与设计[M].机械工业出版社.

[6]Dirk Krafzig,Karl Banke,Dirk Slama, 韩宏志,译. Enterprise SOA中文版——面向服务架构的最佳实战[M].清华大学出版社.

[7]Robert C. Seacord, Daniel Plakosh, Grace A. Lewis著, 梁海华,译.遗留系统的现代化改造[M].清华大学出版社.

[8]刘揆, 杜中军. jni技术在三层架构开发中的应用,2003.

[9]George Reese, Randy Jay Yarger, Tim King著, 杨晓云,王建桥,杨涛,等译. MySQL权威指南[M].人民邮电出版社.

基于Web的在线考试系统开发 篇5

1.1系统构架

考试系统基于B/S体系结构, 用户可以通过浏览器向分布在网络上的服务器发出请求, 服务器对浏览器的请求进行处理, 将用户所需信息返回到浏览器。B/S结构简化了客户机的工作, 客户机上只需配置Web浏览器即可。服务器将担负更多的工作, 对数据库的访问和应用程序的执行将在服务器上完成。浏览器发出请求, 而其余数据请求、加工、结果返回以及动态网页生成等工作全部由Web Server完成。B/S体系结构如图1所示。

1.2设计目标

本系统是针对网上考试的要求进行设计的, 主要实现如下目标:①系统采用人机对话方式, 界面清晰、信息查询灵活、方便、快捷、准确、数据存储安全可靠;②利用系统快速的统计考试成绩;③程序管理员可以添加、删除、修改试题;④程序管理员可以对试卷和考生进行统一管理;⑤为了加强数据保密性, 为每个用户设置权限级别;⑥系统运行稳定、安全可靠。

1.3系统功能模块设计

系统主要分为前端、后端两大管理系统, 包括4大功能模块, 系统功能结构图如图2所示。

2数据库的设计与实现

2.1数据库的需求分析

根据系统功能设计的要求以及功能模块的划分, 总结出下面的数据字典:①题库数据:包括判断题、选择题和填空题3种类型题目, 包括题目的题干、答案和加入日期信息;②管理员、学生信息数据:包括姓名、密码、性别、班级、学号等基础数据;③成绩数据:包括考生考号、分数、考试日期等数据;④考试题型数据:包括考题数据, 每题分数等基础数据。

2.2数据库结构设计

本系统在数据库中建立7张表:采用SQL Server2000作为数据库管理系统。在SQL Server2000中建立了一个名为test的数据库, 库中包含的表有:

①管理员信息表:admin (admin, adminpassword) ;②学生信息表:student (studentnumber, studentname, studentpassword, sex, class, registerdata) ;③考试成绩表:examination (examinationid, studentnumber, score, examinationdata, pass, makeup, makeupdata) ;④考试题型表:test (examinationid, rightorwrongscore, selected, selectscore, fillingid, fillingscore, setupdata) ;⑤判断题信息表:rightorworrong (rightorwrongid, question, answer, setupdata) ;⑥选择题信息表:selecting (selectid, question, reslut1, result2, result3, result4, answer, setupdata) ;⑦填空题信息表:filling (fillingid, question, answer, setupdata) 。

3系统IIS 配置与SQL Server数据库连接

3.1系统IIS 的配置

本设计采用Windows 2000 Server 作为操作系统, 所必需安装的组建为Internet 信息服务 (IIS) 。装好后重新启动计算机会有“配置服务器”窗口弹出, 或者在控制面板里的管理工具中选择“配置服务器”一项也会弹出该窗口。在配置服务器窗口中双击“Web 媒体服务器”, 在其展开的下级目录里选择并打开“Web 服务器”, 该服务器是用来管理IIS、Internet和Intranet Web站点的Web服务器。在弹出的“Internet信息服务”窗口中, 或者在控制面板里的管理工具中选择“Internet 服务管理器”打开后, 点开左边的树目录, 选择计算机名下面的“默认Web 站点”一项, 点右键选择打开, 在弹出窗口中选择主目录一栏, 选择本地路径为存放该设计所需程序和数据所在文件包存放的目录, 此处为在线考试系统。这样, 当在IE浏览器地址栏中输入http://localhost, 就可以看见该目录列表了。如果在局域网测试, 可在“Web 站点”设置中, 设定一个局域网IP地址, 客户端启动IE 浏览器后在地址栏输入此IP 地址, 即可登录系统。

3.2创建SQL Server数据库

在SQL Server 2000的企业管理器中先完成一名为test的数据库的创建, 再建立网站页面与数据库的链接页面命名为conn.asp, 以后需要访问数据库时, 只需使用命令就可以直接调用该程序, 打开数据库。代码如下:

<%

Set conn = Server.CreateObject ("ADODB.Connection")

connstr="Provider=SQLOLEDB;Data Source= (local) ;Initial Catalog=test;User ID=sa;"

conn.Open connstr

%>

4用ASP +HTML +Sql server2000 设计应用程序

4.1用户登录页面

登录界面中根据自己不同的身份选择不同的模块进行登录, 考生输入正确的用户名及密码后, 取得登录系统的权利, 进入在线考试系统。管理员通过后台管理程序入口进入管理员登录页面。用户登录页面设计如图3所示。

4.2后台管理界面

后台管理程序全部在此页面上运行, 页面左侧为工具条, 右侧使用浮动框架来实现, 页面设计如图4所示。

主要功能包括:①判断题管理:对判断题题目进行编辑、删除和添加, 同时也可对判断题题目进行查找、分页及页 面跳转等功能;②选择题管理:对选择题进行编辑、删除和添加, 同时也可对选择题题目进行查找;③填空题管理:对填空题进行编辑、删除和添加, 同时也可对填空题题目进行查找;④试卷组卷管理:设定考卷各题型题目数、分数等;⑤成绩管理:可查询每个考生的成绩, 是否批准补考等;⑥学生管理:显示学生基本信息, 并可对学生信息进行编辑、删除等操作。

4.3在线考试界面设计

完成随机产生试卷以及考生答完题后试卷自动批阅和成绩表的生成。考试界面及评分界面设计如图5所示。

5结束语

综上所述, 考试考核环节采用了基于Web 技术的网络考试系统这种形式, 完成了电子考试、自动判分、自动分析试卷等无纸化考试过程, 做到了对教学的即时、有效反馈, 从而提高了教学效率和教学质量, 保证了考试的公开性、公正性、规范性。本系统主要是采用Windows 2000 Server 作为操作系统, SQL Server 2000作为数据库服务器, 以及运用ASP+HTML 进行应用程序的编写, 来完成网络在线考试系统的设计。

摘要:随着网络应用不断扩大和商品经济的不断发展, 基于Web的在线考试系统是现阶段研究开发的一个热点。本系统基于ASP+HTML+SQL SERVER综合开发工具及环境, 并结合具体设计任务进行开发。本软件采用B/S (浏览器/服务器) 结构设计, 只需在服务器端安装, 在客户端通过IE浏览器访问即可, 可完成在线考试及自动评分。

关键词:B/S,在线考试,ASP

参考文献

[1]项宇峰.ASL+SQL Server典型网站建设案例[M].北京:清华大学出版社, 2006.

[2]明日科技, 盖天宇, 孙明丽, 等.ASP数据库系统开发案例精选[M].北京:人民邮电出版社, 2008.

Web考试系统 篇6

如今大多数考试还都基本采用传统纸质考试的方式, 但是随着考试种类和类型的不断增加, 以及考试要求和严格度的不断提升, 一方面教师的工作量将会非常大, 另一方面该工作也将是非常容易出错和非常繁琐。 基于Web的网络考试系统有效解决了传统考试方式带来的弊端, 该系统可灵活利用网络使学生完成各个阶段考试, 同时也在很大程度上提高了考试质量, 减轻教师的负担, 同时也提高了工作效率。

2 系统设计

2.1 系统需求分析

2.1.1 可行性

近年来, 随着我国信息产业飞速发展, 计算机的应用开发已渗透到了各个领域和行业, 逐渐普及。 计算机也在现代的各种考试和测试中得到了广泛应用。 网络考试系统的设计与开发对考务工作效率的提升有很好的促进作用。

2.1.2 需求

根据实际工作需要, 本系统包括建立试题库、 考生信息注册和登录、 考生在线考试、 计算机对客观题的自动阅卷、教师对主观题的手工阅卷以及成绩的汇总, 整个过程中包括3种不同需求的用户: 考生、 教师和管理员。 因此该系统应对这3 种用户类型按照其功能和权限分别进行角色划分。

考生: 考生是指参加考试被测试的用户。 考生的身份是由考生本人通过在系统中注册生成。 在考试时, 考生利用该身份信息登录考试系统并参加考试。

教师: 教师具有可以进行试题录入及维护、 考试组卷方案制定、 查阅成绩和管理等功能。

管理员: 管理员具有系统功能变更、 权限维护及管理教师和学生信息等功能。

2.2 系统总体设计

2.2.1 系统用例图

网络考试系统主要目的是实现通过网络可以在线考试, 围绕这个核心, 必须提供对网络考试系统的全方位支持以及其他考务功能。 该系统主要包括随机出卷、 自动评卷、 查询成绩、 管理用户信息、 试题库和成绩等。 该系统的用户有3种类型: 考生、 教师和管理员。 这3 种类型用户的所有信息都存储在服务器中, 被称为合法用户, 分别具有不同的权限。他们在进入考试系统之前, 都必须经过考试系统的验证, 用户只有具有合法身份, 才能够进入系统, 并对系统资源进行访问和使用。 考生在登录考试系统成功后, 就可以参加正常考试了。 这3 种用户的用例图分别如图1、 图2、 图3 所示。

2.2.2 模块流程图

考试模块是网络考试系统的核心模块, 主要包括: 考试类型的选择、 答卷、 交卷、 判卷、 答案记录、 成绩记录等模块, 它们间的关系如图4 所示。

首先在进入系统前要进行身份验证, 身份验证通过后学生方可进入系统进行在线考试。 此外, 考试系统还对考生的考试时间进行限制, 规定时间一到会要求考生交卷。 该系统在开始抽试卷、 考试过程中和最后交卷等都要进行用户身份验证, 考生答题完毕后提交答卷, 然后由计算机进行自动评阅。计算机自动评阅成绩可记入考试的成绩库, 以方便后期查分。

2.3 系统详细设计

该系统中的考生、 教师和管理员可以分别输入自己的账号、 密码, 通过系统身份验证成功后, 即可进入相应系统界面。 考生的管理页面包括: 考试列表、 查询成绩、 我的错题等功能。 管理员的管理页面包括: 信息管理、 考试管理、 我的信息和信息发布等功能。

考生的管理页面: 考试列表可以罗列某考生可参加的考试列表, 考生可从中选择任何一种进入考试; 在开始正式考试后, 若没有主观试题, 系统则会在考试结束后自动进行评分; 查询成绩是指考生在考试结束后可以对自己参加过的考试进行查询成绩; 我的错题是指考生在考试结束后可以对自己考试中出现的错题进行查看; 我的信息是指考生可以随时对本人的信息进行更改。

管理员的管理页面: 信息管理是指管理员可随时对考生、专业、 课程等信息进行添加、 删除和修改, 也可以对课程开设情况进行设置; 考试管理是指管理员可以对试卷、 试题、 考试等信息进行添加、 删除和修改。 信息发布是指管理员可以对系统公告进行添加、 删除和修改, 也可以对系统公告的状态进行修改。 我的信息是指管理员可以随时对本人信息进行更改。

身份验证页面: 若有用户需要登录, 必须有响应页面来实现这个功能。 登录页面是用户进行登录功能操作的界面。当用户在登录页面输入用户名、 密码和验证码, 并成功后, 那么可以立即通过身份验证进入考试系统。

系统登录页面需要让用户输入用户名、 密码和验证码。如果用户输入的是错误的登录信息, 系统还要提示是错误信息。 否则, 当用户对信息输入和权限的选择正确时, 系统将让用户进入相应操作界面, 并进行访问操作。

用户有两种类型: 考生、 管理员。 考生用户具有参加考试和利用考试系统进行测试的权限。 考生用户的用户名试该考生的准考证号, 该种类型用户在数据库中已和自己的专业相关联。 管理员用户除了具有和教师用户相同的权限外, 还具有对所有用户进行管理的功能。 管理员用户不能够自己注册, 都要由管理员用户来添加, 以方便统一进行管理。 用户登录和身份验证设计流程如图5 所示。

用户登录和身份信息验证页面是非常重要的部分, 它接收用户登录提交的信息, 并在用户信息表里验证是否存在该用户, 并判断用户分类以便获得相应的权限。

组卷模块: 该系统为网络考试系统, 因此考试将是本系统的关键功能。 本考试系统要能够为考试自动提供一套试卷, 试卷中的题量、 题型和分值都应该比较合理。

3 系统功能实现

本系统的功能按照用户划分, 可以将网上考试系统分为3大模块, 分别是: (1) 以考生身份登录; (2) 以教师身份登录; (3) 以管理员身份登录, 如图6 所示。

4 结语

利用Web技术对现有的考试系统进行改进, 设计出基于Web的网络考试的B/S系统。 本系统不仅能让用户实现在网上进行在线考试, 而且用户还不需要安装客户端软件, 本系统改变原有考试系统许多弊端, 具有计时准确、 方便、 快捷和安全等优点。

参考文献

[1]王玉香, 宫庆艳.高校文献检索课试题库建设的实践与探讨[J].情报探索, 2010, (05) .

[2]林洁璇.信息技术网络考试系统的研究与设计[J].电脑知识与技术, 2013, (09) .

Web考试系统 篇7

以某市交警的在职培训及考核为例, 按照公安部及市局提出的教育训练工作要求, 市交管局每年都将以一定的形式对在职民警进行基础知识及业务培训及考核, 但由于各种原因, 给我局民警进行现场考核带来不便。针对这个问题, 研究开发一套面向交警的基于Web技术的考试系统, 使民警可以不但随时随地通过网络进行学习培训及考核, 而且即使工种不同也可同时进行考试, 从而在人力、物力和财力上都有很大程度的节约, 同时也使在职培训的形式进一步多样化。

第二章需求分析

2.1在线考试系统

2.1.1在线考试系统的主要特点

在线考试系统一般有以下几个特点[1, 2]:

1、用多媒体的方式呈现:

实践证实, 在教学中加入多媒体的教学手段, 可以得到更佳的效果。

2、交互性:

对于传统教学媒体来说, 网络教学的一个很重要的特点就是它的交互性。教学中的交互活动是很常见的;学生需要教官解答一些学习上遇到的问题, 而教官需要学生学习情况的反馈。

3、开放性:

网络教学具有其它教学媒体所无法比拟的开放性。每个人不需要有专门的客户端工具, 只要他们能上网, 能使用web浏览器, 就可获取各种学习资料。

4、灵活性:

管理员可以随时进行数据库操作, 进行试卷的重组及题目的删减, 甚至管理员的任命和学生信息的录入等。

2.1.2在线考试系统的系统结构

目前的在线考试系统主要由前端应用系统和后端管理系统两大部分组成 (如图2-1所示) , 其中, 前端应用系统多采用B/S模式[3], 比较灵活, 具有高度的可扩展性;后端管理系统多采用C/S模式, 具有较好的安全性、可靠性和稳定性。

2.2系统的功能需求

该在线考试系统是针对特定对象——民警 (学员) 进行开发的。学员需要通过身份验证才能进入考试系统, 身份验证是该考试的第一个环节。通过身份验证后, 民警 (学员) 就可以进行在线考试。交卷后, 计算机会自动进行评卷, 给出成绩, 该成绩同时也保留在后台数据库。

任课教官通过管理人员的授权, 可以根据考试的要求、教学的内容等对试题进行录入、删除和修改, 这种操作可以随时、随地进行的, 满足了任课教官远程、及时操作的需求, 同时任课教官也可以也可以随时查看学员的成绩, 进行试卷分析、成绩管理等[4]。

2.3系统性能的需求

作为一个考试系统, 其首要认为是能够保证考生/学员能够进行正常考试——传统考试所要达到目的, 又能利用自身的优势完成传统考试不能完成的目的, 这种系统是基于网络的Web应用程序。为了实现这些目的, 在系统设计时, 其性能比需要满足以下两个要求:1、实用性, 2、可靠性。

第三章系统总体设计

3.1系统的结构模型

本文中的系统采用三层结构, 这是目前比较新的分布式应用软件体系结构。三层分别为数据层、功能层和表示层, 他们分布于独立的服务器上。这种结构最大的特点是在保证信息安全的同时有利于系统均衡负载和系统的维护。数据库服务器上面的是数据层;应用程序服务器和Web服务器上是功能层, 而表示层则是位于客户端上。

3.2在线考试模块流程

该系统的核心是在线考试的实现, 在线考试的流程包括“选择试题题型”、“答卷”、“提交”、“自动评卷”、“答案保存”和“成绩保存”等, 它们之间的关系如图3-1所示。

第四章系统实现

4.1主要程序简介

1、用户登录 (login.aspx)

login.aspx是系统的登录页面, 教官和学员可以通过该页登录到系统进行管理和进行考试。教官提交用户名和密码后, 系统在数据库中检索输入的用户名和密码, 如果有匹配的就通过身份认证, 进入到教官管理界面。学员登录的过程与教官类似, 只是通过认证以后转入考试页面。

2、主程序 (main.aspx)

该文件是考试的主页面[5], 它的主要功能有随机选题、生成试卷、试卷分发和提交等。为了防止学员互相抄袭作弊, 系统事先生成了若干份题量和难度相同, 但试题内容不同的试卷, 每个学员所做的题目都不是完全相同的, 这样可以有效的避免学员作弊又不影响考试的公平性原则。学员做完试题后点击提交按钮就可以将试题提交到服务器端, 由服务器端进行自动阅卷。

3、处理单选题 (chosetest.aspx、maintest.aspx、chosemark.aspx)

该组文件中的chosetest.aspx的主要功能是显示单选题的题号、maintest.aspx的功能是显示题目、chosemark.aspx的功能是实现单选题的自动阅卷。学员提交答卷之后, chosemark.aspx该文件就把学员的答案与数据库中的正确答案进行比较, 根据该题的分值, 计算出得分, 最后将考试结果记录存入数据库表中。

4、处理多选题 (multchosetest.aspx、multmaintest.aspx、multchosemark.aspx)

该组文件的功能主要有:多选题题号的显示、题目的显示和多选题的自动阅卷。当学员做完试题提交答卷以后, multchosemark.aspx文件就把学员的答案同题库中的正确答案进行比较, 最后统计出总分, 并将总分记录存入学员信息表中。判断题和填空题的实现方法类似。

5、教官管理功能 (manag.aspx)

教官可以通过该页面进行统一口令得设置、建立新的学员记录、修改原有学员状态、对未进行归类的题目进行管理、设立新的题目、重组试卷等。

4.2各功能模块的实现

4.2.1连接数据库

为便于与数据库进行连接, 系统专门定义了一个类my_db, 它的主要功能是连接数据库, 每当需要与数据库进行连接的时候, 便通过该类的对象进行操作, 使得程序中随时都可以方便的与数据库建立连接。

4.2.2学员登录页面的实现

学员输入警号和口令后, 如果通过身份验证就可以转到考试页面进行考试, 否则退回到登录页面提示错误, 并要求重新输入。这一过程的具体实现步骤是这样的:学员点击submit提交表单后, 将输入信息提交给aspx程序进行处理, aspx将学员的输入与数据库中的相应内容进行逐一对比, 如果发现一致的则说明数据库中存在该学员的信息, 那么就跳转到考试页面, 否则说明是非法用户, 提示出错信息。

4.2.3在线考试模块的实现

在线考试的流程是这样的:学员通过身份验证后登录到在线考试界面, 然后服务器从题库中依据某种算法抽取试题形成试卷, 并将试题显示到客户端浏览器中。学员每做完一种题型提交后方可进入下一题型的考试, 直到所有题型都测试完为止。

1、自动抽取试题的实现

我们创建了一个类来实现随机抽题, 其功能是产生一个0-1之间的双精度数。

2、计时算法

本计时算法主要有两个功能, 一个是在学员的浏览器端实时显示考试剩余时间, 另一个是当考试时间用完时, 终止学生答题并自动提交试卷。这里我们用客户端脚本语言JAVASCRIPT来实现。

3、防止学生作弊的分析与实现

在考试的过程中, 学员可能通过各种方法进行作弊, 比如上网查询或浏览文件, 为了防止这些作弊行为, 需要采取一些屏蔽措施。这里我们主要对鼠标右键、CTRL键等进行屏蔽。

4.2.4自动阅卷的算法分析及实现

自动阅卷的基本思想是:用学员提交的答案与原来试题库中的标准答案进行比较, 如果相同则说明学生的答案正确, 否则说明答案错误。在对多选题进行评分的时候, 只要有一个选项的答案与标准答案不一致, 就判断该题为错误。将所有题目判断完毕之后统计各题的总分, 并将其保存在数据库中。

4.2.5对考试题库的添加、删除、修改算法分析

教官还可以对题库进行管理操作, 主要包括对题库中的试题进行添加、修改和删除等操作。当点击建立新试题按钮, 将生成一个新的网页, 在该网页的表格中输入新的试题信息即可;如果要对试题进行修改, 可以直接选择要修改的试题, 然后在系统生成的修改界面中对试题进行直接修改即可;如果想要删除试题, 采用delete方法直接删除记录即可。

摘要:结合网络技术、数据库技术的发展现状和在线考试系统的实际应用情况, 讨论了一般在线考试系统的设计与实现技术, 提出了本系统的总体结构和功能模块, 然后通过系统结构设计、表的设计及前端软件开发, 构建并实现了一个基于B/S多层结构的、以ASP.NET技术和SQL后台数据库为基础的某市公安局公安交通管理局教育培训在线考试系统。

关键词:在线考试,B/S多层结构,组件技术

参考文献

[1]邓文渊.ASP与网页数据库设计.北京:中国铁道出版社, 2001, 100~118

[2]林金霖.ASP实务经典.北京:中国铁道出版社, 2000, 86~99

[3]付景叶.基于WEB的在线考试系统设计与实现[J].机械管理开发, 2006-01, 24 (2) :18~22

[4]黄清云.国外远程教育的发展与研究[J].微型计算机, 2000, 12 (5) :26~30

Web考试系统 篇8

关键词:考试报名系统,Web,设计,实现

以往考试报名系统运行以及管理实现的过程比较复杂,对考生信息的管理多依赖于手工操作的方式实现,手续繁琐且耗时较长,考试报名效率低下。加之在信息数据的统计与查询上不尽相同,因此会出现信息误差的问题,如何实现考试报名过程的信息化是非常重要的一项问题。本文以Web平台为载体, 通过对考试报名系统的设计与实现,使得考试报名工作变得方便快捷。

1 Web Service超文本信息系统

所谓超文本是指在数据信息的调用过程中无需严格按照顺序规律进行,可依据设定目标直接实现对数据信息的调用。 当前整个互联网网络系统是由超文本以及超媒体两种方式构成信息系统的,在网络系统内部布置有大量的信息链接方式。 在网络系统内部,Web为一种特殊的超文本信息系统,Web可通过应用超文本链接的方式以跳跃形式寻找不同类型的主题。

Web的主要特点包括:1)Web与平台无关。2)Web具有图形化以及可导航性的特点。3)Web具有分布式特点。在Web的应用背景下,可以将信息存放在不同站点上,操作者仅需要通过在浏览器中点击链接的方式即可实现对信息数据的跳跃式访问。通过这种方式,能够让不同空间下的信息数据在思维上呈现出一体化的特点;4)Web具有动态性特点。Web可经常更新提供者本身站点的信息,对于站点浏览十分主要。同时Web的信息交互也是其特性之一。

2考试报名系统开发环境

本研究所设计考试报名系统中,数据库服务器以及Web服务器操作系统均选用Windows NT Server操作平台,应用服务器为Apache Web服务器,数据库管理系统为My SQL 5.5数据库管理系统,页面开发语言为PHP语言结合Java Script语言,后台程序开发语言为JAVA语言。

综合对多种系统开发结构的对比研究认为:为充分满足考试报名系统的各方面功能要求,应选择B/S开发结构。同时,以Internet Explorer作为Web服务器浏览器支持,在满足用户终端对系统功能需求的同时,使维护成本得到有效控制。系统结构包括表示层、功能层以及数据层三层,PHP为系统提供容器支持,在浏览器支持下完成对数据库访问,并通过Web服务器技术支持实现用户终端与数据库之间的交互式访问。

3考试报名系统设计

3.1用户角色

结合本考试报名系统的操作流程以及各个步骤间的顺序关系,认为整个系统共涉及三类不同的用户角色,第一类是考生用户角色,第二类是考务用户角色,第三类则是系统管理用户角色。不同角色用户应当由系统分配不同登陆账户以及密码,并根据用户的具体角色分类分配不同的系统操作权限。以考生用户角色而言,此类角色为考试报名系统中的主要参与角色,在系统内部各个角色群体中规模最大。系统可通过对用户登录账户信息的识别与状态判断,将考生角色用户划分为有效、无效两种类型。对于考务角色而言,此类用户主要是招生考试办以及相关部门的工作人员,工作人员根据自身权限登录系统,系统分配相应的职责与权力范围,以便在考试报名系统的支持下的完成不同层次的招考工作;对于系统管理员而言, 此类群体主要是对整个考试报名系统进行管理与维护的人员, 一般情况下需要由经过专门培训的工作人员所担任,所负责的主要工作内容包括对考试报名系统权限的配置、系统升级、系统定期维护等。

3.2系统表单

对于考试报名系统而言,表单的概念与以往数据库系统中 “表”的基本概念是完全不同的。考试报名系统中的表单概念不单单具有数据库系统中“表”的特点,还是外键相关联多张数据库表或数据视图浏览器页面的具体体现形式之一。在表单中固定值项目包括性别、民族以及政治面貌等相关信息,在页面设置中引入下拉菜单选项,将具体数值作为码表项目并储存至数据库系统内部。通过这种设计方法,能够使系统资源得到有效简化,并使数据填报格式更加规范。除此以外,在系统表单中格式固定的数据(如默认按照xxxx-xx-xx格式输入的用户出生日期数据),可借助于页面Javascipt控件,在用户填写数据的过程中提供点选功能支持,一方面能够使用户所填写数据更加规范,另一方面也有效简化了对数据录入的方式与方法。并且,在系统部分下拉菜单中还设置有级连关系,如考生所报考专业以及学院均可采用级联式下拉选择的方式进行填写,Ajax技术的应用能够为该功能实现提供支持。

3.3功能模块设计

3.3.1考生信息填报模块

考生信息填报模块功能设计及其实现如图1所示。本模块需要为考试报名系统中的考生提供账号注册/登录,基本信息填报/修改,以及报考信息填报/修改等相关功能支持。具体功能有:1)账号注册/登录。主要功能是使考试报名系统中考生用户具备使用本系统的合法权限,除支持对考生信息的填写与修改以外,还需确保任意考生用户在系统中的唯一性,杜绝考生合法权限被恶意使用或窃取;2)考生信息填报。本模块主要功能是为考生用户填写相关信息提供页面支持。在考生注册账号并安全登录后,可转入信息完善页面,由考生根据个人实际情况填写包括姓名、性别、年龄、出生日期、户籍所在地、学历、职称、就职单位(就读学校)、政治面貌等基本信息,考务人员可在系统自动作用下验证所报名考生是否合规;3)报考信息填报。本模块所需要实现的功能是供考生用户提供填写相关信息数据的页面支持,所填写内容包括研究方向、专业学科以及导师等。考生报名系统应当根据招生考试简章,结合用户所填报的信息为其规划待考科目,并为考生提供可供选择的科目内容。

3.3.2考生个人信息管理模块

在考生用户根据自身实际情况填报相应信息数据后,可以通过页面切换的方式进入个人信息管理系统模块中。提供个人用户名以及密码完成系统登入。在具有相应操作权限的考生个人信息管理系统模块中,可支持对个人基本信息的修改。 整个管理系统模块的基本操作流程如图2所示。在该模块中需实现功能包括以下几个方面:1)照片上传。照片上传应位于考生个人信息管理模块中,作为对考生用户信息填报的补充。 考生用户应根据页面提示将个人近期真实免冠无遮挡照片上传至系统,通过图片上传模块可以对图片的尺寸大小、清晰度进行验证,以确保图片资料完全符合考试报名功能要求。上传成功并通过系统后台审核后可在用户头像界面中显示个人照片;2)报名信息查看/修改。此项功能的主要目的是提供考试报名的相关基础信息,由考生用户按照个人需求进行确认。在该模块中支持符合使用权限的考生用户对信息填报中的所有信息进行修改,确认信息填报真实无误后方可打印考试报名表格;3)报名表打印。

3.3.3图像采集模块

本模块需要在报考考生现场确认过程中将系统审核有效的考生用户个人图像采集提供给考务人员,以支持实时性的图像采集功能,将所采集图像信息以*.jpg形式储存至考生个人信息数据中,进而与考生用户个人信息向配合形成准考证证件, 并以此作为合适考生用户的依据。本系统要求现场参与考试的人员必须为本人参加,因此在生成考试报名表时需要提醒考生提前时间到报名点进行确认。采集到合理且有效的图像后系统可自动生成确认表,考务人员打印确认表并交由考生进行签字确认。以上操作确认无误后可扫描存储至考试报名系统中,以获得真实有效的身份信息。

3.3.4考务管理模块

考务管理模块属于考试报名系统的核心模块。根据考务工作所处的不同阶段与流程特点,在考务管理模块中需要面向系统考务人员提供功能支持。其基本结构如图3所示。结合图3,在信息发布功能中,应当负责完成对招生简章、考试信息、 报名信息以及考试成绩等内容的发布工作。报名信息导出功能应当提供学生相关报名情况的导出功能,导出信息数据可以指定为*.xls或*.word格式,根据插件功能可实现对导出格式的准确匹配,对权限不同的考务工作人员开放相应的模块功能。 在考场、考点分配方面,应当由考试报名系统根据招考要求对考点考场设置工作进行分配,按照考试科目以及考试时间将系统评估有效的考生进行批量式考点、考场分配,形成一套完整的分配方案。考试成绩全部确认后,考试报名系统可将考试成绩与考生准考证号、姓名所对应,自源文件导入系统内部,为考生查询提供方便。

4系统测试

随着软件系统的稳定发展,在面向Web的应用开发过程中使得软件系统测试面临着大量的问题与挑战。建立在Web开发模式基础之上的软件系统结构为B/S结构,其主要特点是在应用服务器内完成对程序的开发工作,用户则借助于客户端浏览器对服务器实现访问。通常情况下,这种访问具有并发性的特点,用户客户端浏览器具有多样性特点。从这一角度上来说,建立在Web开发模式基础之上的软件系统运行与测试会受到运行环境的严重制约。为评价本研究中所构建考试报名系统在功能方面的效果,展开系统测试研究。

为评价考试报名系统在功能实现以及性能方面的具体效果,对本考试报名系统相关功能的执行情况加以测试。结合本系统的功能要求,设计功能测试用例,借助于此种方式评价考试报名系统的功能是否可以与预期效果相一致经系统测试,结果提示:考试报名系统正常启动后,在信息填写页面的跳转方面,预期所达到的效果是自考试报名系统主界面所提供超链接地址中跳跃进入信息填写页面中,测试结果为通过;在进入生成报名号步骤中,预期效果为保存所填写个人信息,按照报名顺序生成报名号,数据库提示有新信息录入,测试结果为通过; 在上传照片步骤中,预期效果为严格按照系统要求上传个人照片,照片成功上传后可以支持考生对上传结果进行预览,不符合要求照片应提示上传失败,并重新进入图片上传页面中,测试结果为通过;在报名确认步骤中,预期效果为对考生信息进行审核,并支持确认后考生信息的查看与调阅,测试结果为通过。系统管理等其他功能模块的测试也符合预期结果、包括连接数据库。以及数据库地址超链接挑战等在内的应用功能经测试均能够得到理想状态。以上分析表明:功能测试结果显示考试报名系统整体功能运行良好,动作可靠程度高,能够满足设计标准,达到理想运行状态。

5结束语

目前整套考试报名系统已初步投入运行,系统操作便捷, 为考生提供快捷的报考服务,规范了报名信息,保证了报名信息的准确性和有效性。同时能够为考务人员提供信息化的工作平台,形成了对考务信息和考生信息的统一管理,同时系统能够迅速提供实时报名情况和汇总统计情况,有效提高了招考工作的效率。

参考文献

[1]胡玉琦.运用VFP9.0开发照相报名系统实现与国家专业技术人员计算机应用能力考试报名系统无缝衔接[J].数字技术与应用,2013(1):127.

[2]邓绯.基于B/S模式的技能考试报名系统研究与设计[J].齐齐哈尔大学学报:自然科学版,2015(3):59-62.

Web考试系统 篇9

关键词:web网络技术;数据库;JSP;安全预警系统;功能

中图分类号:TP393.08 文献标识码:A 文章编号:1674-7712 (2012) 18-0048-01

随着信息技术的飞速发展,Web网络应用正在逐渐成为新时期科技与经济发展的新方向,web网络的便捷性能进行对多种行业的应急事件进行安全预警。基于web网络的安全预警系统的主要优势在于其技术基础为现代信息技术,具有反应迅速,能够在大多数恶劣环境下进行,预警体系是面向服务对象的。鉴于当前社会对突发性应急预警信息系统具有越来越高的发展需求,且各不同系统间需要进行更高程度的集成,系统的开发工具和开发环境需要尽量统一化,因此基于web网络,具体结合其他技术的安全预警系统得到了广泛的关注。

一、Web网络技术原理

本文主要提到的Web网络技术为web service技术,该技术是一种基于对象/组件模型的分布式的计算机技术,其通过使用XML及建立在该语言基础上的SOAP协议进行交互,具体交互实现方式为客户端与服务器端的请求和数据结果都按照XML的形式通过SOAP协议进行数据封包,然后通过加密的HTTP网络进行数据包传送,实现交互。

基于该技术的通信系统具有以下优势:相较于传统的面向对象/组件模型的技术,该技术具有更好的网络环境优势;且由于基于web service技术,故其在复杂、异构的网络中可以更好的进行应用程序集成,而不用考虑这些应用程序所使用的编程语言和操作环境等;通过该技术,任何支持Internet标准技术的系统都可以被服务器端进行定位或者与其他web Service进行交互,该环境中的客户都可以在授权范围内进行服务调用,这就大大增强了系统的可实用性和便捷性,也就是其突破了通信和应用范围的限制。

二、web网络技术与其他技术结合应用概述

在当前的预警系统中,与web网络技术进行结合使用最多的是GIS,出现这种情况的主要原因在于,当前的安全预警系统主要被应用在气象、旅游、交通、或者其他对动态资源要求较高,对地理位置要求较为敏感的地区。

其他与webService技术相结合的技术还有诸如数据库访问技术、前台和后台之间的交互技术、基于ExtJS技术构建的Web客户端技术、其他技术等。一个完整的系统必然要具有强大的数据库支持,但是web网络技术的优势在于可以将复杂的面向对象的数据持久化,使数据访问与应用逻辑分离,保证系统具有更佳的可扩展性、可移植性、安全性、易维护性等,如此可以满足安全预警系统的开发需求。其次在前后台交互技术方面,结合web技术可以实现系统数据的异步传输,即人员与系统之间存在一个中间件,通过该中间件可以实现信息的传输,这样做的好处是脚本不会产生发送命令后挂起等待服务器响应的情况发生。再者,web技术及ExtJS技术可以使得前后台完全分离,这样可以对前后台进行相互独立的开发,只需要保证两者的数据接口相同即可,这样做的好处是后台程序可以进行不同平台间的移植,提高使用效率,增强系统兼容度。

三、对系统的功能的研究

基于web网络的系统主要在通信网络和数据库的基础上进行实现的。具体到某一项目中,项目的空间数据和属性数据就是安全预警所需监控的核心内容,通过利用web网络技术,可以对这些数据进行处理、分析以及技术挖掘,能够方便的实现查询、统计、显示、预警等功能。

(一)系统信息的交互查询功能

利用web网络技术及其他技术,可以对所监控的数据或者项目的图形或属性进行关联,实现不同条件下的数据查询,根据查询条件在web端或者客户端实现图、文、表的一体化显示。这就能够将被检测端的信息以显著的方式呈现在监测端,而监测端又可以根据显示数据的结果进行数据决策等操作。

(二)异常数据处理功能

在web端,也就是监测端,可以对监测数据进行数据分析,一旦出现尖峰数据或者突变数据,则根据被监测端的环境属性进行数据比较和判断,确定其是否为异常数据。若为异常数据,但该数据由于系统干扰等造成,可以进行粗差在线剔除,若确实为异常数据,则在监测端可以进行提醒和跟踪。

(三)安全预警功能

该功能的实现是在传统正常项目模型的基础上,对预警物理量进行时效分析、超限分析等确定其预警模型,然后利用web网络的高效便捷性和人工神经网络的智能技术建立预警端的自学习模型,通过该模型的技术指标对被监测项目进行预警,基于web网络的安全预警功能具有预警效率高、预警精度高的特点。

(四)系统权限管理

基于web网络的预警系统可以根据用户的级别设定不同用户可进行的操作的权限,只有得到足够授权的人员才能进行数据库访问、数据的查询、修改等操作。

四、总结

通过分析发现机遇web网络技术的安全预警系统具有更为动态和高效的功能显示,且其技术特点决定了该技术具有广泛的应用范围和较强的扩展与兼容性,具有很好的发展前景。

参考文献:

[1]金裕祥,马福恒,刘成栋.基于WEB的三维水库大坝安全实时监控预警系统[J].水电能源科学,2009,27(1).

[2]杨俭波,黄耀丽,徐颂,罗平.Web Service/Web GIS在突发性旅游灾害事件应急预警信息系统中的应用[J].人文地理,2006,21(4).

[3]吴巨峰,钟继卫,王鑫.一种新型桥梁健康监测预警系统设计[J].计算机时代,2012,8.

[4]吴妍.安全预警及保障系统研究与开发[J].科技传播,2012,4(15).

[5]龚剑,欧阳治华.基于Web网络技术的矿山安全预警系统及应用[J].金属矿山,2010,7.

[6]李和平,张明媚.基于Web GIS的瓦斯事故预警系统设计[J].煤炭工程,2011,4.

[作者简介]彭洋(1982-),男,四川省射洪县人,中国人民解放军后勤工程学院毕业,中国人民解放军92076部队助理工程师。

Web考试系统 篇10

在线考试系统包括考生的身份认证、试卷的生成、成绩的判定及查询;教师对试题的组题(查询、修改、增加、删除等)及考生成绩的查询;管理员对考生及教师的管理(查询、修改、增加、删除等);所有的考生根据需要可以去修改自己的密码。

1 在线考试系统实现的相关技术

在线考试系统是一个基于Web的应用系统,可以由ASP编程来实现。下面分别讨论如下:

1.1 数据库技术

在Web中与数据库接口技术有CGI、ADO、JDBC等,CGI可以用任何一种语言来编写,ADO需要与ASP联合起来使用,JDBC要用JAVA语言来编写。在本系统中用ADO技术来实现ASP与数据库的连接。

1.2 ASP技术

在B/S模式中,用户可以利用浏览器作为界面,输入需要的数据,浏览器将这些数据提交给Web服务器,通过数据网关与数据库相连,负责与数据库之间的数据交换,最终Web服务器将执行的结果返回浏览器。如图1所示。

1.3 软件配置

客户端可以采用Windows 2000操作系统和IE浏览器;Web服务器端采用Windows 2000 server中文版操作系统,选用自带的IIS5.0为Web服务器软件,Microsoft Access 2000为数据库管理软件。这些产品都属于微软公司,彼此之间已经过性能优化,有效做到无缝链接,有利于提高整个系统的稳定性与可靠性。

2 考试系统总体结构与数据库的设计

网上考试系统建立在B/S的三层模式上,通过Internet或校园网,用户完全可以利用Web页面使用本系统。Application Server端运行IIS服务器,执行ASP脚本,并调用ActiveX;Web Browser端执行客户端脚本,运行Application Server中IIS中ASP服务所生成的页面;考试系统所需要的数据库存放在DB Server上,ActiveX调用数据库中相应表的数据项,完成相应的操作。如图2所示。

根据系统功能设计的要求,在Access中创建数据库Exercise.mdb,数据库需要存储的信息如下:

* 考生信息表:考号、姓名、年级、年龄、班级、专业、口令、性别、成绩、正确率、考试、标记。

* 教师信息表:教师的编号、用户名和口令。

* 管理员信息表:管理员的用户名和口令。

* 题库信息表:章节号、考试题目和答案选项,其正确答案必须填在第一个选项中。

3 考试系统功能模块分析

考试系统有三个主要的模块,考生、教师和管理员三种用户具有不同的访问权限,因而也具有不同的操作功能,确保数据的安全性。

考试系统的主要功能模块分析如下:

3.1 考试功能模块

* 系统控制时间:采用倒计时的方式,当考试时间减为零时,系统会自动提交试卷。

* 防刷屏功能:在考试界面上,隐藏浏览器界面上方的菜单栏与工具栏,以防止用户刷新后重新做题。

* 试卷自动生成:利用随机函数产生试卷,可以有效防止雷同试题的出现,保证考试的公正性。

* 考试成绩判定:用户提交试卷或系统自动提交试卷后,随之出现考生成绩单及考试等级,同时存入Exercise.mdb数据库的考生信息表中。

3.2 组题功能模块

* 试题的编辑:对试题的章节、内容、答案选项的浏览、添加、修改、删除等操作。

* 考生成绩的查询:可以按页或条件查询考生信息表中字段的值,但不可以修改任何字段的值。

3.3 维护功能模块

* 教师和考生的管理:包括使用人员不同的访问控制、权限分配、口令修改及添加、修改、删除等操作,同时隐藏考生成绩的显示。

* 增加考生及教师的信息:在登录界面中,考生或教师不具有注册功能,管理员可以增加考生或教师的相关信息。

整个系统功能模块如图3所示。

如果细分下去,每一个功能模块都有相对应的子模块。下面用流程图的方式来表示考试功能模块与组题功能模块。

(1)考试功能模块的流程图。如图4所示。

(2)教师组卷系统包括对试题的添加、修改、删除和查询及考生信息查询功能。流程图如图5所示。

4 在线考试系统几个关键性技术的实现

4.1 与数据库相连

系统的操作,几乎都要涉及到对数据库的操作,因而在编写程序时,为了减少代码的冗余,可以把对数据库的打开操作写成一个单独的文件。下面的语句放在要调用数据库程序的开头,其好处可以减少代码重复,增加程序的易读性。

以命名为conn.inc为例,其内容为:

4.2 随机产生试题

为了能够做到不同的考生尽可能做不相同的试题,更加公正、真实地测试出考生掌握实际知识的水平,一是要有足够大的题库,题库越大,被抽到重复题目的概率越小;二是利用随机函数来抽取试题。

4.3 判定成绩

对于单一选择题来说,在试题库选项A是正确答案。为了打乱这种排列顺序,也采用了四个选项随机显示,而把正确选项存入在一个临时数组,以便于判定正误,计算出考试成绩。

4.4 防止考生再次考试

考生再次考试有两种可能性。第一种可能性是考生会通过浏览器工具栏上的“后退”按钮回到考试界面,可以重新登录将答案修改后再次提交,解决这个问题采用:

(1)逻辑判断是否已经提交过答案,利用Session对象中的Pass变量是否为1,在成功登录考生界面后,会有一个语句:

Session (“Pass”) = 1

考生在考试界面上点击过“提交”按钮,在成绩表程序result. asp的最后加一条语句:

Session (“Pass”) = 0

将Pass变量置为0,以表示本次测试结束。考生登录时,服务器先来判定Pass的值,如果为0,则考生只能查询本人的考试成绩。

(2)同时屏蔽掉浏览器的菜单栏和工具栏,其代码如下:

window.open “test.asp”,null,

“toolbar=yes,scrollbar=yes,fullscreen=yes,status=yes,resizable=no”

第二种可能性是考生登录界面后再重新登录,可以利用判定考生信息表中的“标记”字段的值是否为0。如果“标记”的值为1,则浏览器切换到查询结果显示界面上,而无法链接到考试试题界面。

4.5 系统自动控制考试时间

考试过程中,限定考试时间是一个不可缺少的因素,所以在本系统中设有倒计时提示,一旦设定的考试时间到,系统会自动提交试卷。部分代码如下:

5 总结

基于B/S模式的在线考试系统解决了C/S结构对客户端软件过分依赖的问题。系统在组题、评分、考试时间控制等方面实现网络化与自动化,同时具有一定的安全措施,保证在线考试的公平性和公正性。在线考试系统在网络环境下运行,基本功能齐全,操作界面友好,便于在局域网中推广使用。

参考文献

[1]李卫东,徐东升.基于B/S模式的校园网MIS系统.电脑开发与应用[J].2004,17(7):45-46.

[2]李鲲程,吴明辉,窦亮.ASP商务办公与网络应用系统开发实例导航[M].北京:人民邮电出版社,2004.163-229.

上一篇:医学教学质量下一篇:年度报告制度