陈冰红 祝振宇 廖锡海
摘要:《计算机应用基础》是一门具有较强实践性的课程,传统的笔试方式不能对学生实际操作能力做出真实的评价。运用VBA技术和VB.NET技术进行系统开发计算机应用基础测试系统,降低测试流程中的人工干预过程,提高教学效率,加快教学反馈,提升教学效果。
关键词:测试系统;计算机应用基础;VBA
中图分类号:TP311 文献标识码:A
文章编号:1009-3044(2019)08-0093-02
1 背景
《计算机应用基础》是高校非计算机专业的公共必修课程,是一门具有较强实践性和应用性的课程。要求学生在掌握计算机基本操作技能的同时,熟练使用操作系统及办公软件,培养大学生的计算机素养和计算思维方式,为以后利用计算机解决专业相关问题打下良好的基础[1]。
为了适应国家要求的创新型应用型人才系统培养模式新形势下,应用型人才培养和因材施教的个性化教育目标,各个高校纷纷开展了《计算机应用基础》教学改革,如分层分类的个性化教学改革、基于翻转课堂的教学改革、项目式教学改革等等。在改革的实施过程中都面临着同一个难题,由于学生人数较多,所完成的课后实操和综合测试数量较多,教师手工完成批改习题或试卷的工作量过大,效率低,反馈给学生的信息过于延迟,对教学造成了较大的影响。因此需要一个能够快速、准确的批改课程试题的测试系统,将教学从烦琐的重复劳动中解放出来,使其将精力更好的投放的教学的其他环节中。
2 系统的总体设计方案
2.1 系统架构设计
计算机应用基础测试系统针对实际的应用情况,考生登录、客户端下载采用 B/S 结构, 试卷下载、数据同步、考生信息监控等采用C/S结构, 从而构成C/S 和 B/S 两种体系结构紧密结合的管理,拓扑结构如图1所示。
2.2 系统功能模块设计
采用面向对象的模块化程序设计的基本思想,测试平台可分为题库管理系统、在线测试系统、测试评分系统和系统管理系统四个模块。题库管理系统可在线对各类题型进行添加、修改、删除等操作;在线测试子系统为学生提供一个自助测试平台;测试评分系统对学生的各类操作结果正確与否进行判断,并反馈得分和错误相应信息;系统管理子系统实现对学生信息、学生考试状态、系统的时间和异常情况的控制以及服务器参数配置,其系统结构如图2所示。
2.3 测试系统的数据流图
系统的数据流图如图3所示。题库管理员可通过插件导入、导出试题,并对题库资源进行管理、更新、补充和统计分析;组卷人员在系统中设置相应参数,通过组卷系统自动抽取相关试题组成试卷,然后审阅试卷更换不符合要求的试题,直至试卷中的所有试题都符合考试要求,提高成卷质量;学生可通过账号密码登录学生界面,进行试题测试。学生可以在考试过程中手动提交试卷数据,或在考试结束时,系统自动强制收卷提交,并上传考生的数据文件[2];监考人员可通过监控模块实时监控考生状态,根据实际情况,进行相应的事件处理;学生交卷后,试卷统一自动上传到服务器,服务器根据评卷程序和得分点,对试卷进行自动批改,并给出成绩和错误反馈。并将其保存到数据库中,供学生查询、教师进行成绩分析,教学效果评估使用。
3 自动组卷的实现
自动组卷是系统关键目标之一,系统要从题库中根据组卷原则选取一组试题,并要求各种类型题目的达到指定的比例,并保证所抽取的题目不会出现重复或相关的题目,需要在系统中设置相应的约束条件。生成试卷速度与质量取决于组卷算法的设计,常用的组卷算法主要有随机选取法、回溯试探法和遗传算法。
随机选取法由程序随机从题库中循环抽取试题,直到组卷完成,它可能进入到一个不合适的区域内反复抽取,导致大量无效的操作而陷入死循环[3]。回溯试探法会记录随机选取法产生的所有状态数据,当搜索失败时,则恢复上一原始状态,然后选择一种新的状态类型进行搜索,通过不断的回归和搜索生成试卷[4]。回溯试探法算法复杂、占用内存大,花费时间较多。
遗传算法是一种基于自然选择和遗传学原理的优化搜索算法,具有广泛的适应性。它模拟低级生物在自然环境中的进化和发展,优胜劣汰,适者生存,通过杂交、突变来产生新的下一代,最终发展的高级生物的进化过程[5]。由于遗传算法实行全局并行搜索,并且搜索空间较大,在搜索中不断向最优匹配靠拢,因此本系统采用遗传算法作为组卷策略。
4 测试评分系统的实现
测试评分系统是服务器上运行的,考试结束考生客户端自动上传考生答卷。测试评分系统从数据库中读取考生试卷的文档编号,从而获取考生的阅卷信息,从每个考生的答卷中读取考生答题,与阅卷信息中的得分点进行匹配,对该题进行评分,并将相应成绩和反馈信息保存到数据库中,自动阅卷流程如图4所示。
4.1 选择题与判断题的评分实现
计算机基础考试系统中基础知识的主要使用选择题和判断题等客观题方式进行考查,客观题的答案具有唯一性。将考生答案与标准答案逐一匹配就可得到相应成绩。
4.2 Windows 操作题的评分实现
Windows 操作主要指的是文件和文件夹的操作,包括文件(文件夹)的新建、重命名、复制移动、压缩、删除和属性设置等操作[6]。这类操作会改变考生目录中文件(文件夹)的属性和位置,因此可以通过搜索考生目录中相应文件(文件夹)或属性值是否存在,以此来判断考生是否执行了某项操作,从而给出相应得分。
例如:
(1)将位于“\WINDIR\JINAN”上的TXT文件移动到目录“\WINDIR\TESTDIR”
Set fso = CreateObject("Scripting.FileSystemObject")
Dir(wlj + "\WINDIR\JINAN\Release.txt") = "" And Dir(wlj + "\WINDIR\TESTDIR\Release.txt")<> "" then df = df + 2.5