文档库 最新最全的文档下载
当前位置:文档库 › (完整版)网上考试系统毕业论文

(完整版)网上考试系统毕业论文

(完整版)网上考试系统毕业论文
(完整版)网上考试系统毕业论文

系别XXXXXXXXXXXX 专业XXXXXXXXXX 班级XXXXXXXXXX 学生姓名XXX

学号XXXX

指导教师XXX

XXX 年 XX 月

目录

摘要 (3)

前言 (4)

第一章网上考试系统 (5)

1.1系统开发背景 (5)

1.2系统开发意义 (5)

第二章网上考试系统需求分析 (6)

2.1现状分析 (6)

2.2可行性分析 (7)

2.2.1经济可行性 (7)

2.2.2技术可行性 (7)

第三章系统设计 (8)

3.1功能要求 (8)

3.2系统开发环境 (9)

3.3系统开发工具 (9)

第四章网上考试系统设计 (11)

4.1数据库设计 (11)

4.1.1数据库结构设计 (11)

4.1.2数据库表的设计 (11)

4.2系统结构设计 (12)

4.2.1页面模块化设计 (12)

4.2.2 MVC模式设计(Jsp+Servlet+JavaBean) (12)

第五章网上考试系统实现 (14)

5.1系统环境配置 (14)

5.1.1 安装和配置java (14)

5.1.2 下载并安装服务器 (14)

5.1.3 测试服务器 (14)

5.2数据连接的设计 (14)

5.3考生登录和功能模块 (15)

5.3.1登录模块 (15)

5.3.2功能模块 (16)

5.4管理员登录和功能模块 (19)

5.4.1 登录模块 (19)

5.4.2 功能模块 (19)

第六章系统测试 (21)

6.1系统测试分析 (21)

6.2软件测试的目标与方法 (21)

6.3系统测试过程和结果 (21)

第七章系统的不足和改进 (23)

结束语 (24)

谢辞 (25)

参考文献 (26)

网上考试系统的开发与实现

摘要

随着计算机技术、网络技术迅速发展和高校校园网功能的日益完善,

很多高校建立了基于校园网的网络信息管理平台,为提高教学管理水平提

供了先进的管理手段。

目前,基于网络的在线考试系统己经成为现代考试方式的有力补充和

发展。基于网络的考试系统以其考试组织严格可信、考试结果分析科学合理、考试成本低、考试效率高等优势被各类学校所重视。本系统基本上可以满足学校及现代化企业的内部考试要求,以考生的信息作为基础,考生的信息管理,试卷的生成和提交直接由程序完成,大大提高了考试的公正性。

本文重点就考试系统的技术选择、总体设计、数据库设计、系统的详细设计与实现等涉及的关键性问题予以重点阐述。

关键字:网上考试系统,总体设计,数据库设计,JSP

前言

伴随着网络技术的飞速发展,尤其是互联网、宽带技术在应用中日益成熟,网络技术已经应用到我们生产和生活的各个方面,成为不可缺少的工具。通过网络可以突破时间和空间上的限制,使用户能够随时随地享用几乎是无限的各种数据资源,可以了解到最新、最及时的信息,并可进行实时的交流,以便做出最合理高效的决策。

基于网络的上述优势,应用成熟的网络技术来开发基于网络的教学辅助系统在技术上是完全可以实现的。随着科技的进步与经济的繁荣,校园计算机网络的建立与应用已相当普遍,它对内综合了校园中的计算机资源,对外建立了交换体系,更为快速的传递数据信息,初步达到了校园内资源的共享。为此,我们可以发挥网络的资源整和优势,将分散在校园各处的教学资源有机的结合起来,使有限的资源得到充分的利用,加大信息的流动效率,实现信息量的相对增加。

第一章网上考试系统

1.1系统开发背景

很多学校学生的考试仍采用任课教师(个人或集体)考前出题的方式。为解决学生压题,考前漏题,补(缓)考试题与正式考试试题题量及难度差异问题,教务管理部门通常要求教师同时出多套试卷,其题量与难度要求相同,并且要同时给出答案和评分标准。这样做虽能解决一些问题,但给教师增加了很大的工作负担。

1.2系统开发意义

随着计算机技术、网络技术迅速发展和高校校园网功能的日益完善,很多高校建立了基于校园网的网络信息管理平台,为提高教学管理水平提供了先进的管理手段。目前,基于网络的在线考试系统己经成为现代考试方式的有力补充和发展。相对于传统的笔试,网络在线考试不仅减轻了在组织考试、评卷、成绩统计等方面所花费的人力和物力,并且突破了时间与空间的限制,不仅节省了资源,而且提高了评分的客观性、公正性和准确度,大大改善了考试工作的效率。

若建立题库,每次考试前由题库中题目随机生成试卷,则可较好地解决考教分离的问题,也可将广大教师从每学期末繁重的命题工作中解放出来。通过Internet来实现网上考试,可以有效利用校园网的软硬件资源,使其发挥最大效力,实现考试的客观、公证性,自动化组卷、阅卷可以减轻教师的工作强度。传统考试要求老师收集资料、出试卷、印试卷、安排考试、监考、收集试卷、评改试卷、讲评试卷和分析试卷。这是一个漫长而复杂的过程,已经越来越不适应现代教学的需要。网上考试可大大提高考试的可靠性、有效性,降低考试成本,

提高工作效率。

第二章网上考试系统需求分析

2.1现状分析

传统的考试方法要求组织者提前命题试卷,然后约定一个统一时间,让所有考生到考场里进行考试。这种模式如图2-1 所示:

编辑、审核考题

印刷试卷

安排考场,时间,监考人员

学生集体考试

阅卷,统计成绩

图2-1 传统考试模式

这种模式存在有较多的问题:

命题:由于考试要求统一进行,所有考生都考同样的一份试卷,所以试卷的命题工作便一定得非常谨慎小心,试题太难或太容易,都达不到考试目的。而如何不在考试之前使命好的试题泄漏出去,也是组织者费尽心思。

试卷印刷:对于大规模的考试,试卷印刷费工费时,成本高,对纸张资源也是一种浪费。对于涉及地域范围较广的考试(如英语四,六级考试),还要考虑试卷大的长途运送费用和可能出现的试卷丢失,损坏等问题。在考试的印刷和运输过程中同样有试题泄漏出去的问题。

考场的安排:涉及监考人员的培训与管理。对于大规模的考试,尤其是到了考试密集期(如期中,期末)。诸多学科的考试都要陆续开始的时候,对于教室资源和教师数量相对紧张的学校,如何安排考场,调配监考人员,是一件相对繁琐而又复杂的事情。

进行考试:由于同一次考试的试卷相同,要杜绝考生作弊是一个普遍

的难题。因此,历届组织考试的人动了很多脑筋,如分AB卷,加强监考,加重对作弊者的惩罚程度等,但这些都没能从根本上杜绝作弊。不同地域监考的严格程度,考试时问控制的严格程度,也很难达到统一。过多人为因素的加入,也使得考试的公正性下降。

阅卷:考试结束后,采用人工阅卷比较容易出错,并可能出现人为造成的不公正现象。

2.2可行性分析

可行性分析也称为可行性研究,即是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从经济、技术的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。

2.2.1经济可行性

主要是对项目的经济效益进行评价,利用计算机来实现网上考试以成为适应当今教学管理的方式。开发一套能满足网上考试系统的软件是十分必要的,实现试卷管理和试卷生成自动化,在减少由于认为失误而造成损失的同时,也可以使教师减少工作量。本系统在经济上是可以接受的,并且本系统实施后可以显著提高考试效率,有助于学院完全实现网络化管理。所以本系统在经济上是可行的。

2.2.2技术可行性

技术上的可行性分析主要分析技术条件是否能顺利完成开发工作,软硬件能否满足开发者的需要等。

软件方面,网络化考试需要的各种软件环境都已具备,数据库服务器方面则有SQL Server,均能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。其灵活性、安全性和易用性为数据库编程提供了良

好的条件。因此,系统的软件开发平台已成熟可行。

硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。

第三章系统设计

3.1功能要求

对于JSP方案的在线考试系统,总体上作如下设计:

(l)、将访问系统的用户按身份分为两类:管理员用户(一般是教师)、考生用户。

(2)、允许管理员对考生、题目等基本信息进行管理。

(3)、考生的主要功能是修改自己的资料、在线考试以及查看成绩。

(4)、只有通过身份验证的用户才能进入相应用户身份的主页。

以上两类用户分别拥有自己的操作功能。根据操作划分模块,每一个操作模块都要实现自身的功能,并且在整个操作流程中负责承上启下。下面根据这两个方面的需要,来分别描述各个模块要实现的功能。

其功能模块大致分为:

考生信息模块:考生信息是调用数据库自动生成的,其中包括对考生信息的修改和删除功能。

题目管理模块:主要包括对考试题目的查看和修改功能。

成绩统计模块:主要包括所有已参加考试的考生的成绩显示。

管理员追加:主要功能是添加后台管理员。

在线考试模块:考生在线考试主要经过三个步骤,首先考生登录,登录成功后进入考试,再将所有问题答完后提交,最后将成绩显示出来。

考试系统的整体方案如下图所示:

图3-1 考试系统的整体方案

3.2系统开发环境

本系统采用了JSP+Selver+JDBC+SQL Server2000的方式实现,即MVC 模式(model+view+controller)。SQL Server2000用于数据存储,JDBC 用于连接数据库并对数据库实现各种操作,Selver作为控制器用于处理过程控制,JSP用于页面显示部分。主要的开发工具如下:

辅助开发工具: Dreamweaver 8

数据库:SQL server2000

服务器:Apache Tomcat6.0

运行环境: JDK1.6.0_21

开发工具: Eclipse 8.5

其总体软件系统结构如下图所示

图3-2总体软件系统结构

3.3系统开发工具

本系统是基于JSP+ SQL server2000数据库技术实现的,现对JSP技术和SQL server2000数据库作简要的介绍。

开发语言——JSP(Java Server Page)

JSP页面由HTML代码和嵌入其中的Java代码所组成。Java Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet 和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的等特点。

数据库——SQL server2000

Microsoft SQL Server 2000产品是为当前的分布式客户机服务器特别设计的,SQL Server数据库能够轻松通过Internet和内部网络加以访问。SQL Server提供了一系列方法将数据填充到Web服务器,同时提供了对数据的快捷访问。它是一个可伸缩、高性能的数据库管理系统,具备内置的复制能力、Internet集成、开放系统体系结构的管理工具。它的一个

独特功能是基于服务器的作业调度系统,允许直观的控制多个服务器和远程操作。这极大的增强了数据库的性能和可靠性。

第四章网上考试系统设计

4.1数据库设计

网络考试系统离不开数据库的支持,无论是试题、答案、还是考生信息都需要存放在数据库中,而且独立于程序而存在,具有较好的安全性,本例中的数据库表名为myvote。在对网上考试系统数据库部分进行设计的过程中,通过对系统功能进行需求分析得到系统的基本信息表,绘制系统流程图,分析得到数据字典;通过对需求阶段得到的用户需求抽象得到数据库关系模型的E-R图,在逻辑结构设计阶段得到数据库的关系模式并绘制信息表。详细设计过程如下介绍。

4.1.1数据库结构设计

实体-关系模型(Entity-Relationship Module,简称E-R模型)是数据结构设计常用的方法。E-R图中的矩形表示实体,菱形表示实体之间的联系,联系的类型可用1:1或M:N表示。系统E-R图如下图4-1所示:

图4-1 系统E-R图

4.1.2数据库表的设计

综合以上分析,要实现上面的所有功能模块,主要的表结构的描述如

下:

admins表:用来记录管理员信息。

student表:用来记录考生信息,包括考生的登录密码和基本资料。

stuscore表:考生的成绩表。

answer表:考生的答案表。

tiku表:存放考试题目及答案等信息。

例如tiku表如下图所示:

图4-2 tiku表

4.2系统结构设计

4.2.1页面模块化设计

模块化设计的要求不仅是为了提高代码的重用性,更重要的是为了提高代码的可维护性和稳定性。一个模块化程度高、结构清晰的应用程序,在程序维护时的便利性是可想而知的。最初设计方案时,就要规划好哪些模块是可以提出来多次使用,哪些模块虽只使用一次,但提出来之后能使代码更清晰等。

网上考试系统是一个典型的数据库开发应用程序,本系统主要用管理员和学生两大模块组成,各模块功能如下:

管理员模块:该模块主要是对学生、管理员信息的添加和修改,添加试题、查看试卷等。

学生模块:该模块主要是学生通过登录该系统能够修改个人信息,进行考试等。

4.2.2 MVC模式设计(Jsp+Servlet+JavaBean)

MVC(Model View Controller)是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。

视图是用户看到并与之交互的界面。如何处理应用程序的界面变得越来越有挑战性。MVC一个大的好处是它能为你的应用程序处理很多不同的视图。JSP页面处于表现层,也就是视力(View即V)的角色。

模型表示企业数据和业务规则。在MVC的三个部件中,模型拥有最多的处理任务。由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。JavaBean则负责数据的处理,也就是模型(Model即M)的角色。

控制器接受用户的输入并调用模型和视图去完成用户的需求。所以当单击Web页面中的超链接和发送HTML表单时,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后用确定用哪个视图来显示模型处理返回的数据。Servlet用来处理请求的事务,充当控制器(Controller即C)的角色,Servlet负责响应用户对业务逻辑的请求并根据用户的请求行为,决定将哪个JSP页面发送给客户。

初始的请求由Servlet来处理,Servlet调用商业逻辑和数据处理代

码,并创建Bean来表示相应的结果(模型)。然后Servlet确定哪个页面适合于表达这些特定的结果,并将请求转发到相应的页面(JSP页面即为视图),由Servlet确定哪个业务逻辑适用,应该用哪个JSP页面相应结果(Servlet就是控制器)。

第五章网上考试系统实现

从系统功能模块划分中可以看出,系统总体上有两个功能模块组成。各模块虽然是独立的,但又统一于同一数据库中,便于管理员管理维护数据库,同时也便于考生的操作。在介绍系统各模块的实现方法之前,首先介绍系统与数据库的配置和连接方式。再介绍系统主要部分的实现方法。

5.1系统环境配置

本系统用到的服务器需要对其详细配置,主用过程有:安装和配置java,下载并安装服务器,测试服务器。

5.1.1 安装和配置java

(1)下载JDK和JRE。本系统的安装文件是在下载。 Tomcat6.0需要的是JRE1.5。

(2)安装并设置环境变量。设置JAVA_HOME变量为java的主目录. 把java的bin目录路径添加到PATH环境变量中。

(3)测试Java环境。进入命令提示符(开始 - 运行 - cmd),输入java -version,看版本对不对. 输入javac - savepaper(){ 数据保存函数

window.fm0.target = "timesave" 试卷答案传递到timesave 的iframe窗口

window.fm0.action = "timemark.jsp"试卷答案提交到timemark.jsp页面

window.fm0.submit();}

如果剩余时间(单位:秒)limitime不为零而且能够被20整除

if ( limitime && limitime%20==0){

savepaper();} 运行数据保存函数

-->