在线考试系统的设计
在线考试系统的设计 ?? [摘要]在 21 世纪的新时代,随着计算机技术的发 展及计算机的日益普及,在线考试与无纸化办公一样已成为 大势所趋。文章介绍在线考试系统的功能和设计方案。该考 试系统主要包括管理员模块、考试模块和阅卷模块三大功能 模块,根据管理员对考试科目、考试班级、试卷题型和题量 的设置由系统随机抽题生成试卷并显示出来供考生做题。考 生交卷后客观题可由计算机自动评分,主观题可由阅卷教师 在网上进行批改,成绩会自动写入数据库。文章重点介绍系 统的界面结构的整体规划以及利用 ASP 及相关技术保障页 面的安全性,对需要进行安全性保护的页面禁止非法访问。 系统严格控制整个考试过程,实行时间监控,考试期间不允 许刷新网页,考生需要在限定的考试时间内交卷。 ?? [关键词]在线考试系统;ASP 技术;SQL 语言; VBScriptAccess 数据库 ?? [作者简介]单天宇,海军士官学校计算机教研室, 安徽蚌埠,233020 ?? [中图分类号] G424.74 [文献标识码] A [文章 编号] 1007-7723(2009)04-0168-0004 ?? ??一、引言 ?? ?? 人类进入 21 世纪, 科学技术突飞猛进,特别是信息技术 和网路技术的迅速发展和广泛应用,在线考试与无纸化办公 一样已成为大势所趋。在线考试也越来越成为学校的好帮 手, 它的优势不但体现在人力上也体现在物力上。 基于 WEB 的在线考试系统的自动评阅、计分、成绩存档功能将有效地 避免资源的浪费,有利于环保,减少人力,提高效率。 ?? 相比传统的考试方式,在线考试系统的主要好处是: 一方面可以动态地管理各种考试信息,只要准备好足够大的 题库,就可以按照要求自动生成各种试卷;另一方面,考试 时间灵活,可以在规定的时间段内的任意时间参加考试;另 外,计算机化的考试的最大特点是阅卷快,系统可以在考试 结束时当场给出客观题考试成绩,计算机阅卷给了考生最大 的公平感。 ?? ??二、系统分析与总体方案设计 ?? ?? (一)系统需要解决的主要问题 ?? 因为考试是有特定的对象的,所以考生进入系统应该 进行身份验证。鉴于考试环境一般为机房,考试者之间的距 离很近,为了避免考试作弊,试卷的分值和题量都应是相同 的,但试题内容并不相同。在线考试基于网络环境,试卷应 该从服务器的数据库随机抽取试题后动态生成。另外,系统 还应该对考试时间进行控制,时间到了会要求考试者交卷。 考试者选择答案提交后,客观题应该由计算机自动判卷,主 观题由老师阅卷后存入数据库,考试完毕后,可以返回登录 界面或继续考试。 ?? (二)系统应该具备的基本功能 ?? 身份验证:考生、管理员、阅卷老师的登录验证。 ?? 用户信息的管理:管理员可以增删用户。 ?? 试题库管理:分科目对试题库的管理,使试题的增删、 编辑更为简便。 ?? 试卷生成:从试题库里随机抽取试题生成一份试卷。 ?? 考试过程:系统严格控制整个考试过程,实行时间的 监控,考试期间禁止学生刷新网页,考生需要在限定的考试 时间内交卷。 ?? 计算机自动阅卷:本系统客观题,要求计算机能自动 阅卷;主观题由老师阅卷。 ?? (三)总体方案设计 ?? 根据对系统功能和需求,本考试系统按功能分为管理员 模块、学生考试模块和评分模块。 ?? 管理员模块:主要实现管理员的登录验证页面的设计、 管理员定制试卷页面的设计及一些网络安全方面的设计。 ?? 学生考试模块:主要实现试卷的随机生成,并显示在 网页上供考生考试,考生做完试题的答案提交后,客观题由 计算机自动评分且成绩入库,主观题的答案存入数据库。 ?? 评分模块:主要通过对该模块的设计实现主观试题的 评分。从数据库中调出考生在考试模块做的主观题答案,并 显示在网页上,阅卷老师判卷后提交,主观题的成绩与考生 先前由计算机评的客观题的成绩相加后入库。 ?? 数据库模块:考虑考试系统要用到的数据信息,为本 系统建立两个数据库,分别为 managers.mdb 数据库和 student.mdb 数据库。其中 managers 库中存放管理员的身份 验证码,student 库中存放考生的信息数据及考试试题数据。 ?? 根据以上的分析设计了系统总的流程框架图(图 1) : ?? ?? 本在线考试系统根据需求共设计了 11 个界面: ?? 1.INDEX.HTM:考试系统主页面,它提供了管理员、 学生考试、教师阅卷共三个入口。 ?? 2.MANAGELOG.asp:管理员密码输入页面。 ?? 3.STUDENTLOG.asp:学生密码输入页面。 ?? 4.TEACHERLOG.asp:教师密码输入页面。 ?? 5.MANAGE.ASP:管理员对试卷进行定制的页面。 ?? 6.MANAGEOK.ASP: 管理员试卷定制完毕后返回的页 面。 ?? 7.TEST.ASP:出试卷页面,即考生考试时的页面。 ?? 8.TESTOK.ASP:学生交卷后返回的页面。 ?? 9.TEACHHER.ASP:教师阅卷区的第一个页面,显示 所有主观题未被批改的学生的信息。 ?? 10.TEACHER2.ASP:教师阅卷区的第二个页面,用于 对某个学生的主观题部分进行批阅。 ?? 11.TEACHEROK.ASP:批改完一个学生的主观题部分 后返回的页面。 ?? 它们之间的具体关系流程如图 2 所示: ?? ?? 具体功能实现:当进入系统主页 index.htm 有三个可选 入口:管理员入口、考生入口和阅卷入口。用户要想登录任 何一个入口都要通过身份验证才能正确登录进行使用本系 统,具体的安全验证在第三部分有具体介绍。 ?? 如果用户以管理员的身份登录系统即进入 manage.asp 页(管理员对试卷进行定制的页面) ,在该页管理员可以对 考试班级、考试科目、试卷的初始化进行设置。这些设置的 数据通过表单提交到manageok.asp页并用Application对象保 存相关参数供 test.asp 页调用。 ?? 如果用户以考生的身份登录,则进入 test.asp 页进行考 试。考试的试卷是由管理员初始化,并从数据库的题库中随 机抽题生成的试卷,试卷的题型、题数根据管理员在 manage.asp 页的设置来定。在该页考生要在规定的时间内, 并遵守考试的规则进行考试,考试完毕提交试卷,系统将对 考生的客观题自动评分, 主观题的答案写入 student.mdb 库的 答卷表中, 客观题的成绩存入 student 表的对应考试科目字段 中,该功能在 testok.asp 页中实现。 ?? 如果用户以阅卷教师的身份登录, 那么进入 teacher.asp 页,该页显示了主观题没有被评分的所有学生的相关信息, 教师可以选择任何一个学生, 进入下个评分页面 teacher2.asp 进行评分,评分的结果提交到 teacherok.asp 页,该页中代码 实现学生的主观题成绩与客观题成绩相加并存入数据库。评 阅完该考生的试卷,可以返回 teacher.asp 页,重复以上步骤 来继续批改其他学生的试卷。当