文档库 最新最全的文档下载
当前位置:文档库 › 在线考试系统的设计与实现

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

摘 要:科技在进步,人们生活和工作的方式正发生着改变,不仅体现在人们的衣食住行,也体现在与时俱进的考试形式上。以前的考试需要提前对试题进行筛选,后期有需要手动批阅,耗费大量时间与精力,影响教学效率。因此,就
出了一种基于Java的在线考试系统。
在线考试系统就是能够使学生通过计算机能够顺利完成考试,它采用Web方式,它要实现考题,公告,个人信息的管理等功能,并能提供题目保存、题目查询等功能,该系统同时拥有最开放的题库管理系统和最灵活的选题系统,能够自动进行权限的判断,对用户进行冻结。
该系统采用了JAVA技术为主要手段,采用了多个角色管理:包括系统管理员、学生两种权限.本文主要介绍了用户权限的划分,并详细地论述了系统设计的思想和实现的方法步骤从而为以后的研究打下了基础。
关键词:Java ;考试系统;权限
1 引言
1.1 选题系统出现的趋势
随着计算机网络的普及和应用,人们的现代生活方式发生了巨大的变化。当前,我国各高校都加快了信息化建设的进程,并且都建立了自己的校园网络。这为网络现代化教育提供了必备的物质基础。学校总是处在接受新知识的最前沿阵地,于是校园网的应用和各种实用系统的开发也正蓬勃发展并发挥着巨大的作用。
在技术和需求的双重推动下,继续使用纸质试卷,暴露出了很多缺点和不足。目前,高校学生人数日益增加,每年的学生人数也在增加,每位老师负责的学生数量也在不断增加,平时所需交换意见的次数虽然不是很多,但是需要老师和学生进行大量的交流,这样下来很可能影响老师和学生日常的学习和工作,耽误大量的时间。
在线考试系统使用计算机选题,题目内容放在服务器上,学生通过帐号和密码进行登陆,学生可以第一时间得到试题信息,进行答题,同时也方便老师批改审查。在线考试系统的应用将会大大的提高考试效率,减轻各项工作负担,为老师和学生节省大量时间。在线考试系统将使得考试答题实现便捷化,灵活化和高效化。因此,采用在线考试方式将是今后发展的大趋势。
1.2 开发背景
在线考试是现阶段研究开发的一个热点。它是建立在国际互联网上的应用系统,客户端的配置可以极为简单,使考试不受地域的局限。一个完备的在线考试系统可以使用户在网上学习过后及时检验自己的学习效果,已发现自己的不足,使得学习效率得到很大提高。在线考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在网络上自动完成。只要形成一套成熟的题库就可以实现考试的自动化。这样一来,教师所要做的只是精心

设计题目、维护题库,而不是组织考试,从而大大减轻了教师的负担,这表明其经济性是相当可观的。为了适应新形势的发展,我进行了这一系统的初步设计工作,也可以说是做一个初步的探索,希望它能够在各类考试中发挥高效、便捷的作用,把老师从繁重的工作中解脱出来!?
随着网络技术的飞速发展,现在很多国外的大学和社会其他部门都已经开设了远程教育,通过计算机网络实现异地教育和培训。现在,计算机硬件技术的发展已经达到了相当高的水平。但是,远程教育软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好、更完善的软件系统应用到远程教育当中去,这就给软件设计人员提出了更高的设计要求。
2 系统分析
系统分析是对用户以及构建系统单位进行需求的调查确认,直到整个系统完整运行,业务以及功能完善。前期的系统分析能为整个系统实现指明方向能够实现香港馆的功能,使得功能完善。
2.1 功能需求分析
系统具有以下功能:
各功能模块分解,按照自己所做系统内的模块项目进行分解,前台功能:
(1)登陆、修改密码
A.选择用户身份
B.输入学号
C.输入密码
D.确认登陆

(2)选取题目
A.登陆后浏览题目
B.确定选取
C.等待系统评审
(3)个人信息
A.基本信息,包括学号、姓名、所选题目、审核结果
B.密码修改
C.先输入旧密码,再输入所要改的新密码
D.确认修改
(4)查看选题结果
A.选题详情
B.最终结果
(5)公告管理
A.查看公告
基于JAVA的考试选题系统——后台模块
(1)个人信息管理:
a.登录/退出
b.修改个人信息
c.修改密码
(2)试题管理:
a.录入试题
b.查看试题
c.修改试题
(3)试题审核管理
a.查看学生选题
b.审核学生选题
c.修改题目
(4) 公告管理
a.发布公告
b.查看历史公告
2.2 数据库需求
在信息世界中,信息从客观事物出发流经数据库,通过决策机构最后又回到客观世界,信息的这一循环经历了三个领域:信息世界,数据世界,现实世界。现实世界的事物反映到人的头脑中,人的大脑对它有个认识过程,经过分析(选择、命名、分类等)进入信息世界。这些信息再进一步加工、编码,然后进入数据世界,而软件系统的开发工作需要考虑这两个方面的问题,也就是要考虑系统开发所需要的数据,以及如何对这些数据进行操作。这两个问题贯穿了整个软件系统的开发过程,这也就是数据库的设计问题,软件设计的一个核心。
作为一个具有一定应用价值的教学管理系统,从本质上说

其操作的对象为数据库中存储的具体记录。因此,不仅要求所使用的数据库系统具有比较高的稳定性、安全性及高负载下保持足够相应的能力,还要求设计者清楚需求,做出科学的数据库逻辑结构设计,以提高数据库的利用效率和减少数据冗余。用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输入和输出。收集基本数据、数据结构及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。
数据库的概念结构设计完毕以后,现在可以将上面的数据库概念结构转化为某种数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。数据库系统的选用需要根据系统的需求而定。
该系统主要涉及到几种信息的存储,首先是毕业班学生的信息,论文的题目信息,学校指导教师和系主任的信息,所以每个信息保存在一张表中,在对表的操作中可以对任意一个表独立操作,也可以对几个表关联操作。
2.3 系统环境需求
1)操作系统:Window 10
2)应用服务器:Tomcat 8
3)数据库:sql server 2008
4)Java VM:JDK 1.8
2.4 系统问题分析
传统的学校教学中,进行一场考试,要求老师刻试卷、印试卷、安排考试、监考、收集试卷、评改试卷、讲评试卷和分析试卷,这是一个繁杂的过程,需要大量人力、物力与时间的投入,已经越来越不适应学校信息化建设与现代教学的需要。尤其在远程在线教学中,学生分布广,不易统一集中安排考试,给校方和学生带来了众多的不便。
而在线考试系统,正是信息化建设的产物,它是传统考场的延伸。它可以利用互联在线和局域网,随时随地的对学生进行考试,加上数据库技术的利用,大大简化了传统考试的过程。因此在线考试是电子化教学的不可缺少的辅助手段。2.5 可行性分析
2.5.1 技术可行性
基于浏览器的在线考试,关键技术在于网页的动态显示和管理,即从数据库中取得相应的试卷数据,并收集用户输入数据,能够对考试过程进行控制。采用最新的Jsp与SQL技术开发,管理端和考生界面全部采用B/S模式构建,系统的部署,应用,维护更加方便。同时,开源数据库MySql提供了数据库管理的能力,因此技术方案是成熟的和可行的。
2.5.2 经济可行性
软件开发周期一般为2-3个月,开发所需硬件软件设施目前大多数PC机系统能够承担,开发费用不高。目前,大多数单位都拥有高性能微机和局域网,该软件系统的安装、部署、运行和维护,都不会给单位增加太高的费用。
2.5.3 操作可行性
目前,大多数PC机和局域网能够软件系统运行该系统,该系统的安装、调试、运行不会改

变原计算机系统的设置和网络的布局,并且大多数用户几乎不用做任何培训都能够方便的操作软件。
3 系统所需软件
3.1 系统开发环境配置
选择微软平台作为主导,一方面考虑目前微软的飞速发展,越来越多的企业在规划内部网络时,将微软平台作为首选方案;令一方面从技术角度来讲,微软平台上的应用无论是在开发上,还是在软件的部署上都是非常容易,而且性能优越。具体如下:
1.开发工具:Eclipse
2.数据库:Sqlserver 2008
3.服务器 :Apache Tomcat8.0
4.运行环境 :安装JDK1.8支持Java运行。
5.技术:前台网页的设计采用JSP技术制作。负责响应用户对业务逻辑的请求并根据用户的请求行为,决定将哪个JSP页面发送给客户Servlet处理。
3.2 系统开发工具
本系统运用了很多的开发工具以及以java为基础的开发语言,在后台的代码编写中主要运用了Java、J2EE;前台的设计中运用了JSP、JavaScript、JQuery、css等一些开发语言;通过eclipse来编写这些程序;用Sqlserver2008进行数据库的设计与分析;另外该网络考试系统的部署容器为Tomcat 8,当需要进行考试时,只需要配置tomcat服务器,便可进行考试。
3.2.1 开发语言—JSP(Java Server Page)
JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。
它实现了Html语法中的java扩展(以 <%, %>形式)。JSP与Servlet一样,是在服务器端执行的。通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 JSP(JavaServer Pages)是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。
Java Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。
3.2.2 数据库—Sqlserver2008
Sqlserver是一个精巧的SQL数据库管理系统,虽然它不是开放源代码的产品,但在某些情况下你可以自

由使用。由于它的强大功能、灵活性、丰富的应用编程接口(API)以及精巧的系统结构,受到了广大自由软件爱好者甚至是商业软件用户的青睐,特别是与Apache和PHP/PERL结合,为建立基于数据库的动态网站提供了强大动力。
SQL是一种标准化的语言,它使得存储、更新和存取信息更容易。例如,你能用SQL语言为一个网站检索产品信息及存储顾客信息,同时Sqlserver也足够快和灵活以允许你存储记录文件和图像。
3.2.3 JavaScript
JavaScript看样子和Java很像,但是,实际上它们之间并没有直接联系,只是大家都以Java开头而已。目前互联网上最重要的语言是什么?不是Java,不是.Net,也不是PHP,而是JavaScript,它是互联网上最重要的语言。它不仅能跨平台、跨浏览器,它还能跨后端语言。在WEB2.0时代,JavaScript语言像桥一样,将前端页面和后端服务器连接了起来,这样前端页面不用知道服务器那里是用什么语言编写的,也不用知道是如何编写的,而服务器那头也不用知道前端是用什么语言写的,只需要知道前端会传过来一些固定格式的数据信息。JavaScript编写的程序是在浏览器中运行的,它不会在服务器那头运行,一定程度上减少了服务器那头的压力。JavaScript语言在网页完全加载完毕后,可以与网页产生互动来完成一些操作,利用这个特性,我们经常将JavaScript运用在验证表单、修改HTML元素和存储用户数据等方面上。这些功能,Flash和Silverlight都能完成,但是Flash和Silverlight都要单独的安装插件,使用门槛比较高,而且针对不同的浏览器,插件也不一样,在一堆插件中,用户很难选择正确的插件进行安装。而JavaScript不同,它不需要额外的安装什么东西,只要是个浏览器,就能支持。JavaScript的语法与C的语法类似,语句通过在最后加上“;”符号来表示结束,同样的大小写敏感,注释也是“//”开始。因此学习过C语言的人能够很快的上手JavaScript的开发工作。
3.2.4 Tomcat
Tomcat 服务器是Apache组织的一个开源子项目。具备基本的web服务的功能,是中小型系统首选的服务器,更是开发和调试JSP 程序的首选。因为Tomcat 技术不仅免费而且性能稳定,我们在本科阶段的很多web项目中也多为使用Tomcat作为服务器,其也成为目前比较流行使用的Web 应用服务器。
如果配置正确,Tomcat 服务器实际上在运行JSP 页面和Servlet容器。此外,Tomcat和其他Web服务器一样,都具有基于处理HTML页面的功能,另外它还是一个Servlet和JSP容器。独立的Servlet容器是Tomcat服务器的默认模式。目前Tomcat服务器最新版本为8.0.0,本次毕设我使用的也是Tomcat8。
此外,Tomcat 服务器运行时占用的系统资源较小

相关文档