APP下载

基于Java的在线考试系统的设计与实现

2018-09-21杜博吴敏宁

微型电脑应用 2018年9期
关键词:用例试卷考试

杜博, 吴敏宁

(榆林学院 信息工程学院,榆林 719000)

0 引言

考试是教学工作的重要环节,是对教学效果进行测评的主要手段,用于评价学生学习状态、学习水平以及教学目标的实现程度,有助于激发学生的学习兴趣与创造力,也是教师检查自身教学效果和学生进行自我评价的重要手段[1]。便于教师及时、准确地调整教学策略,改进教学方法,提高教学质量。

随着高校教学改革的不断深入,计算机、网络技术的不断普及与完善,如何利用现代网络技术解决传统考试的弊端,已成为高校亟需解决的问题。传统的人工出题、考生考试、人工阅卷、成绩统计评估及试卷分析的考试形式已经不能适应现代考试的需要。为了改革传统考试方式,建立合理考试机制,科学、规范地实现教育、教学管理[2],最大限度地减轻教师出题、组卷、判卷等繁重工作,基于这种背景,结合学校课程特点,设计开发了基于Java的在线考试系统。

1 在线考试系统主要功能模块分析

1.1 系统功能分析

在线考试系统的整体目标是基于校园网环境,利用计算机与网络来代替人工,实现考试安排、组卷管理、在线考试、评分阅卷、试卷分析等一系列考试流程的信息化和自动化[3]。

本系统主要以管理员,教师,学生3类角色用例对系统管理、题库管理、试卷管理、在线考试和成绩管理5个功能模块进行管理和设置。系统为每个角色赋予不同的权限;系统管理用于设置系统参数、教师信息、学生信息、考试科目以及数据库等管理;题库管理用于试题的添加、章节划分、难易区分、得分点等相关的设置;试卷管理用于试卷组卷、试卷下发、试卷回收等管理;成绩管理用于成绩查询、成绩统计、成绩分析和成绩导出和成绩公布等管理;在线考试主要用于考试的开启和关闭。系统功能结构,如图1所示。

1.2 系统角色用例分析

本系统中的各项业务主要围绕管理员、教师、学生3类角色进行,这3类角色在登录后根据每个角色不同的权限分别进入不同的页面,完成各自相应的操作功能。

根据以上功能分析,对系统的管理员、教师和学生3类角色进行用例图设计。

管理员角色主要对系统参数设置、教师管理、学生管理、考试科目和成绩的管理,管理员用例,如图2所示。

图1 系统功能结构图

图2 管理员用例

教师角色主要执行题库管理、试卷管理、学生管理、成绩管理等工作,教师用例,如图3所示。

图3 教师用例

学生角色主要活动是在线考试、成绩查询,学生用例,如图4所示。

图4 学生用例

2 系统总体框架和数据库设计

2.1 系统的架构设计

系统架构是基于J2EE技术体系设计,J2EE是一套成熟的开发技术架构[4-5],包含多种组件,主要可规范和简化系统开发部署,提高系统移植性和复用性。将系统划分为表示层、业务逻辑层和数据层,并从有效提高系统的开放性、可维护性出发[6],严格遵循MVC设计模式[7]。系统架构模型,如图5所示。

MVC设计模式是目前最成熟的开发模式之一,该开发模式早就出现在了J2EE体系架构中得到有效的运用。

图5 系统架构模型图

MVC设计模式[8]将整个应用划分成3部分,每个层面管理系统中的不同层面,该模式将系统的分层思想能够简化开发,而且能够有效地运用。

在MVC模式中,视图负责与用户之间数据交互,从用户那边采集过来的数据通过模型[9]来处理。模型遵循业务规则,主要处理业务流程,负责返回视图层相应的请求结果。在Java项目中按照一定的规则将实际问题中的业务内容利用面向对象的思想封装成Java中对象展示出来,从而提高代码的复用性。控制器在项目中主要起到中间件的作用,负责视图和模型之间的相互调用,达到视图和模型之间的代码分离,同时保证视图和模型之间的数据同步。MVC模式模块之间的关系,如图6所示。

2.2 系统数据库的设计

数据库是整个系统的基础和核心,数据库是把大量数据按照一定的规则存放在库中,这种规则的存放能方便数据的批量操作和快速检索[10]。数据库的设计首先要按照实际业务,按照系统的需要将每一类数据通过表存放起来,方便系统操作。

考试业务E-R图,描述了考试过程中,各个实体之间的对应关系,如图7所示。

系统不同层次之间的数据交互和传递离不开业务实体,其在数据库中的表现形式就是所谓的关系数据。通过深入分析, 本实验系统应构建6个业务实体, 主要包括用户基本信息、用户权限信息、班级信息、试题信息、试卷信息、成绩信息等,各实体模型具体的含义介绍如下:

1)用户:主要属性有编号、姓名、密码、用户类别等。

2)权限:主要属性有编号、角色名称、权限分配、权限类别。

3)班级:主要属性有班级编号、班级名称、所属院系。

图6 MVC设计模式图

图7 考试业务E-R图

4)试题:主要属性有试题编号、试题类型、题型编号、章节名称、难易标记等。

5)试卷:主要属性有试卷编号、试卷名称、试卷分数等。

6)成绩:主要属性有成绩编号、用户编号、任务编号、成绩、日期等。

3 系统部署与实现

3.1 系统部署

系统开发完成后,需要对系统部署环境进行搭建,为了缓解多重访问的压力,系统可以采用分布式的部署分配方案[11],同时数据库单独部署在一台数据库服务器上,这样可以均衡系统负载。在线考试系统属于B/S,系统请求原理及部署方式,如图8所示。

3.2 系统实现

本系统实现模块[12]主要有:用户登录系统,编辑试卷,在线考试,阅卷打分,成绩查询等,不同用户因为有不同的操作, 因此可以有不同的主界面,这些主界面一般通过共同的登录接口进行跳转。在各自的主界面里,需要布局每个模块的操作链接,并在操作结束之后根据需要返回各自的主界面,如图9所示。

图8 系统部署图

3.2.1 试题库建设

试题库建设主要包括科目类型、试题类型与试题题目的建设3个方面。试题库建设主要是由任课教师完成的。首先,任课教师需要在数据库中增加考试科目,也可以对现有的科目进行修改、删除,并将数据保存在试题表单数据库中。

图9 用户登录界面

3.2.2 考生登录

考试前,系统管理员首先需要追加或筛选出需要参加考试的学生名单。参加考试的学生进入登录界面,选择自己的相关信息,只有选择正确后,才能登录参加考试。

3.2.3 在线答题

在线考试子系统是考试系统中重要的组成部分。主要包括考生试卷的获得与提交两个部分。考生登录考试界面后,系统会随机抽题自动组成试卷,同时系统开始自动计时。

3.2.4 成绩管理

成绩管理主要包含阅卷、成绩分析与成绩查询3个部分。考生提交试卷后,系统自动将考生所答题目的答案保存在考试表中,没有作答的该答案为空。试卷的题型有客观题和主观题,不同的题型系统的处理方法也不一样。

4 总结

随着网络信息技术的发展,网络化考试已经成为了现代考试的重要特征。传统的考试已经无法适应当今快节奏高效率的生活了,所以在线考试系统不仅能为在校学生和教师节省大量的时间,而且能更好的鼓励资源的充分利用,也符合社会发展的需求,本系统基于JAVA的在线考试系统,该考试系统应用MVC开发模式,基于J2EE架构,使用JSP动态网页技术和Oracle数据库技术开发实现;实现了用户登录、题库管理、试卷管理、在线考试和成绩管理等模块。最后对在线考试系统在实际课程考试中的测试情况进行了分析,测试结果表明,该系统可以很好地满足一般的考试需求,帮助学生进行自我评价,更好的掌握基础知识和知识体系,同时便于教师及时、准确地调整教学策略,改进教学方法,提高教学质量。

猜你喜欢

用例试卷考试
UML用例间包含关系与泛化关系的比较与分析
UML用例模型中依赖关系的比较与分析
联锁软件详细设计的测试需求分析和用例编写
從出土文獻用例看王氏父子校讀古書的得失
Module5 A Trip Along the Three Gorges
Module5 Great People and Great Inventions of Ancient China
Module 4 Sandstorms in Asia
Module 1 Europe
Japanese Artificial Intelligence Robotto Take Entrance Examinations
你考试焦虑吗?