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

上传人:b****9 文档编号:25369737 上传时间:2023-06-07 格式:DOCX 页数:29 大小:1.73MB
下载 相关 举报
在线考试系统的设计与实现.docx_第1页
第1页 / 共29页
在线考试系统的设计与实现.docx_第2页
第2页 / 共29页
在线考试系统的设计与实现.docx_第3页
第3页 / 共29页
在线考试系统的设计与实现.docx_第4页
第4页 / 共29页
在线考试系统的设计与实现.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

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

《在线考试系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《在线考试系统的设计与实现.docx(29页珍藏版)》请在冰豆网上搜索。

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

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

题目:

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

摘要

教育的改革,不仅仅是教育思想的更新和进步,也是教育技术和手段的改进和提高。

在各种教育机构的教学过程中,考试都是一个重要的环节,考试工作的好坏直接关系着教学的成绩。

传统的考试,长期以来都是以纸和笔为工具,工作效率低、纸张浪费大,因此在线考试应运而生。

当今各项技术突飞猛进,尤以计算机技术的发展最为突出。

在这种双重因素的作用下,以计算机技术为主的无纸化考试应运而生。

主要优势体现在出题方便快捷、阅卷准确快速、成绩分析科学直观。

论文首先对在线考试系统进行了需求分析。

然后完成了在线考试系统的设计,包括功能模块的设计和数据库的设计。

功能模块的设计依据了前面的系统分析,将系统划分为管理员管理、考生管理、成绩查询、试题管理、套题管理、科目管理、在线考试七个模块。

关键词:

在线考试系统;MVC;JSP

ABSTRACT

Withtheinnovationofeducationalthoughtandthedevelopmentofscienceandtechnology,theshortcomingsofthetraditionalexaminationsarecompletelyexposed.Thedesign,organization,printing,distribution,processandevaluationofthetesttakealotoflaborsandmaterials,whichshowspeople'slowerworkingefficiency.Insuchcases,Onlineexamarisesatthehistoricmoment.Itischaracterizedinitsconvenienceandfastnesswhilesettingatestpaper,itsspeedandaccuracywhileevaluatingthepaperanditsscientificanalysisofthetestpaper.Itiseasierforteacherstosetatestpaperbythetestquestiondatabase.Thecomputerizedexaminationsystemwillsavealotoflaborsinevaluatingthetestpaper,andgreatlyimprovetheaccuracyinevaluation.Thestatisticalanalysiswillheperformedautomaticallybythecomputer,whichwillbeconvenientforstudentstoinquiryabout,print,countandanalyzetheirmarks.

ThisthesisdesignsandimplementsanonlineexaminationsystembyusingsuchtechnologiesandtoolsasStruts,MVC(Model,ViewandController),UML(Unifiedmodelinglanguage)andJ2EE(Java2enterpriseedition).Thethesisfirstanalysestherequirementsofonlineexaminationsystem,whichincludethetargetandtaskofthesystem,showstheUseCaseModel,SequenceDiagramsandActivityDiagramsofthesystem.Thenthethesiscompletesthedesignofthesystem,whichincludesthedesignoffunctionmodulesandthedesignofthedatabase.Accordingtothesystemanalysis,systemisdividedintosevenmodules,suchasmanagermanagement,exammanagement,questionmanagement,subjectmanagement,taotimanagement,scoreinquiryandonlineexam.

Keywords:

Onlineexaminationsystem;MVC;JSP

第一章绪论

1.1项目开发的背景

随着计算机产业的迅速发展,电子计算机已广泛的应用于信息管理、文字处理、辅助设计、辅助教学及人们的日常生活中。

在线考试系统主要是针对学校涉及学生考试的一系列相关工作的管理,本系统的建立使学校在线考试的管理更加规范化、系统化,查询手段更加便捷化。

同时,在线考试系统也是实现学校考试管理现代化和信息化的重要内容。

近年来,随着学校学生的数量逐渐增加,人工书写数据已经不能够处理如此庞大的数据。

为了更好的适应信息时代的高效性,一个利用计算机来实现学校在线考试的系统将必然诞生。

基于这一点,设计了一个在线考试系统,用来就学生在线考试进行管理,以便在最短的时间内,高效准确的完成整个在线考试的过程。

基于对上述的认识,收集相关资料和数据,查阅有关文献及技术参数,对学校在线考试的实际需求等方面进行了调研,发现目前所采用的手工记录的方法进行管理存在以下几个方面的弊端:

对象范围广,数据存储不易;填写的数据多,内容相当复杂,且大量数据重复;不易存档,成千上万的信息和堆积如山的单据对管理人员来说是一个负担,需要大量的文档资料。

鉴于以上种种原因,在线考试的管理急需一种软件来代替手工操作来管理数据资料。

计算机技术在现代管理中的应用,使计算机成为领导者和管理人员应用现代技术的重要工具。

计算机辅助学校管理活动,可以极大地增强管理者采集、处理信息的能力,从而有利于管理者及时决策。

计算机系统能根据管理过程的变化情况,将原始数据、资料等进行加工、保存,管理人员可以在解决具体问题需要信息资料时,随时进行检索查询,了解整个在线考试系统的动态情况,进行动态管理,从而有效的处理学校在线考试的管理工作,实现学校对题库信息管理的自动化,提高办学效率。

1.2项目开发的意义

在线考试系统的开发目的是使在线考试模式从手工记录转变成信息管理,为在线考试人员提供方便条件。

对在线考试的实际情况进行调研之后,进行详细的需求分析,对现有的管理模式进行改进,开发出一套新型的管理系统,从中领悟系统开发的思想,掌握系统开发的流程和方法。

随着学校信息系统的不断完善,学校的管理将越来越依赖于信息化的管理。

所以系统开发将围绕在线考试工作的实际情况,使之能迅速适应学校考试的需要。

在线考试系统的实施的现实意义:

减少管理考试的工作人员;管理人员可以随时浏览查看,而且更加直观;改变了以前工资手工记录的方式,电脑录入更加方便快捷;实现了在线考试的计算机化。

1.3本章小结

通过查阅数据,对在线考试系统的背景有了初步了解,这将有助于我进入下一步的学习与设计。

在查阅资料时,我重点观注了它的未来发展,我觉得该系统的未来远景很可观,远远超乎我的预测,随着教育事业的发展,相信不久的将来,教育事业也会是互联网的天下,通过在线管理使学生的信息可以打破量的瓶颈,做到有序管理。

第二章需求分析

2.1可行性分析

可行性分析也称为可行性研究,是在调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会等方面进行分析和研究,以避免投资失误,保证新系统的开发成功。

可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。

本系统采用JSP作为开发工具,本系统具有以下特性JSP(JavaServerPages)是由SunMicrosystem公司于1999/6推出的新技术,是基于JavaServlet以及整个Java体系的Web开发技术。

JSP页面是由HTML代码和嵌入其中的Java代码所组成。

服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。

利用这一技术可以建立先进、安全和跨平台的动态网站。

JSP的优点:

一次编写,到处运行。

系统的多平台支持。

基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。

从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Applications进行事务处理、消息处理,一台服务器到无数台服务器,Java显示了一下巨大的生命力

多样化和功能强大的开发工具支持。

JSP的缺点:

正是由于跨平台的功能,为了极度的伸缩能力,所以极大地增加了产品的复杂性。

Java的运行速度是用class常驻内存来完成的,所以它在一些情况下所使用的内存比用户数量来说是“最低性能价格比。

JSP技术基于强大的Java语言,具有良好的伸缩性,与JavaEnterpriseAPI紧密地集成在一起,在网络数据库应用开发领域具有得天独厚的优势,基于Java平台构建网络程序已经被越来越多的人认为是最有发展前途的技术。

下面将分别从技术、经济、社会三个方面对在线考试系统的建设进行分析和研究。

2.1.1技术可行性

根据学校提出的系统功能、性能及实现系统的各种约束条件,根据新系统目标来衡量所需的技术是否具备,本系统是一个数据库管理和查询的系统,现有的技术已较为成熟,硬件、软件的性能要求、环境条件等各项条件良好,估计利用现有技术条件应完全可以达到该系统的功能目标。

同时,考虑给予的开发期限也较为充裕,预计系统是可以在规定期限内完成开发的。

基于浏览器的在线考试,关键技术在于网页的动态显示和管理,即从数据库中取得相应的试卷数据,并收集用户输入数据能够对考试过程进行控制。

采用最新的JSP与SQL技术开发,管理端和考生界面全部采用B/S模式构建,系统的部署、应用、维护更加方便。

同时,大型数据库SQLServer2008提供了数据库管理的能力,因此技术方案是成熟的和可行的。

由以上分析可知,在线考试系统的开发在技术上是可行的。

2.1.2经济可行性

学校具有信息化的处理设施,并且拥有支持本系统的应用平台。

因此无需再投入资金购买其他设施。

系统的开发基于本人对程序开发的实践学习而来,学校无需资金投入,并且软件开发过程投入的成本不高,因此开发经费完全可以接受。

软件开发周期一般为2-3个月,开发所需硬件软件设施目前大多数PC机系统能够承担,开发费用不高。

目前,大多数单位都拥有高性能微机和局域网,该软件系统的安装、部署、运行和维护,都不会给单位增加太高的费用。

所以该系统在经济上是可行的。

由以上分析可知,在线考试系统在经济上是可行的

2.1.3社会可行性

本系统的社会可行性主要从法律因素、用户使用可行性两方面进行研究。

法律因素:

本系统是根据在线考试系统的实际情况开发研制的,是通过大量的调研得出的,系统的软件设计是在独立的环境下完成的,无可供抄袭的软件产品。

用户使用可行性:

本系统对用户的要求,除了需要具备在MicrosoftWindows平台上使用个人电脑的知识外,并不需要特别的技术能力。

使用系统的管理员,需要具备对Tomcat服务器的使用能力,在投入使用前,无需对操作系统的人员进行培训。

这样既减少投入成本又简化了操作环节。

目前,大多数PC机和局域网能够运行该系统,该系统的安装、调试、运行不会改变原计算机系统的设置和网络的布局,并且大多数用户几乎不用做任何培训都能够方便的操作系统。

因此从操作可行性的角度来衡量,本系统的开发方案也是可行的。

由以上分析可知,本系统具有社会可行性。

2.2总体设计原则

本系统为了设计、实现和后期维护的方便,以及系统用户使用的便利,所以必须采取一定的设计原则[3]。

其主要设计原则有

简单性:

在实现系统的功能的同时,尽量让系统操作简单易懂,这对于一个系统来说是非常重要的。

针对性:

本系统设计是针对在线考试的需求定向开发设计,所以具有专业突出和很强的针对性。

实用性:

要求本系统能够满足学校在线考试的需求,因此具有良好的实用性。

一致性:

页面整体设计风格以及命名规则的一致性:

整体页面布局和用图用色风格及变量、类名和其他元素的命名规则保持一致。

功能一致性:

完成同样的功能应该尽量使用同样的元素。

元素风格一致性:

界面元素的美观风格、摆放位置在同一个界面和不同界面之间都应该是一致的。

变量命名规则的一致性:

变量应该用统一的规则进行命名,做到任意变量均能从上下文推断其义。

先进性:

本系统采用JSP技术、SQLServer2008等被广泛采用系统开发技术和数据库,因此本设计具有良好的先进性,具体表现在其具有良好的可扩展性,可开发性。

2.3本章小结

本章主要是对本系统设计的一些基本知识进行介绍。

由于本系统是使用JSP技术实现的,所以对JSP技术做了一个详细的介绍,包括其工作原理、功能以及使用JSP技术的优点。

本章还介绍了SQLServer的特点,它是一个可伸缩的高性能的关系数据库管理系统;接着介绍了它的安全性,因为在开发数据库系统是,安全性是设计师开发者不能回避的重要环节;在本章,介绍了系统运行过程中数据库的管理维护,确保系统中的数据完整有效。

最后,介绍了技术及其工作原理等。

第三章系统分析

3.1系统的功能分析

在线考试系统是网络教育的一个重要部分,也是现代教育的一个趋势。

它需有以下基本功能:

(1)前台

a、考生注册:

在这里我们可以注册考生的基本信息,标注“*”的信息必须填写,其中提示问题和问题答案是方便找回密码。

b、考生登陆:

注册过的考生使用注册时的密码和系统生成的准考证号登陆,选择自己需要的服务。

c、在线考试:

成功登陆的考生如果有相对应的试卷,便可根据提示顺利进入考试并提交试卷;若检测不到相应的试卷,返回登陆成功后的选择页面。

如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“考生登陆页面”。

d、试卷提交:

考生在完成试题后可提交试卷,系统自动根据试题答案生成成绩,并记录到数据库中,方便考生和管理员查询分析。

e、成绩查询:

成功登陆的考生可以查询自己所有参与考试的科目的成绩。

如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“考生登陆页面”。

f、修改资料:

成功登陆的考生可以在该页修改注册时所填写的个人信息。

如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“考生登陆页面”。

g、退出系统:

退出前台系统到考生登陆页面。

图3-1展示了考生前台的所有权限。

图3-1考生权限图

(2)后台

a、后台登陆:

登录管理进入管理员系统界面。

b、管理员信息管理:

可以对管理员信息进行增删改。

如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“考生登陆页面”。

c、考生信息管理:

成功登录的管理员可以一次性删除一个或者多个考生。

如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“考生登陆页面”。

d、考生成绩查询:

成功登录的管理员可以根据自己的意愿设置查询条件及其关键字进行动态查询。

如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“考生登陆页面”。

e、课程信息管理:

成功登录的管理员可以添加或删除一个或多个课程。

如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“考生登陆页面”。

f、套题信息管理:

成功登录的管理员可以添加或删除一个或多个套题。

如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“考生登陆页面”。

g、考试题目管理:

成功登录的管理员可以添加或删除一个或多个题目。

如果用户还没有注册就直接进入或者没有成功登陆就进入页面,将被连接到“考生登陆页面”。

h、退出后台管理:

退出到后台系统登陆页面。

图3-2清晰的展示了管理员后台的所有权限。

图3-2管理员权限图

3.2业务流程分析

在进行业务流程分析时,需要按照原有信息流动过程,逐个地调查分析所有环节的处理业务、处理内容、处理顺序和对处理时间的要求,弄清各个环节需要的信息、信息来源、流经去向、处理方法、计算方法、提供信息的时间和信息形态(报告、报单、屏幕显示)等。

业务流程分析可以帮助开发者了解该业务处理过程,发现和处理系统调查工作中的错误和疏漏。

业务流程分析是通过业务流程图来进行,即用一些规定的符号及连线来表示某个具体业务处理过程。

具体业务流程如图3-1所示。

图3-1业务流程图

第四章系统设计

4.1系统功能设计

系统设计是一个把软件需求转换成用软件系统表示的过程[9]。

通过对目标系统的分析和研究,做出了在线考试系统的总体规划,这是全面开发系统的重要基础。

在对在线考试系统全面分析调查的基础上,制定出在线考试系统的总体规划。

系统设计包括系统总体设计、系统详细设计、系统数据库设计、系统开发工具、开发技术和开发模式等。

从数据流图出发,对数据流图进行分析,得出的层次化的模块结构图。

在线考试系统前台功能模块图如图4-1所示。

图4-1在线考试系统前台功能模块图

在线考试系统后台功能模块图如图4-2所示。

图4-2在线考试系统后台功能模块图

4.2系统各模块的设计

4.2.1考生管理

考生通过注册成为该系统的用户,可以修改个人的基本信息,考生信息包括:

主键(数据库自动生成)、准考证号(系统自动生成)、用户名、密码、性别、加入时间、提示问题、问题答案、专业、身份证号(系统自动生成)10种属性,但无权注销。

下面从View(视图)、Controller(控制器)、Model(模型)讲解考生管理的具体设计。

View(视图):

由StudentForm和JSP共同负责,主要用于StudentForm和StudentAction之间的连接。

StudentForm实现了JSP表单提交时,使表单中的数据添装到Student的JavaBean中,表单中每一个字段都对应bean中一个属性。

当表单被提交时,bean的属性被自动添装,此外表单bean还支持对bean的属性进行自动数据验证和复位。

Controller(控制器):

由StudentAction负责,主要用于StudentAction和StudentDAO之间的连接。

StudentAction接收StudentForm中的数据以及一些请求中的参数并调用StudentDAO的业务实现类,完成有关试卷的处理请求和产生响应的任务.

Model(模型):

由StudentDAO负责,实现具体逻辑,操作数据库。

用到的方法有:

checkStudent、insert、query、update、seekPwd1、seekPwd2、delete。

4.2.2管理员管理

管理员可以添加、修改、删除管理员,管理员信息包括:

主键(数据库自动生成)、用户名、密码3种属性,还可以注销考生。

表4-1从视图、控制器、模型三个方面具体体现了考生管理模块的划分。

下面从View(视图)、Controller(控制器)、Model(模型)讲解管理员管理的具体设计。

View(视图):

由ManagerForm和JSP共同负责,主要用于ManagerForm和ManagerAction之间的连接。

ManagerForm实现了JSP表单提交时,使表单中的数据添装到Manager的JavaBean中,表单中每一个字段都对应bean中一个属性。

当表单被提交时,bean的属性被自动添装,此外表单bean还支持对bean的属性进行自动数据验证和复位。

Controller(控制器):

由ManagerAction负责,主要用于ManagerAction和ManagerDAO之间的连接。

ManagerAction接收ManagerForm中的数据以及一些请求中的参数并调用ManagerDAO的业务实现类,完成有关试卷的处理请求和产生响应的任务.

Model(模型):

由ManagerDAO负责,实现具体逻辑,操作数据库。

用到的方法有:

checkManager、insert、query、updatePwd。

4.2.3成绩管理

管理员可通过查询条件(准考证、考试时间、考试课程)进行模糊查询,也可以通过关键字进行精确查询,成绩项包括:

主键(数据库自动生成)、考生ID、课程ID、单项成绩、多项成绩、总分、考试时间7种属性。

下面从View(视图)、Controller(控制器)、Model(模型)讲解成绩管理的具体设计。

View(视图):

由StuResultForm和JSP共同负责,主要用于StuResultForm和StuResultAction之间的连接。

StuResultForm实现了JSP表单提交时,使表单中的数据添装到StuResult的JavaBean中,表单中每一个字段都对应bean中一个属性。

当表单被提交时,bean的属性被自动添装,此外表单bean还支持对bean的属性进行自动数据验证和复位。

Controller(控制器):

由StuResultAction负责,主要用于StuResultAction和StuResultDAO之间的连接。

StuResultAction接收StuResultForm中的数据以及一些请求中的参数并调用StuResultDAO的业务实现类,完成有关试卷的处理请求和产生响应的任务.

Model(模型):

由StuResultDAO负责,实现具体逻辑,操作数据库。

用到的方法有:

query(两个,一个通过stuID查询,一个通过StuResultForm模糊查询)。

4.2.4课程管理

管理员可以查询、添加课程信息,同时删除一个或多个课程。

课程项包括:

主键(数据库自动生成)、课程名称、加入时间3种属性。

下面从View(视图)、Controller(控制器)、Model(模型)讲解课程管理的具体设计。

View(视图):

由LessonForm和JSP共同负责,主要用于LessonForm和LessonAction之间的连接。

LessonForm实现了JSP表单提交时,使表单中的数据添装到Lesson的JavaBean中,表单中每一个字段都对应bean中一个属性。

当表单被提交时,bean的属性被自动添装,此外表单bean还支持对bean的属性进行自动数据验证和复位。

Controller(控制器):

由LessonAction负责,主要用于LessonAction和LessonDAO之间的连接。

LessonAction接收LessonForm中的数据以及一些请求中的参数并调用LessonDAO的业务实现类,完成有关试卷的处理请求和产生响应的任务.

Model(模型):

由LessonDAO负责,实现具体逻辑,操作数据库。

用到的方法有:

insert、query(两个,一个通过studentID查询,一个通过LessonForm查询)、delete。

4.2.5套题管理

管理员可以查询、添加套题信息,同时删除一个或多个套题。

套题项包括:

主键(数据库自动生成)、套题名称、所属课程、加入时间4种属性。

下面从View(视图)、Controller(控制器)、Model(模型)讲解套题管理的具体设计。

View(视图):

由Ta

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1