大学计算机基础课程上机考试系统设计
2011-11-13丁为民邹海唐瑞华
丁为民 邹海 唐瑞华
(1巢湖学院,安徽 巢湖 238000)
(2安徽大学计算机科学与技术学院,安徽 合肥 230039)
大学计算机基础课程上机考试系统设计
丁为民1邹海2唐瑞华1
(1巢湖学院,安徽 巢湖 238000)
(2安徽大学计算机科学与技术学院,安徽 合肥 230039)
在对目前国内多种计算机考试系统的优点和不足进行充分分析的基础上,结合大学计算机基础课程本身的特点,对计算机考试系统中涉及的主要关键问题进行了深入的研究,并设计出一套大学计算机基础课程的上机考试应用系统。
考试系统;对象连接与嵌入;对象;服务器
1 引言
随着信息技术的发展,运用计算机进行考试,特别是对计算机上机操作类课程进行科学的考试是现代考试领域的一个重要发展方向。这种为适应信息技术发展和教学考试需求而出现的先进的可付诸实践的考试技术,已经在很多领域得到应用和推广,特别是计算机类知识和能力考试,其优点主要在于自动生成试卷、自动评分和自动进行成绩统计分析。
2 可行性分析、需求分析
按照软件工程[1]的方法,设计一个应用系统需要经过几个过程,而系统可行性分析和需求分析是设计应用系统的前期必备工作。
大学计算机基础课程的考核分为客观题和操作题两部分。该课程的考试或平时考测若采取纸面形式或上机操作教师随后人工检查的形式,则教师工作量大,耗时多,并较易存在人为失误的问题。所以,实现该课程的机上考试,将尽可能的提高教师的工作效率。
3 系统设计
整个系统按功能可划分为四个子系统:服务器自动设置子系统、学生信息管理子系统、试题管理子系统、考试管理子系统、评分回收和统计分析子系统。按照软件工程设计的要求,得到如图1所示的系统功能模块图。
图1 系统功能模块图
用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。
在仔细分析调查有关考试需求的基础上,可得到如图2所示的本系统所处理的数据流程。
图2 系统数据流程图
针对考试系统的需求,通过对考试系统工作过程的内容和数据流程分析,可设计出相应的数据项和数据结构,可设计出能够满足用户需求的各种实体,为后面的逻辑结构设计打下基础。
服务器设置子系统有考生数据处理、设置信息编辑和考试服务器权限自动配置。考生数据处理功能是考试结束后备份考生文件夹,同时清理用户目录下已考考生数据,为下一场考试作好准备。设置信息编辑的功能是指定服务器的名称,考试工作站用户名以及考试工作站台数。考试服务器权限自动配置将根据相应的环境参数自动生成用户、工作站文件夹并为其配置共享及安全属性。
学生信息管理子系统的功能主要包括:考生信息的录入与编辑、考号考场的自动编排、考试环境的设置、考生信息的统计等。
一个完整的考试系统应由登录、组卷、考试环境生成、试题显示、答案保存组成。组卷约束条件包括:试卷总分、各类题型的试题数量、分数比例和难度级别等。随机组卷是根据一定的组卷条件,按照随机算法生成满足用户要求的试卷。采用遗传算法进行组卷是相对公平的组卷方案[2]。
在充分考虑Windows系统的安全性基础上,考试系统包含Windows系统的常用操作,题型包括文件或文件夹操作以及Windows的定制操作等题型,其中Windows的定制操作涉及Windows注册表的操作。对于与文件夹和文件有关的操作,在判卷过程中相应地需要进行文件与文件夹的搜索、检查和比较。对注册表设置的检查,主要借助于操作系统底层API函数来实现。
Office模块主要考核Office常用的操作,为便于学生操作,试题显示窗口不易过大并尽量让显示窗体占据前端。该部分的评分则要利用VBA和OLE技术[3],评分思路是定义Office对象,检测学生操作文件中的相应特征值并与标准答案值进行比对。
针对Vb、Vfp类的上机操作考试,设计工作的前期准备是分析数据类型结构,根据试题特点进行分类设计,评分时通过查询操作对象的属性、取值等与标准答案值进行比较,进而给出得分结果。
相比较Vb、Vfp类考试,C语言程序上机考试类的设计工作量要轻一些,C语言的考核主要考核编程能力。其评分的核心思路有两种,一种利用检测结果文件和源程序文件中的相应特征值进行相似度计算[4-5],根据相似度值进行评分;另一种办法是利用命令行编译源程序,利用编译程序检测源程序的语法正确率。
4 系统设计关键技术
考试服务器主要起到安全共享考试数据和向考生提供独立的磁盘空间作用。服务器手工设置比较烦琐且易出错,因此需编写代码来进行自动设置。下面的代码是检测服务器软件环境是否具备的部分代码。
如图3所示为服务器自动设置运行图。
图3 自动设置服务器窗体
Windows操作考试过程中进行的操作系统定制会影响到注册表相应值的改变,此类型考题可通过测试注册表相应项的值来进行评判学生操作的正确与否。进行注册表的访问主要涉及到两个 API底层函数 “RegOpenKey” 和“RegCreateKey”。前者用于打开一个已存在的主键,而后者除了能用于打开一个已存在的主键外,还能创建主键。打开或创建主键成功后将返回一个句柄给参数“phkResult”,这个句柄将在对键值的操作中用到,它就是“RegSetValueEx”、“RegQueryValueEx”和 “RegDeleteValue”中 的 “nKeyHandle”参数。通过查询注册表相应项的值与参考答案进行比较,若相等,则学生操作正确。例操作注册表的部分代码如下:
′API声明
Private Declare Function RegCreateKey Lib“advapi32.dll”Alias“RegCreateKeyA”(ByVal hKey As Long,ByVal lpSubKey As String,ByRef phkResult As Long)As Long
′建立主键
Private Declare Function RegOpenKey Lib“advapi32.dll”Alias “RegOpenKeyA”(ByVal hKey As Long,ByVal lpSubKey As String,ByRef phkResult As Long)As Long
′打开主键
Private Declare Function RegDeleteKey Lib“advapi32.dll”Alias“RegDeleteKeyA”(ByVal hKey As Long,ByVal lpSubKey As String)As Long
图4所示为Windows操作运行图。
图4 Windows文件(夹)操作考试主界面
Office操作题的检测可借助VBA和OLE技术。下面以Word为例进行分析。Word文档是多个对象组成的,这些对象及其属性值决定了文档的结构和格式,可通过读取答题文档中相应对象的属性值来进行评分。
要在程序中控制Word,首先定义一个引用Word中“Basic”对象的对象变量:
Dim Wordobj as Object
接着将Word中的“Basic”对象赋给该对象:
Set Wordobj=CreateObject(“Word.Basic”)
再使用微软的VBA代码来控制Word,使用方法和在Word宏中使用VBA指令的方法基本相同。为了编写程序的需要,可以通过对Word进行的操作或控制先在Word中实际进行一遍,并同时录制宏,利用生成的宏组建相应的评分模块。
图5所示为Word操作运行图。
图5 Word操作考试主界面
在显示考试题目信息时,有时需要显示图形。为了考试安全,图形须放在题库中的pic图形字段中,并设为OLE对象类型,考试时再从题库
中提取出来进行显示。部分代码如下:
′ksk为考试库,Data1为数据控件,OLE为容器控件
′使tm的pic字段与OLE1容器控件关联,实现图形在OLE中的显示。
5 结论
通过安排部署,在10年12月进行了实际考试检测。从学生的实际操作来看,学生对基本理论、基本技能方面的内容掌握较好。由于部分试题具有一定的灵活性,大多数学生经认真思考后能够作出正确操作,也有部分学生对基础知识掌握不牢,不能将所学内容灵活运用。综合来看,绝大多数抽取的试题均很好反映了教与学的情况,学生的成绩分布合理。考试系统能进行自动阅卷评分并统计出多种分析报表,显著地提高了考试效率,取得了预期的效果。
上机考试系统的建设是一项长期工程,需要在全面规划的基础上统一设计,分步实施。考试系统中的遗传算法组卷和语句相似度评分思路还有较大的开发空间,在进一步研究人工智能理论的基础上,部分功能还可以进行进一步提高和完善。
[1]王少锋.面向对象技术UML教程 [M].北京:清华大学出版社,2006
[2]程鹏.支持智能组卷和自适应功能的计算机考试系统 [D].哈尔滨:北京工业大学,2004.
[3][美]Jonh WalkEnbach.EXCEL 2003 高级 VBA 编程 [M].北京:电子工业出版社,2005.
[4]南铉国,崔荣一.基于多层次融合的语句相似度计算模型 [J]延吉:延边大学学报 2007,33(3):16-23
[5]唐歆瑜,乐文忠,李志成.基于知网语义相似度计算的特征降维方法研究[J].科学技术与工程,2006,6(21):3442-3446.
DESIGN OF A NEW EXAMINATION SYSTEM ON COMPUTER FOR THE BASIC COLLEGE COURES
DING Wei-min1ZHOU Hai2TANG Rui-hua1
(1 Chaohu University,Chaohu Anhui 238000)(2 College of Computer Science and Technology,Anhui University,Hefei Anhui 230039)
In this paper,the key problems of examination system on computer are deeply investigated by considering the characteristics of the basic college computer course.Furthermore,through analyzing for the weaknesses and advantages of current domestic examination systems on computer,a new examination system on computer is designed for the basic college computer course.
Examination System;Object Linking and Embedding;Object;Server
TP311.1
A
1672-2868(2011)03-0041-04
2011-3-10
丁为民(1971-),男,安徽巢湖人。讲师,硕士,研究方向:智能软件、软件工程
责任编辑:陈 侃