论文部分内容阅读
摘要:随着计算机网络技术的迅猛发展,考试方式发生了巨大变化,使用计算机网络考试系统可大大缩短考试周期,提高工作效率,降低考试成本,增强考试的客观性。本文从实际出发设计了一种基于ASP技术的校园网络考试系统,实现了考试流程的系统化、规范化和自动化。
关键词:网络考试系统;ASP技术;系统设计
作者简介:袁斌(1981-),男,云南曲靖人,曲靖师范学院现代教育技术中心,讲师,工程硕士,主要研究方向:多媒体教育技术、计算机网络;杨晓婷(1979-),女,云南曲靖人,曲靖师范学院现代教育技术中心,贵州大学人文学院云南软件学院教学点信息化与管理专业硕士研究生,(贵州 贵阳 550025)主要研究方向:信息管理。(云南 曲靖 655011)
基金项目:本文系曲靖师范学院科研基金资助项目(项目编号:2009QN004)的研究成果。
网络考试系统课题产生的背景是当今教育信息化的趋势及我国高校教育信息化系统的建设,目的是充分利用学校现有的计算机软、硬件和网络资源实现无纸化考试,以弥补传统手工考试的不足。在传统的教学环节中,组织一次考试至少要经过五个步骤,即教师出卷、考生考试、教师阅卷、成绩评估和试卷分析,教师需要命题、阅卷、统计分数等等,工作量非常大。通过综合分析发现,传统纸面化考试方式存在组织周期长、考务过程繁琐、出题阅卷工作量大、保密性差、人工阅卷难以保证客观公正等诸多弊端。随着计算机网络技术的发展,考试方式有了新的变化,以计算机网络为平台的网络考试系统使用方便、操作简单,具有用户注册、多用户同时在线考试、动态随机生成试卷、自动控制考试时间、自动评分等功能,实现了学生在计算机上的无纸化考试,能为考试学生随时生成考试试题,并能立即得到考试成绩,大大减轻了教师出题和判卷的繁重工作,计算机网络无纸化考试系统因其自动高效、客观公正、安全可靠、灵活方便等特点,大大简化了传统考试的实施过程,缩短了考试周期,减轻了繁重的考务工作,节约了人力、物力和财力,降低了考试成本,提高了考试效率,避免了考试过程中的人为因素,保证了考试的公正性、规范性、科学性。本文根据实际需求,在研究ASP(Active Server Pages)动态服务器页面技术、B/S(Browser/Server)体系结构以及ADO(ActiveX Data Objects)数据库访问技术的基础上,设计了基于校园局域网内的网络考试系统。[1]
一、系统总体设计
1.B/S三层体系结构
B/S(Browser/Server浏览器/服务器)体系结构是从C/S(Client/Server客户机/服务器模式)结构,即客户端/服务器体系结构发展而来的。B/S是一种以Web技术为基础的新型系统平台模式,结构的特点是在层结构的基础上加入一个或多个中间件层,它把C/S体系结构中原本运行于客户端的应用程序放到了中间件层,客户端只负责显示与用户交互的页面及少量的数据处理(如数据合法性检验),工作体系结构的开放性好、易维护、便于扩展,客户浏览器只跟Web服务器交换数据,数据安全性比较高。[2]
本系统的设计基于B/S(浏览器/服务器)模式(见图1),包括数据库服务器、Web服务器、客户端浏览器三部分。在客户端运行浏览器,Web客户首先通过HTTP协议与Web服务器进行连接,再由Web客户经浏览器向Web服务器提交请求,客户端浏览器提供用户接口,负责产生用户的请求,并接收Web服务器传递的Web页面数据;Web服务器接收请求,将其转换为数据库服务器能识别的SQL语句传递给数据库服务器,数据库服务器执行后将结果返回给Web服务器,经Web服务器处理后生成浏览器所能识别的格式返回到客户端浏览器上。[3]
2.服务器端命令执行环境
在B/S三层体系结构中,应用服务器的功能可由微软IIS(Internet Information Server)和ASP(Active Server Pages)技术实现。IIS是一种功能强大的Web服务器,使用超文本传输协议传输信息。ASP是一种运行于服务器端的命令执行环境,虽然它只能运行于Windows平台,但它可以轻松地结合HTML的Web页面、脚本(Script)程序和ActiveX组件建立和执行动态、交互式的Web服务器应用程序。用ASP开发的Web应用程序面向对象,无需手动编译或链接程序,而且服务器端程序代码隐藏,在客户端仅可以看到由ASP输出的HTML文件。究其本质,ASP是一种类似HTML、Script与CGI的结合体,但是其运行效率却远比CGI更高,程序编制比HTML更方便灵活,程序安全及保密性比Script更好。因此,网络考试系统的设计首选ASP作为服务器端的命令执行环境。[4]
3.系统运行环境
基于高校公共课程网络考试系统的特殊性,本系统采用B/S模式,选择SQL Server 2000作为后台数据库,应用ASP开发工具,其运行环境要求如下:
(1)客户端。操作系统Windows 2000/XP,浏览器Internet Explore 5.0及以上版本;
(2)Web服务器端。Internet Information Server(IIS)6.0及其以上版本;
(3)数据库服务器端。操作系统Windows 2003,浏览器Internet Explore 5.0及以上版本,数据库Microsoft SQL Server 2000。目前主要的数据库有:Access、FoxPro、SQL Server等,其中网络型的SQL Server安全性远远高于桌面型的Access、FoxPro等数据库,每个数据库中可创建多达20万个数据,符合系统考题数目较多的要求,所以,本系统选用微软公司的SQL Server 2000作为后台数据库管理。
二、系统基本组成
1.系统功能设计
利用ASP技术开发的基于Web的多用户在线考试系统具有多用户同时在线考试、客观题自动判卷、题库维护、成绩管理等功能。根据需求分析,对本系统所要实现的功能划分为两大子系统:管理员版子系统和学生版子系统(如图2所示)。
(1)管理员子系统。管理员子系统主要包括五个功能模块(如图3所示),分别是考试管理、班级管理、试题管理、学生信息管理和成绩管理模块五部分,各子模块功能分述如下。
1)考试管理。主要负责考试相关的一些设置信息。分别是设置本场试卷、设置本场考生、准备考试指令、开考指令、成绩答案查看设置、已登陆情况、已交卷情况。设置本场试卷是从众多试卷中抽取一份作为本场考试的试卷,没有设置本场试卷时以上次考试试卷作为本场试卷,或者是添加试卷时设置的默认试卷。设置本场考生是设定本场考试的对象,限制本场考试哪些学生进行考试,哪些不能登录考试系统,主要以班为单位。准备考试指令发出后,学生登录系统等待开考指令发出进行答卷,主要是用来统一考试时间。开考指令发出后测试页面由等待页转到试题页,学生可以进行解答。成绩答案查看设置主要设定学生交卷后是否可以查看成绩以及是否可以进行答案核对。已登录情况和已交卷情况分别是对考试中已经登录或者已经交卷的学生进行监控、统计和重置。[5]
2)班级管理。主要是班级信息的添加、删除和修改,可以添加新班级,删除原有班级,查询班级学生信息。
3)试题管理。主要是完成试卷的生成,包括自动组卷和手工组卷,试卷的修改和删除,选择试卷生成考卷,对试题的添加、修改(客观题题目和答案)和删除,根据不同的查询条件(题目内容、难易度或两者混合)查询试题信息,添加试题时,可以设定各种题型的数目、分值,设定题目和答案,上传操作题素材,也可以把当前添加试题设置为本场考试默认的试卷。
4)学生信息管理。主要是添加和修改学生资料(姓名、班级和学号),初始化全体学生登录密码,修改学生个人资料则通过姓名或学号关键字来搜索定位。
5)成绩管理模块。主要实现网络改卷、系统管理员查看本场考试成绩(Excel格式成绩表)、查看总成绩(Excel格式总成绩表)、成绩表打印。根据成绩表可查询个人成绩、各分数段的人数、平均分(包括各参考班级的平均成绩和总平均成绩)。
(2)学生子系统。学生子系统主要分为四个功能模块(如图4所示)。
1)学生登录检测模块。其主要功能是识别学生输入的学号和密码验证,对学生的身份作出判断,将学生端的浏览器导向对应的页面。如果是考生,通过密码验证后,浏览器显示考试模块主界面;如果是管理员,浏览器显示管理模块主界面;如果验证不通过,提示用户重新输入。
2)网络在线考试模块。其功能是实现学生对客观题(单选、多选、判断题)进行网络答题及提交试卷。考生登录验证通过后显示考试科目选择界面,根据考生选择的科目,服务器端调用随机抽题程序,组成一份完整的试卷并返回客户端显示供考生在线答题,同时开始考试计时。当考生完成考试手动点击交卷或考试时间到系统自动交卷时,服务器调用阅卷程序进行试卷批改,同时计算总分存入数据库。[6]
3)查看成绩和答案模块。其主要功能是考生通过成绩查询页面对本人考核成绩进行查询和答案核对,学生可以看到当场考试客观题成绩或各类题型(单选、多选、判断题)分值(分值由管理模块设置),同时通过系统标识来显示学生做错的题目和该题的正确答案。
4)个人信息维护模块。其功能可以在上述在线考试和查询成绩两个页面中进行个人信息修改,学生可以修改自己的身份信息和预设系统登录密码。
2.系统数据库设计
数据库在本系统中占有非常重要的地位,数据库结构设计的好坏直接对系统的效率及实现的效果产生重大影响。合理的数据库结构可以提高数据存储的效率,保证数据的完整和一致,也将有利于程序的实现。本系统使用微软公司的SQL Server 2000,根据系统特点表格设计具体如下:
表1:科目信息(科目号、科目名称、所属院系代号),其中科目号是主键,不能为空;
表2:考生信息(准考证号、密码、姓名、性别、学号、所在院校、年级、班级、考生状态、考生权限、参加考试类型),其中准考证号是主键,不能为空;
表3:管理员表(工作证号、密码、管理员姓名、性别、所在部门、身份等级),其中工作证号是主键,不能为空;
表4:试卷属性表(科目代号、科目名称、总分、试题量、答题时间、试卷类型、难易系数、教师姓名),其中科目代号是主键,不能为空;
表5:考生成绩表(准考证号、科目代号、试卷编号、科目名称、成绩、补考成绩),其中准考证号是主键,不能为空;
表6:考生试卷答题表(准考证号、科目代号、试卷编号、科目名称、问题号、答案),其中准考证号是主键,不能为空;
表7:系别信息表(院系代号、院系名称),其中院系代号是主键,不能为空。
本系统建立一个稳定的后台数据库系统,通过该数据库管理整个考试系统所需的信息(用户信息、试题信息、试卷信息、考试信息等)。为了从多方面来保障考生考试信息的安全性、可靠性和考试成绩的可依赖性,本系统还建立了一套安全机制,这套机制包括管理员账号和学生账号的安全机制、后台数据库的安全机制、考试过程的监督控制机制。[7]
3.系统功能实现技术
本系统采用三层B/S结构模型,表示层位于学生考试机上,功能层位于Web服务器上,数据层位于数据库服务器上,这种结构有利于系统的负载平衡和数据维护,同时也保证了信息安全。在表示层上,它提供一组标准的界面来发布、编辑和接受数据,并保持用户界面的一致性和完整性。功能层集中了系统的事务逻辑处理,它对事务规则和过程进行封装,使得每个单独的对象都有清楚的目的和作用。功能层构造事务对象的工作可以和构造表示层的事务方案同时进行,而且形成了一组固定的事务对象后,就已建立了一个特定的计算环境,将来再开发同一领域的新事务解决方案时可直接使用,或只需稍作改动。[8]
三、系统实现
1.系统主要功能实现
(1)系统登录。首先,打开IE浏览器,输入正确的网页地址链接进入网络考试系统登录页面,分别在账号和密码处输入正确的登录信息,再输入系统随机给定的登录验证码,单击“登录”按钮,进入网络在线考试主页面。
1)若登录者是管理员用户,则进入管理员系统管理主页面,若是学生用户,则进入学生在线考试主页面。系统登录流程如图5所示。
2)用户输入账号和密码之后进入中间层,利用MD5加密算法对密码进行加密,生成相应的SQL语句,传递给数据层,数据层执行该语句,并返回相关信息,中间层根据返回的相关信息对用户进行相关判断,并将判断结果返回给应用层主页面。实现过程和详细方法如图6所示。
(2)在线考试。考生登录进入考试系统后,选择考试科目,通过Session变量将选择的信息保存,然后选择是否开始考试。若选择开始考试,则连接考试数据库,根据考试信息表设置考试信息,从数据库中随机抽取题目,生成随机试卷,开始考试,若没有选择开始考试,则考试系统一直等待考试开始。在线考试流程如图7所示。
(3)成绩查询。登录成功后,进入系统管理员页面,在此页面的右上方点击“查询成绩”按钮,进入查询页面,查询成绩流程如图8所示。
2.系统页面
(1)登录页面(提供用户名&密码接口),如图9所示。
图9 登录页面
(2)考试管理页面,如图10所示。
图10 考试管理页面
(3)考试页面(试题页),如图11所示。
图11 考试页面
(4)查看分数和核对答案,如图12所示。
图12 查看分数、核对答案
3.系统安全
为了确保网络考试系统数据访问和存储的安全性,要在用户身份鉴别、交卷和答卷保存上运用新技术。
(1)用户身份鉴别机制。凡进入网络在线考试的用户,都要通过用户身份验证才能进入,用户登录后系统自动对用户身份进行验证,根据用户的权限转向对应的页面。系统针对不同级别的用户授予不同的访问权限,只有在指定时间和IP范围内经过授权的用户才可以访问系统,支持按权限进行操作。
(2)XML容错交卷技术。系统中最关键的考试交卷功能可同时采用XML技术设计,让试卷在客户端生成XML数据上传到服务器,一旦在服务器和网络上出现故障时,能够保留并锁定交卷前的现场,不允许继续答题,等待故障处理后继续交卷。
(3)答卷保存技术。系统通过设置服务器端计时系统控制答题时间,超时则不允许考生登录,考试时间到系统自动交卷,同时限制提交次数,只提供一次提交机会。考试过程中系统将考生答卷保存在服务器上,考试期间出现任何意外情况,考生都可以在其它计算机上继续答题,此前的试卷、答案和考试时间全部保留,答卷保存可以由系统管理员设定为“手工”或“自动”两种。[9]
四、结束语
随着计算机技术和网络技术的发展,高校信息化程度的提高,为了适应新形势的需要,应充分利用高校的资源,使之在各类考试中发挥高效、便捷的作用。本文阐述了基于B/S模式网络考试系统的总体设计,系统开发简单,共享性强,无需安装客户端,可直接使用IE浏览器进行网络考试,功能扩展性强,通过增加网页即可增加服务器功能,系统功能维护便捷,只需要改变网页,即可实现用户同步更新。但由于受硬件设备和开发技术等方面的限制,该系统尚存在一些不足,有待于进一步修改和完善,以使其在高校数字化校园建设中发挥积极的作用。
参考文献:
[1]张宇杰.在线考试系统及其实现[J].机械管理开发,2006,(8):
150-153.
[2]杜钦生,林甲.在线考试系统的设计与实现[J].长春大学学报,2009,(2).
[3]李俊,彭昕彦,丁胜.基于ASP的在线考试系统的设计与实现[J].电脑与信息技术,2005,(4):60-62.
[4]屈喜龙.ASP+SOL Server开发动态网站实例荟萃[M].北京:机械工业出版社,2006.
[5]李新叶.基于ASP的网上题库与在线考试系统[J].微机发展,2004,(1):112-113.
[6]唐晏.利用ASP实现的网络考试系统[J].教育信息化,2004,(1):
36-38.
[7]唐俊武,南理勇,左强.在线考试系统开发中的几个问题及解决方法[J].计算机与数字工程,2005,(8):144-147.
[8]李俊霞,陈新林,李敏.基于B/S模式的网上考试系统的设计[J].电脑知识与技术,2009,(3):367-368.
[9]鲁立,刘桢.网络考试系统的安全分析[J].电脑知识与技术,2009,(6).
(责任编辑:刘辉)
关键词:网络考试系统;ASP技术;系统设计
作者简介:袁斌(1981-),男,云南曲靖人,曲靖师范学院现代教育技术中心,讲师,工程硕士,主要研究方向:多媒体教育技术、计算机网络;杨晓婷(1979-),女,云南曲靖人,曲靖师范学院现代教育技术中心,贵州大学人文学院云南软件学院教学点信息化与管理专业硕士研究生,(贵州 贵阳 550025)主要研究方向:信息管理。(云南 曲靖 655011)
基金项目:本文系曲靖师范学院科研基金资助项目(项目编号:2009QN004)的研究成果。
网络考试系统课题产生的背景是当今教育信息化的趋势及我国高校教育信息化系统的建设,目的是充分利用学校现有的计算机软、硬件和网络资源实现无纸化考试,以弥补传统手工考试的不足。在传统的教学环节中,组织一次考试至少要经过五个步骤,即教师出卷、考生考试、教师阅卷、成绩评估和试卷分析,教师需要命题、阅卷、统计分数等等,工作量非常大。通过综合分析发现,传统纸面化考试方式存在组织周期长、考务过程繁琐、出题阅卷工作量大、保密性差、人工阅卷难以保证客观公正等诸多弊端。随着计算机网络技术的发展,考试方式有了新的变化,以计算机网络为平台的网络考试系统使用方便、操作简单,具有用户注册、多用户同时在线考试、动态随机生成试卷、自动控制考试时间、自动评分等功能,实现了学生在计算机上的无纸化考试,能为考试学生随时生成考试试题,并能立即得到考试成绩,大大减轻了教师出题和判卷的繁重工作,计算机网络无纸化考试系统因其自动高效、客观公正、安全可靠、灵活方便等特点,大大简化了传统考试的实施过程,缩短了考试周期,减轻了繁重的考务工作,节约了人力、物力和财力,降低了考试成本,提高了考试效率,避免了考试过程中的人为因素,保证了考试的公正性、规范性、科学性。本文根据实际需求,在研究ASP(Active Server Pages)动态服务器页面技术、B/S(Browser/Server)体系结构以及ADO(ActiveX Data Objects)数据库访问技术的基础上,设计了基于校园局域网内的网络考试系统。[1]
一、系统总体设计
1.B/S三层体系结构
B/S(Browser/Server浏览器/服务器)体系结构是从C/S(Client/Server客户机/服务器模式)结构,即客户端/服务器体系结构发展而来的。B/S是一种以Web技术为基础的新型系统平台模式,结构的特点是在层结构的基础上加入一个或多个中间件层,它把C/S体系结构中原本运行于客户端的应用程序放到了中间件层,客户端只负责显示与用户交互的页面及少量的数据处理(如数据合法性检验),工作体系结构的开放性好、易维护、便于扩展,客户浏览器只跟Web服务器交换数据,数据安全性比较高。[2]
本系统的设计基于B/S(浏览器/服务器)模式(见图1),包括数据库服务器、Web服务器、客户端浏览器三部分。在客户端运行浏览器,Web客户首先通过HTTP协议与Web服务器进行连接,再由Web客户经浏览器向Web服务器提交请求,客户端浏览器提供用户接口,负责产生用户的请求,并接收Web服务器传递的Web页面数据;Web服务器接收请求,将其转换为数据库服务器能识别的SQL语句传递给数据库服务器,数据库服务器执行后将结果返回给Web服务器,经Web服务器处理后生成浏览器所能识别的格式返回到客户端浏览器上。[3]
2.服务器端命令执行环境
在B/S三层体系结构中,应用服务器的功能可由微软IIS(Internet Information Server)和ASP(Active Server Pages)技术实现。IIS是一种功能强大的Web服务器,使用超文本传输协议传输信息。ASP是一种运行于服务器端的命令执行环境,虽然它只能运行于Windows平台,但它可以轻松地结合HTML的Web页面、脚本(Script)程序和ActiveX组件建立和执行动态、交互式的Web服务器应用程序。用ASP开发的Web应用程序面向对象,无需手动编译或链接程序,而且服务器端程序代码隐藏,在客户端仅可以看到由ASP输出的HTML文件。究其本质,ASP是一种类似HTML、Script与CGI的结合体,但是其运行效率却远比CGI更高,程序编制比HTML更方便灵活,程序安全及保密性比Script更好。因此,网络考试系统的设计首选ASP作为服务器端的命令执行环境。[4]
3.系统运行环境
基于高校公共课程网络考试系统的特殊性,本系统采用B/S模式,选择SQL Server 2000作为后台数据库,应用ASP开发工具,其运行环境要求如下:
(1)客户端。操作系统Windows 2000/XP,浏览器Internet Explore 5.0及以上版本;
(2)Web服务器端。Internet Information Server(IIS)6.0及其以上版本;
(3)数据库服务器端。操作系统Windows 2003,浏览器Internet Explore 5.0及以上版本,数据库Microsoft SQL Server 2000。目前主要的数据库有:Access、FoxPro、SQL Server等,其中网络型的SQL Server安全性远远高于桌面型的Access、FoxPro等数据库,每个数据库中可创建多达20万个数据,符合系统考题数目较多的要求,所以,本系统选用微软公司的SQL Server 2000作为后台数据库管理。
二、系统基本组成
1.系统功能设计
利用ASP技术开发的基于Web的多用户在线考试系统具有多用户同时在线考试、客观题自动判卷、题库维护、成绩管理等功能。根据需求分析,对本系统所要实现的功能划分为两大子系统:管理员版子系统和学生版子系统(如图2所示)。
(1)管理员子系统。管理员子系统主要包括五个功能模块(如图3所示),分别是考试管理、班级管理、试题管理、学生信息管理和成绩管理模块五部分,各子模块功能分述如下。
1)考试管理。主要负责考试相关的一些设置信息。分别是设置本场试卷、设置本场考生、准备考试指令、开考指令、成绩答案查看设置、已登陆情况、已交卷情况。设置本场试卷是从众多试卷中抽取一份作为本场考试的试卷,没有设置本场试卷时以上次考试试卷作为本场试卷,或者是添加试卷时设置的默认试卷。设置本场考生是设定本场考试的对象,限制本场考试哪些学生进行考试,哪些不能登录考试系统,主要以班为单位。准备考试指令发出后,学生登录系统等待开考指令发出进行答卷,主要是用来统一考试时间。开考指令发出后测试页面由等待页转到试题页,学生可以进行解答。成绩答案查看设置主要设定学生交卷后是否可以查看成绩以及是否可以进行答案核对。已登录情况和已交卷情况分别是对考试中已经登录或者已经交卷的学生进行监控、统计和重置。[5]
2)班级管理。主要是班级信息的添加、删除和修改,可以添加新班级,删除原有班级,查询班级学生信息。
3)试题管理。主要是完成试卷的生成,包括自动组卷和手工组卷,试卷的修改和删除,选择试卷生成考卷,对试题的添加、修改(客观题题目和答案)和删除,根据不同的查询条件(题目内容、难易度或两者混合)查询试题信息,添加试题时,可以设定各种题型的数目、分值,设定题目和答案,上传操作题素材,也可以把当前添加试题设置为本场考试默认的试卷。
4)学生信息管理。主要是添加和修改学生资料(姓名、班级和学号),初始化全体学生登录密码,修改学生个人资料则通过姓名或学号关键字来搜索定位。
5)成绩管理模块。主要实现网络改卷、系统管理员查看本场考试成绩(Excel格式成绩表)、查看总成绩(Excel格式总成绩表)、成绩表打印。根据成绩表可查询个人成绩、各分数段的人数、平均分(包括各参考班级的平均成绩和总平均成绩)。
(2)学生子系统。学生子系统主要分为四个功能模块(如图4所示)。
1)学生登录检测模块。其主要功能是识别学生输入的学号和密码验证,对学生的身份作出判断,将学生端的浏览器导向对应的页面。如果是考生,通过密码验证后,浏览器显示考试模块主界面;如果是管理员,浏览器显示管理模块主界面;如果验证不通过,提示用户重新输入。
2)网络在线考试模块。其功能是实现学生对客观题(单选、多选、判断题)进行网络答题及提交试卷。考生登录验证通过后显示考试科目选择界面,根据考生选择的科目,服务器端调用随机抽题程序,组成一份完整的试卷并返回客户端显示供考生在线答题,同时开始考试计时。当考生完成考试手动点击交卷或考试时间到系统自动交卷时,服务器调用阅卷程序进行试卷批改,同时计算总分存入数据库。[6]
3)查看成绩和答案模块。其主要功能是考生通过成绩查询页面对本人考核成绩进行查询和答案核对,学生可以看到当场考试客观题成绩或各类题型(单选、多选、判断题)分值(分值由管理模块设置),同时通过系统标识来显示学生做错的题目和该题的正确答案。
4)个人信息维护模块。其功能可以在上述在线考试和查询成绩两个页面中进行个人信息修改,学生可以修改自己的身份信息和预设系统登录密码。
2.系统数据库设计
数据库在本系统中占有非常重要的地位,数据库结构设计的好坏直接对系统的效率及实现的效果产生重大影响。合理的数据库结构可以提高数据存储的效率,保证数据的完整和一致,也将有利于程序的实现。本系统使用微软公司的SQL Server 2000,根据系统特点表格设计具体如下:
表1:科目信息(科目号、科目名称、所属院系代号),其中科目号是主键,不能为空;
表2:考生信息(准考证号、密码、姓名、性别、学号、所在院校、年级、班级、考生状态、考生权限、参加考试类型),其中准考证号是主键,不能为空;
表3:管理员表(工作证号、密码、管理员姓名、性别、所在部门、身份等级),其中工作证号是主键,不能为空;
表4:试卷属性表(科目代号、科目名称、总分、试题量、答题时间、试卷类型、难易系数、教师姓名),其中科目代号是主键,不能为空;
表5:考生成绩表(准考证号、科目代号、试卷编号、科目名称、成绩、补考成绩),其中准考证号是主键,不能为空;
表6:考生试卷答题表(准考证号、科目代号、试卷编号、科目名称、问题号、答案),其中准考证号是主键,不能为空;
表7:系别信息表(院系代号、院系名称),其中院系代号是主键,不能为空。
本系统建立一个稳定的后台数据库系统,通过该数据库管理整个考试系统所需的信息(用户信息、试题信息、试卷信息、考试信息等)。为了从多方面来保障考生考试信息的安全性、可靠性和考试成绩的可依赖性,本系统还建立了一套安全机制,这套机制包括管理员账号和学生账号的安全机制、后台数据库的安全机制、考试过程的监督控制机制。[7]
3.系统功能实现技术
本系统采用三层B/S结构模型,表示层位于学生考试机上,功能层位于Web服务器上,数据层位于数据库服务器上,这种结构有利于系统的负载平衡和数据维护,同时也保证了信息安全。在表示层上,它提供一组标准的界面来发布、编辑和接受数据,并保持用户界面的一致性和完整性。功能层集中了系统的事务逻辑处理,它对事务规则和过程进行封装,使得每个单独的对象都有清楚的目的和作用。功能层构造事务对象的工作可以和构造表示层的事务方案同时进行,而且形成了一组固定的事务对象后,就已建立了一个特定的计算环境,将来再开发同一领域的新事务解决方案时可直接使用,或只需稍作改动。[8]
三、系统实现
1.系统主要功能实现
(1)系统登录。首先,打开IE浏览器,输入正确的网页地址链接进入网络考试系统登录页面,分别在账号和密码处输入正确的登录信息,再输入系统随机给定的登录验证码,单击“登录”按钮,进入网络在线考试主页面。
1)若登录者是管理员用户,则进入管理员系统管理主页面,若是学生用户,则进入学生在线考试主页面。系统登录流程如图5所示。
2)用户输入账号和密码之后进入中间层,利用MD5加密算法对密码进行加密,生成相应的SQL语句,传递给数据层,数据层执行该语句,并返回相关信息,中间层根据返回的相关信息对用户进行相关判断,并将判断结果返回给应用层主页面。实现过程和详细方法如图6所示。
(2)在线考试。考生登录进入考试系统后,选择考试科目,通过Session变量将选择的信息保存,然后选择是否开始考试。若选择开始考试,则连接考试数据库,根据考试信息表设置考试信息,从数据库中随机抽取题目,生成随机试卷,开始考试,若没有选择开始考试,则考试系统一直等待考试开始。在线考试流程如图7所示。
(3)成绩查询。登录成功后,进入系统管理员页面,在此页面的右上方点击“查询成绩”按钮,进入查询页面,查询成绩流程如图8所示。
2.系统页面
(1)登录页面(提供用户名&密码接口),如图9所示。
图9 登录页面
(2)考试管理页面,如图10所示。
图10 考试管理页面
(3)考试页面(试题页),如图11所示。
图11 考试页面
(4)查看分数和核对答案,如图12所示。
图12 查看分数、核对答案
3.系统安全
为了确保网络考试系统数据访问和存储的安全性,要在用户身份鉴别、交卷和答卷保存上运用新技术。
(1)用户身份鉴别机制。凡进入网络在线考试的用户,都要通过用户身份验证才能进入,用户登录后系统自动对用户身份进行验证,根据用户的权限转向对应的页面。系统针对不同级别的用户授予不同的访问权限,只有在指定时间和IP范围内经过授权的用户才可以访问系统,支持按权限进行操作。
(2)XML容错交卷技术。系统中最关键的考试交卷功能可同时采用XML技术设计,让试卷在客户端生成XML数据上传到服务器,一旦在服务器和网络上出现故障时,能够保留并锁定交卷前的现场,不允许继续答题,等待故障处理后继续交卷。
(3)答卷保存技术。系统通过设置服务器端计时系统控制答题时间,超时则不允许考生登录,考试时间到系统自动交卷,同时限制提交次数,只提供一次提交机会。考试过程中系统将考生答卷保存在服务器上,考试期间出现任何意外情况,考生都可以在其它计算机上继续答题,此前的试卷、答案和考试时间全部保留,答卷保存可以由系统管理员设定为“手工”或“自动”两种。[9]
四、结束语
随着计算机技术和网络技术的发展,高校信息化程度的提高,为了适应新形势的需要,应充分利用高校的资源,使之在各类考试中发挥高效、便捷的作用。本文阐述了基于B/S模式网络考试系统的总体设计,系统开发简单,共享性强,无需安装客户端,可直接使用IE浏览器进行网络考试,功能扩展性强,通过增加网页即可增加服务器功能,系统功能维护便捷,只需要改变网页,即可实现用户同步更新。但由于受硬件设备和开发技术等方面的限制,该系统尚存在一些不足,有待于进一步修改和完善,以使其在高校数字化校园建设中发挥积极的作用。
参考文献:
[1]张宇杰.在线考试系统及其实现[J].机械管理开发,2006,(8):
150-153.
[2]杜钦生,林甲.在线考试系统的设计与实现[J].长春大学学报,2009,(2).
[3]李俊,彭昕彦,丁胜.基于ASP的在线考试系统的设计与实现[J].电脑与信息技术,2005,(4):60-62.
[4]屈喜龙.ASP+SOL Server开发动态网站实例荟萃[M].北京:机械工业出版社,2006.
[5]李新叶.基于ASP的网上题库与在线考试系统[J].微机发展,2004,(1):112-113.
[6]唐晏.利用ASP实现的网络考试系统[J].教育信息化,2004,(1):
36-38.
[7]唐俊武,南理勇,左强.在线考试系统开发中的几个问题及解决方法[J].计算机与数字工程,2005,(8):144-147.
[8]李俊霞,陈新林,李敏.基于B/S模式的网上考试系统的设计[J].电脑知识与技术,2009,(3):367-368.
[9]鲁立,刘桢.网络考试系统的安全分析[J].电脑知识与技术,2009,(6).
(责任编辑:刘辉)