APP下载

网络在线考试平台的设计与实现

2013-09-22何定华

衡水学院学报 2013年4期
关键词:单选题题库架构

何定华



网络在线考试平台的设计与实现

何定华

(武汉职业技术学院 计算机学院,湖北 武汉 430074)

网络在线考试平台采用C/S架构,使用Delphi+SQL Server2008开发.支持单选题、多选题、判断题、填空题等题型.考试机能够从考试服务器随机而均匀地抽取题目,且能科学地抽取各个章节的知识点;考试过程考试机出故障重新启动时能够还原原来的考试状况.

随机抽题;考试现场还原;C/S架构;ini文件;网络在线考试平台

本网络在线考试平台采用Delphi+SQL Server,采用C/S架构,根据使用单位湖北中医药高等专科学校的需求,本平台支持单选题、多选题、判断题、填空题.支持随机抽取考试题目;支持模拟考试等功能;考试过程机器出故障支持重新考试等功能.

1 数据设计

1.1 服务器端题库设计

CREATE TABLE [dbo].[外语danxuanti]([序号][smallint]NULL, [题目] [nchar](120)NULL, [A][nchar](120) NULL, [B] [nchar](120) NULL, [C] [nchar](120) NULL, [D] [nchar](120) NULL, [标答] [varchar](1) NULL, [分值] [smallint] NULL, [解析][nchar](120) NULL)ON [PRIMARY].

考试平台支持多门课程考试,因此表名是可以根据需要,通过考试管理机生成或者修改的,外语课考试的单选题表为“外语danxuanti”,同理思政课的单选题表名为“思政课danxuanti”.在Delphi中可以很方便地建立SQL Server数据库和表.

判断题表结构的设计与单选题类似,仅仅比单选题少了2个字段,即C字段和D字段.多选题的表结构与单选题类似,仅需把“标答”字段的类型修改为:[标答] [varchar](4) NULL,因为多选题最多可能有4个答案.

随机抽取题目.为了防止相邻考生题目相同,考试平台支持随机抽题.若某门课单选题题库有道题目,每道题目分值均为分,考试中设置单选题共有分.则被抽取的单选题题目数是:=.为了随机均匀地在道题库中抽取道题目,可以把均匀地分成块,在每块中抽取一道题目,即可达到随机均匀抽取题库的要求.被抽取题题号是的函数:

():=(-1)*(/)+(int) (*/)*random(*/)+1;(∈[1,],是整数).本算法():=(-1)*(/)+(int) (*/)*random(*/)+1保证了被抽取的题目的序号不可能相同,且在每个块中只抽取一题,保证了考生题库的相异性.

1.2 客户端题库的设计

与D组比较,经复方鳖甲软肝方治疗或干预后,B、C组Kupffer细胞及肝脏中 TGF-β mRNA及蛋白表达水平显著降低(P<0.05),见图3。

如果考试机出了故障,重新启动考试机器,考试系统必须能够还原故障前的考试状态.为了保证考试系统不会重新从考试服务器重新抽题,可以把所抽取的题目的序号保存到考试机的ini文件中.如图1所示:

图1中1=003A表示的含义是,考试机中的第1题对应考试服务器中的第3题,并且考生选中答案为A,图中5=049表示考试机中的第5题对应考试服务器中的第49题,考生未作答题.考生登录考试机都要检测data.ini文件是否存在,如果不存在则建立该文件.第一次正常登录考试机,需要从考试服务器随机均匀抽取题库,并保存到客户机的data.ini文件中.若考试机出故障,重新启动时,则从data.ini文件恢复到故障前的考试状态.

图1 data.ini文件

1.3 考生信息表结构设计

考生信息表的结构为:

CREATE TABLE [dbo]. [一班]( [考号] [nchar](10) NOT NULL, [姓名] [nchar](10) NULL, [学号] [nchar](10) NULL, [分数] [float] NULL, [考试状况] [nchar](4) NULL, [密码] [varchar](10) NULL, [开始考试] [nchar](1) NULL, [模拟考试] [nchar](1) NULL, [考完试显示分数] [nchar](1) NULL, [考试科目] [nchar](20) NULL, [考试时间] [smallint] NULL) ON [PRIMARY].

考生信息表是本考试系统的特色,通过对不同字段值的设置可以实现一些比较个性化的功能.

关于字段“考试状况”.考试状况有“已考”“未考”2种状况,考生登录时考试系统从服务器读该生对应记录的“考试状况”字段值,若“考试状况”值为“已考”则该生已考,不许该生再次登录,若为“未考”则允许登录.

关于字段“密码”.密码若为空则考生登录考试机无需密码;若密码不为空,则考生登录考试机时需要输入密码.前者登录更方便,后者登录更安全.选择哪种,考试管理者可以根据需要进行设置,设置非常简单.

关于“开始考试”.该值为“否”暂时不允许登录,即考试还没有开始;值为“是”,考生可登录.该字段防止考生提前登录.

关于字段“模拟考试”.该值若为“是”则表示此次考试是模拟考试,考试过程可以显示答案和题目的解析;若值为“否”则表示本次考试时正式考试,不显示答案和解析.

2 考试平台的C/S架构的设计

2.1 C/S架构原理

考虑到安全问题,考试平台采用C/S架构.考试管理机、考试机链接服务器通过多层分布式技术(MIDAS),在Delphi中又称之为DataSnap技术.采用本技术的优点是安全性高;此外,服务器和客户端各自处理自己的事务,更能保证系统稳定.

考试机主要负责随机均匀抽提、考试、交卷等功能.其它大部分功能由考试管理机来实现.因此,考试机一般不需要升级,解决了C/S模式框架升级麻烦的困窘.

2.2 考试管理机的设计

考试管理机通过网络对服务器上的考试题库进行设置.包括考试班级的导入、考试科目的设置、考试题库导入,各种题型所占分数设置等等.考试机通过网络从考试服务器随机均匀抽取试题,并把抽取试题的题号保存到本地ini文件中.考试结束,交卷过程就是比对考生答案和对应服务器上题目标准答案的过程.

考试管理机还负责添加、删除班级,添加、删除课程,添加、删除题目;负责考生信息的导入、导出;负责考试成绩的统计、分析和导出为Excel文件.

2.3 考试机和服务器的设计

考试机负责考生身份的验证、登录、交卷;负责从考试服务器随机、均匀抽取题库;为了防止考试过程出现意外故障,考试机还负责把抽取的题库的题号保存到本地ini文件中,便于故障后的恢复.

服务器采用SQL Server2005或者2008数据库.为了安全,采用混合验证模式.

3 具体实现

考试服务器采用SQL Server2005或者2008.考试机和考试管理机使用Delphi平台来开发.在Delphi中提供了一些功能强大的组件.他们可以连接、操作SQL Server数据库.

Msconnection负责连接到SQL Server服务器,该组件提供了server、username、password和database 4个属性分别表示服务器IP地址、用户名、密码和数据库.设置之后再调用Connect链接到服务器.

Mstable提供了connection、tablename、active、fieldbyname等属性,分别用于连接到Msconnection、设置表名、激活、访问表字段等等.

4 创新

随机均匀抽取考试服务器题目.根据考试各题型分数设置,能够随机均匀地从服务器抽题.原理是:把相同章节的知识点的题目放置在相邻位置;把考试题库按照题目序号均匀分成段,再在每段中随机抽取一题.这样既能保证考生题目不雷同,又保证考试知识点面面俱到.

考试过程的故障还原.考生第一次登录考试机,考试机将从服务器随机均匀抽取题目,并保存到本地ini文件.ini文件保存了考生姓名、考号、班级,剩余时间、各题型所占分数、各题型题目数、每题所选项等信息.考试过程出现故障,考生只需再次登录考试机即可,考试机将从ini文件中还原考试现场,不会影响到考生考试.

从安全角度出发,基于C/S架构的考试系统比B/S架构的考试系统具有一定的优势.本考试平台在随机抽题、故障恢复等方面具有一定的创新.本考试软件在湖北中医药高等专科学校等高校无纸化考试中使用良好.

Design and Implementation of the Online Examination Platform

HE Ding-hua

(Department of Computer Science, Wuhan Polytechnic Institute, Wuhan, Hubei 430074, China)

This article describes the test platform using C / S architecture, developed by Delphi + SQL Server 2008. The platform supports types of questions such as single choice, multiple choices, true or false question and gap filling. The exam machine can extract topics from the exam server randomly and evenly, and can extract the knowledge points from various chapters. When the exam machine is out of order, we can restore the original examination condition by restarting the machine.

randomly selecting questions; restoration of exam site; C/S mode; INI document; online examination platform

(责任编校:李建明 英文校对:李玉玲)

TP309

A

1673-2065(2013)04-0018-03

2013-04-08

湖北省教育厅科学研究计划项目(B2013267)

何定华(1972-),男,湖北荆州人,武汉职业技术学院计算机学院副教授.

猜你喜欢

单选题题库架构
基于FPGA的RNN硬件加速架构
“勾股定理”优题库
功能架构在电子电气架构开发中的应用和实践
“轴对称”优题库
“轴对称”优题库
“整式的乘法与因式分解”优题库
WebGIS架构下的地理信息系统构建研究
孝心是道单选题
一种基于FPGA+ARM架构的μPMU实现
《护理研究》继续医学教育答题卡(2010年上旬版第7期~第12期)试题答案