蒋金涛
(常州工业职业技术学院,江苏 常州 213164)
随着高等院校课程内容的不断增加以及考试要求的不断提高,教育工作者的工作量会越来越大,高校考试工作是一件十分烦琐和极易出错的事情,传统的考试方式已经不能完全满足课程现代化考试的需求。在线考试系统借助计算机网络实施学习考核过程,充分利用网络分布性的特点,基于Web服务器访问页面,实现在线考试、在线阅卷和在线统计等功能,有效降低成本,节约资源,并利用计算机快速反应和海量存储的能力,准确查询学习考核过程,提供详细的分析数据,为高校考务工作者提供帮助。
在线考试系统建立在系统后台数据库的基础上,主要涉及两种用户:管理员和用户。两种用户对系统各有不同的需求,其中管理员功能模块包括信息管理、试题管理、试卷管理、成绩查询4个部分。
(1)信息管理模块包括用户管理和管理员管理。在用户管理功能中,可以对用户信息进行添加、修改和删除。在管理员管理功能中,可以实现管理员密码修改。
(2)试题管理。管理员可以对试题信息进行添加、修改和删除。
(3)试卷管理。管理员可以对试卷进行随机生成、手工录入、删除。
(4)成绩查询。管理员对考生成绩查询、统计。
用户功能模块包括考试页面、个人信息修改和考试结果查询部分。
(1)考试页面。学生进行考试的网页,通过有效身份验证登录就可以进入考试。
(2)个人信息修改。学生可以根据管理员要求,修改个人账号信息和登录密码。
(3)考试结果查看。学生在考试结束,可以查看自己的考试成绩。
基于以上需求,在线考试系统采用以Web技术为基础的B/S模式进行设计。B/S模式由浏览器、Web服务器、数据库服务器3个层次组成[1]。在此模式下,客户端使用一个通用浏览器,代替形形色色的各种应用软件,用户的所有操作都是通过浏览器进行的。该模式的核心部分是Web服务器,负责接收远程(或本地)的HTTP查询请求,然后根据查询条件到数据库服务器获取相关数据,再将结果翻译成HTTP和各种页面描述语言,传送回提出查询请求的浏览器,由浏览器与数据库联系完成操作任务。
该考试系统包含前端设计和后端设计,前端设计支持用户登录、在线考试和在线评分等功能,后端设计支持试题管理和信息管理功能等[2]。在后端功能设计中,试题管理模块包含:管理员登录、试题管理、试卷管理和考试管理;信息管理模块包含:管理员登录、用户信息管理、管理员信息管理、考试信息管理管理、阅卷信息管理、考试结果管理和管理员维护。系统总体功能如图1所示。
图1 在线考试系统总体功能
时序图用来描述对象之间的动态交互,着重体现对象间消息传递的时间顺序[3]。时序图以垂直轴表示时间,水平轴表示不同的对象。对象间的通信在对象的生命线间通过消息符号来表示,消息的箭头指明消息的类型。在线考试系统管理员时序如图2所示,用户时序如图3所示,通过时序图可知系统的开发流程。
图2 在线考试系统管理员时序
图3 在线考试系统用户时序
在线考试系统选用SQL Server作为数据库。SQL Server是一种常用的关系数据库,能存放和读取大量的数据,管理众多并发的用户,故选用SQL Server数据库。对于编程语言,在线考试系统采用C#语言进行编程,C#语言具有语法简单、功能强大、快速应用、语言自由、强大的Web服务器控件、支持跨平台、与XML相融合等优点[4]。
数据库是信息管理系统的核心和基础,在线考试系统的数据存储在数据库的各个表中,当需要使用这些数据时,系统可以快速、准确地从数据库中获取数据信息。由于系统有12个实体类对象,所以相对应的也有12张数据库表。数据库表及功能信息如表1所示。在线考试系统根据考试题型存放试卷信息,分两种组卷方式存放考生考试信息、阅卷信息、考试结果信息。选择组卷是管理员自主选择数据库中的各种类型的试题组成试卷,设置每道题的分值,或者由管理员自行输入整张试卷。随机组卷是管理员随机选择数据库中的试题组成一份试卷,只规定题型和数量。在数据库设计表中,组卷考试表如表2所示。试卷组成后,需要制定考试权限,可以设置参加考试人员、考试日期、考试时间和通过分数等参数。
表1 数据库表及功能信息
表2 组卷考试
在软件测试过程中,设计人员主要对用户考试过程进行了测试,并有效地完善了系统。在用户考试过程中,考生要进行答题操作,用户可以随时保存自己已经答过的题目,或者管理员可以设置每份考卷的自动保存时间。如果在考试过程中,遇到断电或者电脑自动关机的情况,下次登录可以继续上次的考试。当考试时间没有结束的时候,用户答完题目可以提前交卷。当考试时间已经结束,而考生未提交试卷,系统会自动提交考试试卷,用户不能再进行作答。
另外,试卷提交后系统可以根据数据库中的参考答案数据进行自动评阅,但是对于主观题,只有和参考答案完全一致时才能得分,所以需要管理员对主观题进行重新评阅,管理员重新评阅后可以自动更新成绩。最后,在线考试系统可以实现对学生成绩的统计,并且管理员可以查看不同分数段的学生人数。
该在线考试系统使用SQL数据库和Windows开发平台进行设计,实现了高校学生考试过程化管理,是对传统考试过程的一种改革和创新,使教师从烦琐重复的出题中解放出来,将主要精力放在题库的建设上,给学生提供公平灵活的考试环境,同时也提高了考务工作者的工作效率,促进了高校考试信息化建设的发展。