实验室考试系统设计与实现
2015-11-08谭超健李锋
谭超健 李锋
(广东交通职业技术学院,广东 广州 510650)
实验室考试系统设计与实现
谭超健李锋
(广东交通职业技术学院,广东广州510650)
随着计算机应用和发展,无纸化考试应运而生,既满足教育改革要求,也简化传统纸质考试过程。文章以开发Web在线考试系统为实例,阐述其设计思想、功能模块和体系结构,详述了系统基于Struts2框架在Java EE的Web形式MVC模式下实现,并配置在实验室分布式系统之中,以达到充分利用实验室软硬资源、减少教育成本和方便教学管理等目的。
实验室考试系统Struts2DAO
1 引言
随着信息技术发展和应用,以计算机为辅助手段的网络考试系统应运而生,它突破传统考试时空限制,利用网络四维空间把考场从学校延伸到社会各处,通过数据库存储、记录和重现考试过程中的多种信息,让考试变得更加公平公正和更加方便快捷[1]。在线网络考试是传统考试理论与信息技术的完美结合,符合现代教育体制要求,代表现代教育考试的改革和发展方向。本文主要阐述web在线考试系统设计思想、工作原理和体系结构,并配置在实验室分布式系统之中,以达到充分利用实验室软硬资源、减少教育成本和方便教学管理等目的。
2 系统开发设计
系统基于Struts2框架开发,主要由视图层(前台JSP),模型层(model包中的Java文件),控制层(action包中的Java文件),逻辑事务接口层(service包中的server文件),数据库层(DAO包中的Java文件)。其中DAO与数据库相连,里面每个方法都包含在SQL语句。Action与前台JSP页面相结合,JSP脚本向特定action发送请求,action响应后把结果反馈回前台JSP页面。Service主要充当接口作用,将action与DAO相连,利用action调用Service中的方法,Service再调用DAO以达到分层处理的目的,使系统运行更加条理化、结构化和清晰化。
Struts2是基于Java EE的Web形式MVC模式实现,由模型、视图、控制器和XML文件4部分组成[2,3]。模型由Java Bean或EJB组件实现,负责处理业务逻辑;视图包含一组JSP文件用于简化JSP页面编码工作;控制器主要包含Action Servlet类和Action类,Action Servlet接受用户Http请求,并根据配置信息将请求转发给Action对象,Action则负责调用模型并控制应用程序流程;Struts2集成Web通讯的Request->Response方式,在考试系统中能提高前台展示的灵活性,降低后台开发难度,减少前后和后台之间的藕合度。
3 系统结构设计
3.1题库管理子系统
题库管理子系统主要包括试题录入、题库维护、试题浏览3大子功能。试题录入模块是根据试题类型、分值和考试时间等参数将题目和标准答案通过后台录入到数据库,用于随机抽取试题和生成试卷;题库维护模块可以增添、修改和删减题目以保证题库的动态维护;试题浏览模块用于查寻题库题目、检索题库数量和分析题库数据。
3.2考试子系统设计
考试子系统是对考试过程的管理,包括考生登录、试题抽取和保存答案3大功能。首先对登录考生验证身份信息,根据考试信息从试题库中随机抽取试题,生成试卷,并在考试环境中显示剩余时间、已答题目、考生信息和考试名称。试卷抽取是考试系统的核心,既要保证有较高的随机性,又要让考察点均匀分布。系统采用随机抽选法,由计算机根据状态空间随机抽取样题直到组卷完毕,生成完整试卷。随机抽题实现如下:
3.3评分子系统设计
评分子系统包括上传答题内容、系统评分、成绩生成、和信息统计四大功能。当学生交卷或考试时间结束后,系统进入评分阶段,将答题结果上传到服务器。客观题根据标准答案计分,操作题采用OLE自动控制技术和VBA编程技术判断分数,利用CallByName函数获取操作题结果,找到具体批阅对象并与操作试题表(Operations)中的“Answers”字段相比较,按照知识点正确性累加计分,生成成绩单,结合考试过程信息,如考生所选答案,主观题信息等添加到成绩表(Scores)中,由评分系统给出答案分析,统计考题得分率、平均成绩和及格人数等,并通过图表展示。其中学生得分表Score用于存储系统用户基本信息,包括分数、ID、学号、试卷ID、考试时间和评分时间等信息,如表1所示。
表1 评分信息表
3.4数据库系统设计
系统数据库采用Microsoft SQL Server 2005,数据表分为考生信息、管理员信息表、操作试题表和学生成绩表等,管理员通过后台实现对试题、管理员信息、考生信息的添加、修改和删除等操作。客户端学生随机抽取的操作题号记录在以学号.dat为文件名的文本文件中,学生交卷后,客户端考生文件夹下的内容即考生所作试题与操作结果,将回传服务器端的指定文件夹下,以便存档和日后查询。
4 考试系统部署
考试系统部署在学院实验室机房中,服务器端:Web服务器采用Microsoft IIS6.0和.NET Framework3,数据库服务器采用SQL Server 2005,客户端浏览器为IE6.0。.NET平台优势是应用程序部署方便,结合系统实际需求,通过添加数据库的部署项目DB_setup将后台数据库examine联合部署。SQL Server 2005优点在于支持Internet集成,提供支持XML数据库引擎,满足考试系统Web站点存储和成绩分析需求。考试系统界面如图1所示。
图1 考试系统界面图
5 结束语
系统在广东交通职业技术学院软件实验室运行5年,既促进教学质量提高,又增强学生学习主动性和积极性,并使考试走向标准化、科学化和规范化,对检验教育质量、深化教学改革起到重要作用。
[1]李广.基于ASP.NET实现高校在线考试系统[J].计算机应用教学研究,2012(8):147-149.
[2]张友生,陈松乔.C/S与B/S混合软件体系结构模型[J].计算机工程与应用,2002(23):138-140.
[3]梁爽,李环..NET框架程序设计[M].清华大学出版社, 2010(2):90-91.
[4]赵亮,冯博琴.组卷要求的可满足性检查[J].计算机工程与应用,2004(27):362-367.
[5]谢长勇,刘知贵,郑晓红.基于模式2的JSP管理信息系统的设计与实现[J].计算机应用研究,2006(7):135-137.
[6]张江,黄迪明,廖建明.通用考试系统的设计与实现[J].电子科技大学学报,2001(7):236-240.
[7]孙昌爱,金茂忠,刘超.软件体系结构研究综述[J].软件学报, 2002(7):1228-1235.
Design and Implementation of Examination System in Laboratory
TAN Chao-jian,LI Feng
(Guangdong Communication Polytechnic,Guangzhou Guangdong 510650,China)
With the application and development of computer,the paperless examination emerges as required,which not only meets the education reform requirements,but also simplifies the process of traditional paper examination.This paper takes the development of Web online examination system as an example to elaborate the design idea,functional module and architecture,introduces in detail the realization of system based on Struts2 with MVC mode of Web in Java EE,and deploys it in distributed system of laboratory,in order to make full use of soft and hard resources in laboratory,reduce the cost of education,and provide the convenience for teaching management.
laboratory;examination system;Struts2;DAO
TP393
A
1008-1739(2015)13-46-3
定稿日期:2015-06-12