1.5 开发起重机司机无纸化考试系统需要解决的问题和关键技术
在开发起重机司机无纸化考试系统之前,首先要明确系统的功能要求,选择系统的开发环境,然后设计考试系统界面,使之符合纸质考试的形式,再确定系统的运行流程,使之符合考生的操作习惯,并且确保自动倒计时、自动组卷和自动阅卷的正确性和准确性。
1.5.1 开发起重机司机无纸化考试系统需要解决的问题
①设计考试系统界面,符合纸质考试的形式。起重机司机考试包括几类题型,不同的题型具有不同的试题内容和表示形式,其答案也有不同的表达形式,在考试系统界面上如何布置这些内容,展示一个友好的界面,是开发本系统需要解决的问题。
②确定系统的运行流程,符合考生的操作习惯。如何设计系统的运行流程,使之具有纸质考试相同或者是相似的流程,符合考生的操作习惯和思维方式,对于开发本系统至关重要。
③确保自动组卷的正确性。在建立一套完整试题库的基础上,根据组卷规则,如何从试题库中抽取符合考试大纲要求的一套试题,是开发本系统需要解决的一个难题。
④确保自动阅卷的准确性。根据阅卷标准,如何判断考生答案的对与错,这是开发本系统的另一个需要解决的难题。
⑤提高系统的运行速度。在系统的运行过程中反复访问数据库,如何提高系统访问数据库的速度,以及如何设计系统运行流程是提高系统的运行速度的一个关键问题。
1.5.2 开发起重机司机无纸化考试系统的关键技术
(1)数据库结构设计和数据库的访问
考试系统在整个考试过程中反复进行数据库访问,因此,数据库结构设计直接影响着系统的运行速度和运行结果。合理的数据库结构设计不仅可以提高数据存储和提取的速度,保证数据的完整性和一致性,而且可以保证系统的开发顺利进行。考试系统的所有信息都需要保存到数据库中,因此,本系统采用Access 2003创建数据库 TestDatabase,在这一数据库中创建了数据表,用于存储所有考试信息。ADO是Microsoft开发的一个应用程序接口,ADO技术是一种建立在OLE DB底层技术之上的高层数据库访问技术,具有易于使用、高速读取、占用内存少和占用磁盘空间小等主要优点,而且ADO支持构建C/S和基于Web应用程序的主要功能。因此,采用ADO技术实现Visual C++6.0对Access 2003的访问。
(2)系统自动倒计时
考试系统的开发一般都设计了计时器,大多采用调用计算机系统时钟中断的办法实现倒计时,如果某人修改了计算机系统的时间,计时将不准确。因此,无纸化考试系统由定时器控件实现自动触发timer 事件并计数。
(3)自动组卷
在建立一套完整试题库的基础上,根据组卷规则,如何从试题库中抽取符合考试大纲要求的一套试题,是开发本系统的一项关键技术。目前,计算机常用的自动组卷算法主要有三种:随机算法、回溯算法和遗传算法。相比较而言,随机算法是最常用的一种自动组卷算法,它是根据随机数进行随机抽取试题。该方法结构简单,抽取运行速度较快,故本考试系统采用了随机算法进行自动组卷。这里需要注意的是在产生随机数的过程中,必须确保产生的随机数是唯一的,以确保一套试卷中没有相同的试题。
(4)自动阅卷
根据阅卷标准,如何判断考生答案的对与错,这是开发本系统的另一项关键技术。匹配模式是考试系统中实现标准化试题自动阅卷的常用技术,该技术是根据考生的答案与标准答案进行比对,按照两者是否匹配计算考生的得分。选择题、判断题和填空题采用匹配模式进行自动阅卷;由于简答题的主观性和考生答案的复杂性,简答题评分采用人工阅卷的方式。由于选择题的标准答案是单一选择,它们是A、B、C或D,判断题的标准答案是T或者F,考生只能选择其中一个,因此,这两类试题的自动阅卷较易实现。对于填空题,由于试题中空的个数不确定和多个空试题中空的位置不确定,并且填空题答案带有一定的主观性,因此,填空题采用匹配模式进行自动阅卷,其准确度与标准答案详细程度直接相关。尤其是对于空的位置不固定的多个空的填空题,采取循环比对的方式进行评阅试题,以保证只有不同的答案才能参与评分,相同答案不再参与评分。
本章简单介绍了起重机的基本类型、基本参数和基本结构,以起重机司机安全技术考核试卷为例介绍了起重机司机的培训与考核要求,根据笔者多年的研究经验总结了起重机司机无纸化考试系统的研究与开发背景以及无纸化考试系统的先进性,分析了起重机司机无纸化考试系统在国内、外的研究现状及发展趋势,说明了开发起重机司机无纸化考试系统需要解决的问题,以及需要解决的关键理论和技术问题,确定本书的重点研究内容。