1 引 言
计算机的广泛应用及其技术的发展,对传统的教育模式提出了新的挑战。传统的考试过程一般要经过教师出卷、学生考试、教师阅卷、统计成绩4个环节,随着学生人数的增加,这一过程的工作量也日益巨增。为了减轻教师的工作负担及提高工作效率,要求借助于计算机实现无纸化考试。多媒体以及Internet的出现和发展使得考试的手段和载体发生了根本性的变化,Internet的开放性和分布性使得考试不受时间和空间的限制。基于Internet的网上考试系统的研究,已倍受大家关注。本文对开发网上考试系统的相关技术及有关问题进行了初步的探讨和实践。
2 网上考试系统的体系结构
网络应用软件运行的模式主要有2类:Client/Server和Browser/Web模式。前者的缺点是开发成本高、维护复杂、升级麻烦;后者是近几年伴随Internet迅速发展起来的一种技术,他与客户/服务器方式类似,客户端是一个标准的浏览器,服务器端是Web服务器和数据库服务器,其主要优点是开发、维护、升级的经济性以及良好的开放性。从考试系统的性质来看,他要服务于众多考生,并且考试系统的软件也将不断的发展与更新,基于上述考虑,用Browser/Web模式设计考试系统,服务器端采用Web Server+数据库系统+ASP组件构成考试的应用服务系统;客户端采用浏览器完成考试全过程。
网上考试系统的应用程序可分为考生考试程序和考试管理程序,考生考试程序主要实现考生登录的身份验证、试卷生成、接收考生所选答案、计算分数以及考生考试成绩的查询。考试管理程序实现对学生信息库、答题信息库和试题库的管理及维护工作。根据上述需求分析,基于B/S模式的网上考试系统的体系结构如图1所示。
3 网上考试系统的软件方案
系统的开发软件采用Microsoft公司的ASP,ADO和VBScript;数据库管理系统采用SQL Servet 2000,用ASP,HTML语言和VBScript编写服务器端Web应用程序;用ADO以及ODBC实现应用程序与数据库的连接。所选软件的特点如下:
(1)ASP技术。开发Web应用程序的常见技术有CGI,IDC,ISAP,ASP以及Java。本系统采用的是ASP技术。ASP是由Microsoft提出的基于服务器端脚本编写环境,使用他可以创建和运行动态的、交互的、高性能的Web服务应用程序。ASP是目前公认的建立WindowsNT动态站点最好的工具。他与ADO的充分结合,提供了强大的数据库访问功能,使之成为进行网上数据库管理的重要手段。ASP脚本运行在服务器端,这样就极大地减少对客户端的要求,而且又有效地保护开发人员的知识产权不受侵犯。
(2)ADO技术。ADO(AetiveX Data Object)也称ActiveX数据对象,系统集中采用他访问后台数据库。ADO是新开发的,基于远程数据对象(RDO)和数据访问对象(DAO)迅速发展的结构。他可以使Web页面开发者轻松存取Internet的数据库,是可以在用户端实现网上立即、及时更新显示的最新Web页面数据库技术,利用数据库与Web页面的结合可以使Web站点更能够与数据做出集成。
(3)后台数据库ODBC技术。目前常用的ODBC数据库有SQL Server,ORACLE,Informix等,本系统采用SQL Server 2000作为后台数据库,在库记录检索中,采用简单查询、多条件组合式查询和基于内容的搜索式查询;在记录集显示中,采用多页显示技术。
4 网上考试系统的功能
网上考试系统主要包括教师部分、学生部分和网站辅助信息部分。本系统能够实现任课教师出题、考生选择考试科目、自动发放试卷、学生在线考试、自动阅卷给出成绩、考试成绩存入数据库、考生日后查询考试成绩等主要功能。本系统还配备了辅助功能,如用户留言,管理员发布公告以及整个数据库的维护管理模块,其功能结构图如图2所示。
(1)账号管理模块:他实现对用户账号的管理功能,包括注册和登陆以及修改自己个人信息等。
(2)学生选课模块:他是供考生选择考试课程而服务的,他能将属于考生所在专业的、并且试卷已经出好的课程调出来,供考生自己选择要考试的科目。
(3)在线考试模块:他能实现学生的联机考试功能,系统自动调出试卷,供考生在线作答。
(4)计算分数模块:他实现系统的自动阅卷功能,如果试题不满100分,他会自动转换为百分制,存人数据库同时显示给用户。
(5)成绩查询模块:他能实现学生的成绩查询功能,包括学生考过的每门课程的考试分数及考试时间。
(6)编写试卷模块:他能实现教师网上远程编写试卷的功能。
(7)查看学生成绩模块:教师能够查看自己所带课程的学生的考试分数。
(8)用户留言模块:实现网上用户的留言及显示已有的留言等功能,便于管理员及时了解用户意见,改进版面等。
(9)发布公告模块:实现系统发布公告的功能。
(10)数据库管理模块:负责网上考试系统数据库中的各个数据表的维护及管理工作。
5 数据库的设计
网上考试系统离不开数据库系统,不论试题还是考生信息都需要放在数据库中。由于本系统适用于多专业多门课程的考试,所以数据库的设计要考虑到各个表之间的外键连接。
本数据库构建在SQL Server 2000上,根据本系统的功能应内建不同的表,包括Student,Teacher,Class,Zhuanye,Kecheng,Shiti,Score,Liuyan,Gonggao。Student主要保存学生的信息:学生代号、姓名、密码、年龄、性别和班级名。Teacher主要保存教师的信息:教师号、教师姓名、密码、课程号。Class保存班级与专业名的信息:班级名,专业名。Zhuanye保存各专业的名称以及各专业所开设的课程:专业名、课程名。Kecheng存放某个专业所对应的课程号、课程名及对应的任课的教师号:课程号、课程名、专业名、教师号。Shiti保存题库内容:问题描述、选项1、选项2、选项3、选项4、答案、难度系数,课程号。Score保存学生考试分数信息:学生代号、考试科目、分数、考试时间。Liuyan存放与留言有关的信息:留言人、留言主题、留言内容、留言时间。Gonggao存放公告的有关信息:公告主题、公告内容、公告时间。
6 开发过程的难点
本系统开发过程中的难点主要体现为组卷和阅卷两部分。在组卷过程中,系统要根据选定的试卷难度,综合考虑每个小题的难度系数,采用随机函数调出满足整体要求的各个小题。在阅卷过程中,为了使学生做完试题后能立即看到自己的分数,在调出每个小题的过程中还要将该小题的答案取出来,保留在ASP中的Session对象变量里,以实现在多个网页中传递变量值。系统依靠Request对象收集学生的每题所填答案,然后与该题的标准答案相比较,即可判断试题做对与否,进而可计算学生的分数。若试卷分数不满一百分,则系统自动转换其为百分制的分数,显示给学生,同时将学生的此次成绩填人数据库。
7 结语
网上考试系统在近几年随着网络的发展而迅速地发展起来,在教学实践中得到了充分的应用和很好的评估。他是一套基于B/S体系,采用大型数据库SQL Server2000和先进的ASP技术开发的,并在HTML标记语言的基础上辅助了大量的VBScript和JavaScript,使得考试系统的功能更加完善。
网上考试系统的设计思想基于教学考试的实用性出发,每位教师均可将自己所带课程的考试放在网上进行,他不仅可以完成某门课程的期末考试,也可进行每个单元的测验,考试结束后用户能立即看到自己的分数,真正实现了无纸化考试,在能够代替传统考试的前提下,还大大节约了传统考试中的人力和物力,节约了学校的教育资金,减轻了教师的负担。
本系统不仅可针对某一门课程的考试,还可适用于多专业多门课程的考试。
|