李莹+李欣怿
摘要:试题解析系统是一种新的教学资源, 广泛应用于各类培训和考试。在数据库设计和功能分析的基础上,对系统的关键技术进行了探讨,提出了利用Visual FoxPro来实现试题解析系统的方案。
关键词:试题;解析;数据库;Visual FoxPro
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2015)10-0003-02
随着市场竞争和就业形式的日益严峻,高校学生对行业从业资格证书也越来越重视。学生在校期间,参加各种考试和培训班,也促使各地各种形式的培训机构应运而生,如火如荼。试题解析系统是近年来出现的一种新的教学资源,广泛应用于国家计算机等级考试和各类专业的岗位培训过程之中。试题解析系统可以提高学生综合运用所学知识的能力,提供解决问题的思路参考和解题方法,培养学生的计算思维,进而课程教学过程中课时少,实践少,抽象难懂,教学难度大等疑难问题。此外,试题解析系统还可以为学生顺利通过国家计算机等级考试和升学考试提供参考和助力。
1 数据库设计
试题解析系统数据库中包括学生表、试题表、试卷表、客观试题评分表。学生表主要存储学生的学生编号、密码及其它基本学生信息; 试题表的字段主要有试题流水号、试卷号、试题内容、试题图片、标准分数、试题类型、答案类型、标准答案、试题分析内容。试卷表的字段包括试卷号、试卷名称、考试时间、通过成绩、满分成绩、出卷教师、审卷教师、所用数据库图片。客观试题评分表字段包括试卷编号、试题内容、学生答案、标准答案、标准分数、学生得分等信息。
2 系统功能设计
试题解析系统在功能上包括系统注册、试题组卷、试题分析、模拟考试、试题判分模块。
系统注册模块根据用户机器硬件的特征标识码,生成一个唯一的机器码,根据机器码计算用户的注册码,并判断用户是否是合法用户, 完成授权用户的登陆功能。只有授权用户输入正确的注册码后才能进入系统,一旦注册成功,以后再进入系统时,则不必再输入注册码。
试题组卷模块的功能根据每道试题预先定义好的套题号标识,提取数据库中的试题,完成每套试题的组卷,利用Treeview控件在表单左侧实现试题的树形目录结构显示,单击每一结点,则在表单右侧的试题内容框中显示试题的内容。
试题分析模块完成每道试题的文本分析。试题判分模块根据用户输入的答案完成用户自我测试时的评分功能,并给出统计图表显示用户成绩。
试题分析模块负责读取数据库中当前试题的解析文本,利用编辑框控件,将解析文本显示在表单界面中,并允许用户调整文字的大小,方便用户阅读。
试题判分模块为用户提供一个上机考试的模拟环境。在表单界面中,利用Treeview控件显示试题的编号结果,右侧的编辑框中显示每一道试题。表单中利用选项组或复选框控件接收并记录考生的答案,将考生答案与数据库中的预存的标准答案进行关键字比较,完成每一道试题的评分,并把分数存入数据库中。最后,读取并统计数据库中考生的部分,并以图形的方式显示考生全部试题的得分统计情况。
3 关键技术问题
3.1 一机一码加密方案
为了使试题解析系统软件便于商业发行,有效保证软件的安全,系统采用一机一码的注册方式。通过Windows系统提供的API函数来获取机器的CPU、硬盘或网卡硬件独有的ID号信息,与随机函数及系统时间进行文本组合,构造生成唯一的机器码标识,并采用MD5加密算法生成用于激活软件的注册码。一机一码加密方案将加密软件与授权的电脑进行绑定,不同机器的所用的注册码也不相同,对保护软件版权、防止盗版具有非常重要的意义。
3.2 系统判分的实现
客观题的评分通过“关键字”匹配方式来实现。选择题判分时只要比较一下学生的选择答案与系统提供的标准答案是否相符即可,相同则正确,反之则错误。填空题有可能多个答案都正确,判分时只要学生的答案与系统提供的标准答案的某一个相同则正确。
操作题的评分采用基于比较指定对象属性值的评分策略。首先在题库制作系统中将每套题的判分点写成评分规则语句,并将每道操作题标准答案的属性值存储于数据库中,评分时,首先调用调用相关的评分程序,打开学生操作的结果文档读取评分点数据,与标准答案中记录的数据进行比较,结果相同,即可得分,否则不得分。
3.3 图片拖放功能
通过数据表的通用字段存储试题中的图片,并通过图像控件将图片显示在表单中。显示试题时,如果试题包含图片,则将设置图像控件为可见状态,否则隐藏图像控件。将图像控件添加到容器中,通过容器的大小来限定图片可以移动的区域,以保证图片不被移出表单界面,并在Mousemove事件中,通过对象move方法来控制图片的新位置,实现图片的在表单上的任意拖放功能。
3.4 系统连编
设计好整个系统的入口主程序,将其设置为主文件,并把程序运行时需要修改数据的文件全部排除在外,就可以利用Visual Foxpro6.0提供的项目管理器来实现试题解析系统的连编过程,将整个系统连编成一个扩展名为.exe的可执行文件。在编译完成后,要将Visual Foxpro系统文件夹里的两个支持库文件VFP6r.dll,VFP6renu.dll拷贝到连编后的文件夹中,才可以实现Windows环境下直接运行程序。经过测试,连编后的软件可在Win7、WinXP环境成功运行。
3.5 防止反汇编
利用反编译软件,可将VF系统编译所形成的EXE文件进行汇编,很容易就能获得软件的原代码和数据库文件。虽然VF系统中的所有文件对象的扩展名各不相同,但其实质都是数据表,并且采用明文的ASCII码存储,安全性较差。因此可采用第三方软件来对编译后的exe进行加壳保护,进而有效的防止反汇编。
总之,试题解析系统作为一种优秀的教学资源,以数据库为基础,即提供了一个模拟考试的环境,也提供了试题解析功能,阐述了程序设计类课程中的常见类型题的分析思路和解题方法,提高了学生的分析问题、解决问题的计算机思维能力,为学生学习和考试提供了较为完美的解决方案。
参考文献:
[1] 万茹.VF数据库环境下的数据加密技术[J].计算机光盘软件与应用,2013(5):171-172.
[2] 李薄.数据库加密技术研究[J].忻州师范学院学报,2010(5):43-45.
[3] 李庆森.浅谈visual FoxPro数据库加密技术及其应用[J].计算机光盘软件与应用,2012(20):106-111.
[4] 吴小玲.基于Web的在线考试系统的实现[D].广州:广东工业大学,2005.