在线考试系统的设计与实现
在线考试系统旨在实现考试的无纸化管理,基于计算机和网络技术进行在线
考试系统的使用,既方便校方对考试的管理,也方便了考生,尤其适合考生分布
广,不易集中的远程教育。
基于远程教育的推广和在线考试需求的增加,本文设计并实现了一套在线考
试系统。本系统实现了系统管理、考生管理、在线考试、在线制作试卷、控制学
生考试、试卷审批等基本功能。同时,为确保系统安全运行和考试信息的机密性、
完整性,本系统采用了 SSL 协议来加密传输的考试数据,并实现对服务器的认证。
系统采用 B/S 开发模式,以 JAVA 作为开发平台,结合 JSP、JavaScript、Html
等语言,以 Tomcat 为服务器和 SQL Server 为后台数据库。整个系统层次结构简
单,操作容易,并具备一定的安全性。考生借助此系统,可以随时随地的进行课
程结业考试,同样,老师使用该系统能更高效、便捷的组织在线考试。
在线考试系统;B/S 模式;SSL
Design and Implementation of Online Examination System
Abstract
The online examination system aims at achieving the paperless examination
management. The online examination system, which bases on computer and network
technology, is convenience for the exam management, but also for the students.
Simultaneously, such a system is absolutely suitable for the students in distance
education who are dispersive and difficult to concentrate on the course.
As the promotion of distance education and the increasing demand of the online
examination, this paper presents the design and implementation of the on-line
examination system. The system implements the following functions: system
management, examinee management, online examinations, online production of the
papers, control examinations and paper processing. Meanwhile, in order to ensure the
system operating safe and the examination information confidential as well as integral,
the system uses the SSL protocol to encrypt examination data and achieve the server
authentication. The system bases on B/S development model, using Java as a
development platform, which utilizes JSP, JavaScript, and Html language as well. The
web server is Tomcat. Database server is SQL Server 2000. The system structure is
simple, easy and safe. Examinee can exam at any time by using the system.
Simultaneously teachers can use the system to organize online examination more
efficiently and conveniently.
Key words: Online examination system; B/S pattern; SSL
目 录
总页数: 20 页
1 引言.............................................................................................................................................1
1.1 课题背景............................................................................................................................1
1.2 系统开发的意义................................................................................................................1
2 需求分析.....................................................................................................................................1
2.1 问题分析............................................................................................................................1
2.2 功能需求分析....................................................................................................................1
2.3 开发环境的选择................................................................................................................2
3 系统安全基础.............................................................................................................................3
4 系统总体设计.............................................................................................................................4
4.1 设计思想............................................................................................................................4
4.2 系统模块结构图................................................................................................................4
4.3 系统流程图........................................................................................................................4
4.4 数据库的设计....................................................................................................................5
5 系统详细设计与实现.................................................................................................................6
5.1 SSL 协议的配置与使用....................................................................................................6
5.2 功能模块设计....................................................................................................................7
5.2.1 系统管理模块............................................................................................................8
5.2.2 考生管理模块..........................................................................................................10
5.2.3 成绩查询模块..........................................................................................................11
5.2.4 控制考试模块..........................................................................................................12
5.2.5 制作试卷模块..........................................................................................................14
5.2.6 试卷中心模块..........................................................................................................15
5.2.7 考生考试模块..........................................................................................................16
6 系统测试...................................................................................................................................17
结 论........................................................................................................................................18
参考文献..........................................................................................................................................18
致 谢..........................................................................................................................................19
声 明..........................................................................................................................................20
第 1 页 共 20 页
1 引言
1.1 课题背景
近年来,我国的函授教育、网络远程教育、自学教育,以及国内国外的各类
认证考试教育,如微软的 MCSE、Cisco 的 CCNA 等,迅速发展。在这个日新月
异的时代,不学习就意味着落后,所以接受教育不再局限于校园内,职场人员通
过各种不同的考试来提升自我。
随着 Internet 的发展,计算机的全面普及,学校的教学、教务管理、行政管
理也一改传统的模式,借助现代计算机技术及因特网技术,努力朝着信息化建设
的方向发展。教育的改革,给人们带来了更多的学习机会。随着学习形式灵活、
学生分布广的成人教育及各种的认证培训考试教育的迅猛发展,考试的形式也变
得更加多样化。比如,在线考试就已经成为广泛应用的一种考试形式,相应的,
对在线考试系统的需求也越来越大。
1.2 系统开发的意义
系统所设计的在线考试系统,是响应教育信息化的体制改革,使 Internet 技
术与计算机技术在教育教学领域的应用得以拓展。在线考试系统的开发与设计适
合现代教育教学,也给传统的考试提供了一个很好的解决方案,今后将成为教育
教学管理的辅助方式之一,让传统教育中的考试朝网络化的方向发展。
2 需求分析
2.1 问题分析
在传统的学校教学中,进行一场考试,要求老师刻试卷、印试卷、安排考试、
监考、收集试卷、评改试卷、讲评试卷和分析试卷,这是一个繁杂的过程,需要
大量人力、物力与时间的投入,已经越来越不适应学校信息化建设与现代教学的
需要。尤其在远程网络教学中,学生分布广,不易统一集中安排考试,给校方和
学生带来了众多的不便。
当前盛行的在线考试系统,正是信息化建设的产物,它是传统考场的延伸。
它可以利用互联网络和局域网,随时随地的对学生进行考试,评分,加上数据库
技术的利用,使得管理过程简化,能够轻松实现查询,控制等功能。因此在线考
试是信息化教学的不可缺少的辅助手段。显然,无论采取何种方式,首要考虑的
是安全性能。为此,本系统在 SSL 协议下完成了在线考试。数据、信息、资料等
得以安全稳定的传输。
2.2 功能需求分析
1.用户类别:登录系统的身份定为四种,一是超级管理员,二是学校领导,
三是一般管理员(普通老师),四是学生,只有被授权的用户才可以使用本系统的
第 2 页 共 20 页
资源。
2.权限管理:系统需要经过有效的身份验证可以登录。用户的身份不同,
使用的系统资源也不同。考生只可以参加在线考试;一般管理员(普通教师)可以
在线制作试卷,进行考生管理,添加学生信息、控制考试、成绩查询等。学校领
导可添加院系、教师、部门、科目信息及查询修改管理员信息及审批试卷、查询
考生信息;超级管理员拥有整个系统的全部使用权限,但查询修改管理员信息的
权限例外。
3.在线考试功能:考生输入准号证号登陆系统后,选择对应的试卷可进行
考试。答题完毕后,可自动交卷,系统将自动评分,考生可同时获得考试成绩。
4.在线制作试卷:一般管理员(教师)、学校领导和超级管理员可在线制作
试卷,可设定试题的类型、难易程度、分值。
5.控制考试功能:可设定每次的考试时间,可禁止或允许考生参加考试,
同时可查看考生的考试状态。
6.考生管理功能:可注册新增学生用户,同时查看个别考生及班级考生的
信息,也可设定考生的考试状态:允许或禁止考试。
7.考生成绩查询功能:提供考生各科目成绩的详细查询。
8.试卷审批功能:超级管理员及学校领导有此权限。教师制作试卷完毕,
只有经过超级管理员或学校领导审批后才能发布,发布后学生才能开考。
9.系统管理功能:一般管理员只可更改登陆密码。超级管理员及学校领导
除更改密码外,同时具有高级管理功能,进行添加和删除管理员的帐号。
10. 系统安全性能:SSL 协议对数据的加密、对服务器的认证等能够保证数
据在各个流程中流动的安全性。
2.3 开发环境的选择
整个系统开发完全采用 Browser/Server 模式,开发平台为 Java 平台,以
Tomcat 为 JSP 引擎和 Web 服务器,后台数据库使用 SQL Server 2000。
在开发模式上选择 Browser/Server 模式,是因为 B/S 模式有以下优点:
1.开发成本及维护成本降低。由于 B/S 架构管理软件只安装在服务器端
(Server)上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑
在服务器(Server)端完全通过 WWW 浏览器实现,极少部分事务逻辑在前端
(Browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。
2.良好的安全性能,防火墙加技术加上 SSL 协议可以保证后台数据库的安
全性。所有客户端请求都是通过 DBMS 来访问数据库,从而大大减少了数据直
接暴露的风险。因此系统的架构就采用了 B/S 设计模式。