计算机基础课程考试系统的开发与应用

计算机基础课程考试系统的开发与应用
计算机基础课程考试系统的开发与应用

计算机基础课程考试系统的开发与应用

席建中①

摘 要 本文以计算机基础课程考试系统的设计为例,讨论了运用面向对象的方法,开发基于网络的C S结构的S QL应用的基本过程和所用工具。

关键词 计算机基础课程 考试系统 C S S QL Serv2 er7 W indow s2000Server

计算机基础课程考试系统的设计,提供了开放式的考试环境,测试学生在W indow s98下的计算机操作能力和各种应用软件的使用能力。

一、系统功能与系统结构

计算机基础课程考试系统分为考试子系统和考试管理子系统两部分。

考试子系统:为学生提供一个答题的界面,在客户机上实现,由考生登录、计时系统、选择题、操作题、打字题五部分组成。主要实现考试界面,记录考生信息(姓名、准考证号)、对考试进行计时、随机抽取选择题、显示操作题内容、记录打字题结果并对考试计时。

考试系统首先要求考生在客户机上插入考试盘,并对磁盘的有效性进行检验,核对其是否是考试盘。核实无误后要求考生输入姓名和准考证号并对准考证号长度进行验证,确认后加密存在软盘的特定文件中;登录信息确认无误后,系统会自动随机地为学生抽取试题,进入主界面,考试计时器开始倒计时并显示。

如果学生已登录过,系统会提示其输入密码,有两种选择:继续考试(从中断的地方继续考试,时间累计)、重新抽取试题(重做)。

在考试系统中,设置了调用各种应用软件的菜单、控制按钮等。当考生结束考试时,保存考试信息并关闭W indow s。当考试结束时间到时,系统自动保存考试信息,强制结束并关闭。

考试管理子系统;安装在专门的管理机上或服务器上,由选择题题库管理、操作题管理、相关考试文件管理、考试盘生成、评分、成绩报表输出子系统组成。主要实现选择题和操作题的输入和管理;考试相关文件的管理;利用相关文件及考试设置生成考试用软盘;对考试结果进行评分和成绩报表输出等功能。本系统是一个多文档界面,用流行的菜单条和工具条,可以方便的实现试题录入和管理,阅卷、成绩打印、控制试题分布、制作考核盘等功能。

系统结构:网络考试一般采用两种结构:三层结构或二层结构的C S结构。三层结构考试系统也就是现在常见的网上考试系统,由IE构成前台客户端,IIS+A SP构成中间层, S QL Server7做后端数据服务器。三层结构虽然安全性和可扩展性都比较好,但是一般只适合选择题等标准考试形式,对操作题和打字题则不适合。相比之下由应用程序和服务器构成的二层C S结构则适用性很强,符合计算机基础课程的考试要求,所以本系统采用了二层C S结构,其中S QL Server7是数据服务器,考试系统构成客户端,可以使用一些方法保证系统的安全性。

二、数据库设计

为了保证考试题目的安全性和数据库访问的效率,数据库系统采用微软S QL Server。S QL Server是M icro s oft的高级数据库引擎,设计用于在N T服务器上工作的,不能升级到大型的主机系统工作,虽然不能和DB2或者O racle等大型数据系统相提并论但却是真正的关系型网络数据库,可以同时连接相当数量的用户,并有良好的安全性。由于它比A ccess功能强大得多,在大多数中小型网络中常用它作为网络数据服务器。

依据第三范式的原则,为减少冗余,便于数据查询,数据库内数据表的划分原则是:结构单一不宜造成冗余的属性值尽可能按其自然归属,归并成一个子类组成数据表:对属性相近但结构多样且宜造成冗余的属性值,则应将其转化成统一结构归并成一个子类组成数据表;相关的数据表利用关键字在数据库中建立永久关系和参照完整性,这样可以保证用户修改、增加、删除记录时参照完整性产生作用,方便数据库的移植,简化程序设计。

依据以上的分析,本系统主要的数据库结构如下:

库名:testSyste m:该库记录了试题库及考试信息等。由选择题试题表、考生所选答案表、考生成绩表等组成。

X tk(选择题题库表):用于记录选择题的题干、4个选择项,试题类型和难度信息;以试题类型和难度作为随机抽题的依据。该表结构定义为:选择题题库表={试题内容+答案1 +答案2+答案3+答案4+试题难度+试题类型+正确答案}。

U an s w er(考生答案表),记录考生姓名、考号、试题I D

①席建中 徐州经济管理干部学院机电系 讲师 徐州 221006

号,考试年份和所选答案,由此可以获得考生选择题成绩。该表结构定义为:考生答案表={试题I D+考生姓名+准考证号+考生答案+考试年份}。

Sco re(考生成绩表)记录考生姓名、准考证号、选择题成绩、操作题成绩、打字题成绩和考试年份,以便于打印成绩报表。改卷后的结果放在此表中。该表结构定义为:考生成绩表={考生姓名+准考证号+选择题成绩+打字题成绩+操作题成绩+考试年份}。

三、关键性技术

11Acti veX数据库访问技术(ADO,Acti veX Da ta Object2. 0)

在VB程序中访问数据库的方法很多,可以使用Jet引擎,ODBC A P I方法,各种数据控件,也可以使用数据访问对象。ADO方法就是当今最常用的数据库访问方法,以A ctiveX 组件的形式在系统中注册,即可用于本机数据库的访问,也可用于网络(包括In ternet)数据库的访问。

ADO访问数据库之前,数据库可以在ODBC中注册,也可以不注册。我们不采用注册方法,只是生成一个数据源描述文件dsn。可以利用W indow s中的ODBC管理器生成数据源描述文件Sql.dsn,用于描述数据库信息(数据库类型、服务器名、用户登信息等),在程序中用于创建连接,访问数据库。ADO并不是VB6的标准组件,只有在VB6企业版中加入ADO才能使用,使用ADO时要在工程中添加对ADO对象的引用。

21随机不重复抽题技术

计算机考试的目的是实验全面和随机的出题。为了对学生所学知识进行全面的考查,在生成选择题时综合考虑了各章试题和各种难度的分布;为了防止考生在考试时彼此间的抄袭,生成的选择题的答案顺序都进行了随机调整。

本系统的随机抽题采用了如下的方法:首先读取软盘中的试题分布情况:从试题库(x tk)中按试题类型和难度排序取出所用的试题的I D号放入一个数组allx tid().x tid分量中:依据试题分布从指定的下标范围内产生一个随机数irnd,判断allx tid(irnd).bsel的值是T rue还是False,以确定此题是否已被选中,如没有选中则从题库中抽取此题放入试题数组,同时将答案顺序调整;否则此次抽题不成功,继续抽题,直至全部试题抽取完成。如:基础题有15道,难度分布为7,4,4;中等难度基础题I D在allx tid()中的下标范围:7~10,则在抽取这类试题时随机数的范围应在7~10之间。

这种技术的优缺点:本法逻辑简单,不需要太多的代码变可实现;缺点是当某类难度的试题数与抽取试题数比较接近时会使抽题效率明显降低。但是由于一般试题库中的题目数都比较多,这个缺点不是很明显。测试时,输入88道不同类型、难度的试题,抽取30道,耗时1秒左右,并且随着题目数量的增加时间会更短。

31结构化查询语言(SQ L,Structured Query Language)

S QL作为一种非程序化的语言,其优点在于:数据库服务器具有智能性。采用S QL,你无须对那些用于加快搜索的索引进行明确的说明,S QL引擎会根据查询的上下文确定的需要用到的索引,自动使用。因此,使用S QL语言可以开发出查询关系非常复杂但是效率很高的数据库管理软件。本系统使用到S QL语言的以下三个分支:数据查询语言(DQL),数据操作语言(DM L),数据定义语言(DDL),分别完成数据的查询,数据的修改、添加和删除,在数据库中创建新表和删除已有表。本系统中大量采用了S QL语句,这样代码简单易懂,并且可以非常高效地查询和操作数据库,比如在XT K和U an s w er 表之间以试题I D和考生准考证号进行联合查询就可以快速地获和一个考生的选择题成绩。

41文件系统对象(FS O,F ileSyste mObject)

由于考试系统需要对软盘进行操作,就要用到FS O。利用FS O获得文件系统,从而方便的对文件系统进行操作,如:创建文本文件,创建文件夹,删除文件、拷贝文件,修改文件属性,获得特殊文件夹、设置磁盘卷标等。此对象与VB6提供的文件访问函数相比更方便易用,功能更强大,这也是微软提倡使用的方法。FS O的详细内容请参考有关帮助。

四、考试系统的实用性与安全性

考试系统是一个由服务器和位于学校各计算机机房的W indow s9x客户机构成的网络考试系统,其设计目标是:保证其实用性与安全性。所谓实用性即本系统应能满足学院各教学系部计算机基础课程上机考试需要,并能方便、快捷地对试题、考试成绩等信息进行管理和输出,以便充分利用校园网的方便快捷的优点,节约资源;安全性是批考试题目的保护,防止可能的泄密,这一点是通过使用W indow s2000服务器版和S QL服务器来实现的。由于试题库和考生答案都在服务器上,可以有效地防止试题泄露和作弊;由于使用了专门的数据服务器而不是文件服务器,因而数据库在并发访问时效率非常高。

若不采用软盘考试,可以在服务器中建立考试文件夹KS 和考试文件夹下的用户文件夹,设置共享和访问权限,在每台工作站上,按限定的用户登录,使得每台考试用的工作站操作的用户文件夹相互独立,不能互相访问,任何一位学生都不能进入到其他学生的用户文件夹,以提高系统的安全性。

参考文献

[1]张海藩,软件工程导论(第三版),北京:清华大学出版社,

1998

[2][美]V isual Basic5开发W eb数据库指南,李小坚、田英、

战凤梅等译,北京:机械工业出版社,1998

(收稿日期:2002年7月17日)

相关主题
相关文档
最新文档