在线考试系统设计.docx
- 文档编号:24869320
- 上传时间:2023-06-02
- 格式:DOCX
- 页数:14
- 大小:123.84KB
在线考试系统设计.docx
《在线考试系统设计.docx》由会员分享,可在线阅读,更多相关《在线考试系统设计.docx(14页珍藏版)》请在冰豆网上搜索。
在线考试系统设计
在线考试系统的设计
内容提要
随着英特网的迅速发展和广泛普及,数字化、网络化、多媒体化的教学手段作为新型的教学与考核模式已逐步走进了教育机构[1]。
它们具有对于教育、教学过程来说极为宝贵的特性。
利用计算机技术实现无纸化考试,取代传统的纸质考核方式,是近年来计算机技术的一个非常活跃的应用领域。
在线考试系统的使用已成为近几年来的大势所趋[2]。
本论文首先分析了在线考试系统设计的需求,在系统需求以及在线考试系统的各个环节的基础上,对在线考试系统进行了概要设计以及详细设计,最后利用了程序开发集成工具MyEclipse给出了在线考试系统的实现。
使用到的软件架构模式是MVC模式,使用到的技术工具有Java程序语言,Oracle数据库,Tomcat服务器等。
前言
网络和信息快速发展的今天,很多国外的教育机构已经开设了远程教育,通过网络计算机远程的方式实现了异地教学授课,其中在线考试系统就是远程教学中很重要的组成部分。
随着国内远程教育教学需求的不断增加,就要求有更好、更完善的在线考试系统应用到远程教育当中去,这就给软件设计人员提出了更高的设计要求。
传统的考试方式是老师事先出题,学生用笔和纸在指定的时间和地点答题。
教师改卷的模式也很单一和枯燥,考试成本偏高。
随着数字化、多媒体化教学的发展,考试的手段和方式发生了很大的变化。
英特网的开放性和分布性的特点以及基于计算机的巨大计算能力使得传统的考试可以突破时间和空间的限制,通过网络来实现。
在线考试系统就是这样一种突破,它不仅为老师减轻了评卷,监考之苦,也为学生提供了快捷轻松的考试环境。
并且考试时间也更加灵活,这样既可以便于学生发挥出最佳的水平并通过网上评卷能及时反馈学生的掌握情况,也方便了老师的阅卷评分工作,可谓是一举三得[3]。
本文分析传统考试手段的各种不足,并且指出了纸质考试将会逐步被网络在线考试的形式所代替,同时进行了需求分析已经设计,提出在线考试系统的构成、设计原理、使用到的技术,最后说明了在设计过程中如何解决设计中出现的各种问题以及将来的工作展望。
一、系统需求分析
(一)系统角色需求分析
在线考试系统是以网络为基础,为教育机构和学生提供考试服务,同时它能自动判卷并且提供考试成绩作为教学参考的管理系统。
本论文设计的在线考试系统可以在高校中使用,系统主要针对系统管理员、老师及学生。
本系统能结合高校不同院系、不同专业科目等考试属性进行管理。
1.系统后台管理员。
系统后台管理员可以对在线考试系统进行维护,一些初始化信息,如添加课程,教师,学生,班级,为老师分配课程等。
维护包括添加、删除、修改三种基本的操作。
管理员还兼有老师和学生的功能,可以查询有关学生和老师的相关信息是最大权限的用户,拥有系统的所有功能的权限。
2、老师。
老师登录系统后,可以从自己所教课程中选择一门进行考试试题录入,并可以对自己录入的试题进行修改和删除等操作,但不能修改其他老师关于同一门课程的相关试题。
并可以添加所教课程的学生和查询自己所教班级学生的考试成绩信息。
3、考试学生。
学生登录后可以参加考试,选择一门课程后,系统会自动的抽出一套试题,开始考试后,系统进行倒计时,在规定的时间内考生如果没有交卷,系统会自动帮他交卷,并在考试结束、自动评卷后,学生能及时的查看到自己的考试成绩和答题情况,并可以查询自己以往的考试成绩信息。
(二)系统模块需求分析
在线考试系统可分为以下几个模块,这些模块是保证在线考试系统安全、高效运行的基础,按照角色的需求分为三大基本模块,每个角色下面分为若干个子模块。
如图1.1所示。
图1.1在线考试系统需求分析
以上对所要开发的在线考试系统的功能模块进行划分,对各个子模块进行需求分析,说明了各个模块所要实现的功能。
基于以上的这些需求分析才能更好更完善的进行系统的进一步分析、设计。
二、系统分析与设计
(一)系统总体概述
根据MVC三层架构,系统采用三层结构,如图2.1系统原理图所示:
图2.1系统总体结构
界面层,也叫表示层,是客户环境,负责从客户端采集信息并将它传送到服务层进行处理,客户接收该处理的结果并将其向用户呈现,该层的应用程序以Web浏览器为主,从Web站点上下载应用程序并执行,无需进行复杂的安装及配置[4]。
Web服务器为表示层提供Web服务,也可以为表示层和中间件之间的通信提供HTTP协议的支持,本项目所采用的Web服务程序为Apache的Tomcat,它作为一个WWW服务器[5],起到一个协调者的作用,一方面它通过HTTP协议与客户端进行交互,另一方面它还要负责解释执行JSP页面完成相应的服务。
所有的数据源构成了Web应用的数据层。
后端的数据层负责实际的数据存储和检索,它包含系统的数据处理逻辑,它的任务是接受客户对数据库操纵的请求,实现数据库查询、修改、更新等功能。
(二)设计思路
在线考试系统框架需要满足实用性、可靠性、安全性等系统性能,需要完成包括用户登录控制,在线考试,试题录入,评分系统,查询等相关功能
在整个框架开发过程中,采用Struts+JDBC+JSP的J2EE开发过程中最常用的框架。
其中Struts实现从视图层到业务逻辑层的跳转控制、表项参数传递等。
通过调用JDBC完成对数据库的连按操作[6]。
鉴于本次设计的框架并没有特别关注界面的设计,所以登录、控制操作等各个界面仅仅使用JSP(JavaServerPages)语言实现基本功能,没有增加具体的样式功能。
(三)设计结构
在线考试系统的整体框架设计分为三个层次:
视图层,业务逻辑层,数据接口层。
视图层即用户所能接触到的操作界面。
用户所做的各种输入以及后台返回的有信息都空过视图层呈现给用户,由于本次设计并没有特别关注前台表现,所
以对于JSP页面的美化,格式的控制等并没有投入太多的经历,而是将重点放在
了业务逻辑层。
业务逻辑层用来处理前胎传递的各种请求以及参数,从而进行相应的方法调
用、数据处理以及返回结果等功能。
所有的控制操作都是由业务逻辑层来完成的,
是的用户界面与数据库之间的交互分离开来。
这样的设计是符合MVC模式的思想
的[7]。
数据接口层用来创建、维护基于RBAC权限管理框架所要使用到的数据库表。
在本次设计中按照纵向分割的思想,将所有的数据交互处理都设计为Dao类,实
现各个模块之间的解耦,更加符合软件开发的基本原则。
本次设计选用的是Oracle数据库,而在数据库交互时选用JDBC来完成对数据的所有操作。
1)全局配置级详细设计。
JavaWeb项目最重要的是web.xml文件,配置Struts实现Struts.xml文件。
2)登录处理机以及页面设计。
主要包括登陆页面,使用JSP语言实现基本功
能,后台由Struts负责完成将用户名密码等信息传递给业务逻辑层,有LoginAction类实现用户登录以及鉴权等功能。
3)管理员操作设计。
主要包括用户控制界面实现对教师和学生用户的增加、删除、修改等。
使用JSP语言实现基本功能。
用户实体MnagerUserBean,以及和数据库进行交互的MnagerUserDao类。
4)教师操作设计。
主要色括试题的录入,查询,以及登录环节,使用JSP语言实现基本功能,角色实体TeacherBean,以及和数据库进行交互的TeacherDao类。
5)学生操作设计,主要色括登录,查询,以及考试环节,使用JSP语言实现基本功能主要包括权限实体StuBean,以及和数据库交互的StuDao类。
Struts作为一款优秀的基于MVC的框架,已经得到企业和开发人员的广泛认可,成为JavaWeb开发的首选框架。
Struts在View层和Controller层分别提供了丰富的UI表示和强大的转发支持,Model层优良的开放兼容性,提高了开发人员对数据模型处理的自由度。
下图是整合框架的示意图。
图2.2整合框架示意图
(四)设计概念和处理流程
图2.3基本处理流程
在管理端子系统中:
1)系统维护模块主要是针对管理员,学生,教师,班级等信息进行修改操作。
2)权限管理模块主要是对各使用者对系统的操作权限进行管理。
例如学生只能查看个人信息,选择试卷,答卷,查看成绩等;教师只能出题,组卷,判卷,查看学生成绩等;管理员可以全面对系统进行操作及数据维护等。
在教师端子系统中:
1)出题模块主要是由教师根据题型不同向题库中输入题目以及答案,方便组卷。
题目自动存入对应的数据库中。
2)组卷模块中可以由系统随机组卷,输入各题型的数量,分值,系统自动从题库中随机选择题目构成试卷;也可以由教师自主选择题目进行出题。
3)统计成绩模块中教师可以根据学生答卷情况对成绩进行统计,方便教师对学生答卷情况有直观了解,利于教学。
4)提交成绩模块由教师将学生综合成绩情况输入相关管理系统。
在学生端子系统中:
1)选择试卷模块由学生选择所要进行的考试试卷。
2)答卷模块显示学生所选试卷,供学生作答,选择判断直接对选项进行选择,主观题填写在相应的文本框中。
3)交卷模块会自动根据题库中的信息对学生的选择判断题进行判卷,减少了教师的工作量。
4)学生个人信息查询
学生请求查看自己的个人信息,系统根据学生登录时的信息,在学生信息表中找到符合条件的信息反馈给学生。
查看学生个人信息。
5)学生成绩查询
学生请求查看考试成绩,系统根据学生的基本信息,在学生成绩表中找到符合条件的信息反馈给学生。
6)学生修改密码
学生请求修改自己的密码,系统根据学生修改的信息,在学生信息表中插入修改的信息并提示学生修改结果。
7)学生考试
学生想考试系统请求考试,考试系统为学生查找该学生可以进行的考试科目和相对应的试卷,并把试卷信息反馈给学生。
学生进入考试状态开始答题,并保存试卷。
考试结束时,学生应提交试卷。
(五)数据库中表的设计
根据在线考试系统中各个模块的需求,分别设计以下几张数据库表。
并为他们分配字段。
管理员表
字段名
类型
说明
备注
AID
INT
管理员ID号
主键,自增,非空
A_Name
VARCHAR
管理员姓名
A_Psd
VARCHAR
管理员密码
教师表
字段名
类型
说明
备注
T_NO
VARCHAR
教工号
主键,非空
T_Name
VARCHAR
教师姓名
T_Psd
VARCHAR
教师密码
T_Major
VARCHAR
教师专业
课程表
字段名
类型
说明
备注
C_NO
VARCHAR
课程号
主键,非空
C_Name
VARCHAR
课程名
教师—课程关系表
字段名
类型
说明
备注
T_NO
VARCHAE
教工号
外键,非空
C_NO
VARCHAE
课程号
外键,非空
班级表
字段名
类型
说明
备注
Class_NO
VARCHAR
班级号
主键,非空
Class_Name
VARCHAR
班级名
Class_Major
VARCHAR
所属专业
班级课程表
字段名
类型
说明
备注
Class_NO
VARCHAR
班级号
外键,非空
C_NO
VARCHAR
课程号
外键,非空
试题表
字段名
类型
说明
备注
Test01_NO
INT
题号
主键,递增,非空
Test01_Content
VARCHAR
题干
Test01_Point
VARCHAR
知识点
Test01_Score
VARCHAR
分值
Option_A
VARCHAR
选项A
Option_B
VARCHAR
选项B
Option_C
VARCHAR
选项C
Option_D
VARCHAR
选项D
Test01_Answer
VARCHAR
答案
C_NO
VARCHAR
所属课程号
说明:
为了使系统评卷方便,准确,快速,本系统所包含的试题类型仅为单选,判断,填空。
由于不同题型的试题选项个数不同,因此,将不同类型的试题放不同的表中。
学生表
字段名
类型
说明
备注
S_NO
VARCHAR
学号
主键,非空
S_Name
VARCHAR
学生姓名
S_Psd
VARCHAR
学生密码
S_Major
VARCHAR
学生专业
S_Class
VARCHAR
学生班级
学生成绩表
字段名
类型
说明
备注
S_NO
VARCHAR
学号
外键,非空
C_NO
VARCHAR
课程号
外键,非空
Mark
FLOAT
成绩
3、系统非功能性概述
(一)J2EE技术
J2EE是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。
J2EE为搭建具有可伸缩性、灵活性、易维护性的商务系统提供了良好的机制:
1.高效的开发。
J2EE允许公司把一些通用的、很繁琐的服务端任务交给中间供应商去完成。
这样开发人员可以集中精力在如何创建商业逻辑上,相应地缩短了开发时间。
高级中间件供应商提供以下这些复杂的中间件服务:
状态管理服务让开发人员写更少的代码,不用关心如何管理状态,这样能够更快地完成程序开发。
持续性服务让开发人员不用对数据访问逻辑进行编码就能编写应用程序,能生成更轻巧,与数据库无关的应用程序,这种应用程序更易于开发与维护。
分布式共享数据对象CACHE服务让开发人员编制高性能的系统,极大提高整体部署的伸缩性[9]。
2.支持异构环境:
J2EE能够开发部署在异构环境中的可移植程序。
基于J2EE的应用程序不依赖任何特定操作系统、中间件、硬件。
因此设计合理的基于J2EE的程序只需开发一次就可部署到各种平台。
这在典型的异构企业计算环境中是十分关键的。
J2EE标准乜允许客户订购与J2EE兼容的第三方的现成的组件,把他们部署到异构环境中,节省了由自己制订整个方案所需的费用。
(二)Struts技术
Struts最早是作为ApacheJakarta项目的组成部分,项目的创立者希望通过对该项目的研究,改进和提高JavaServerPages、Servlet、标签库以及面向对象的技术水准。
Struts这个名字来源于在建筑和旧式飞机中使用的支持金属架。
这个框架之所以叫”Struts”,是为了提醒我们记住那些支撑我们房屋,建筑,桥梁,甚至我们踩高跷时候的基础支撑。
这也是一个解释Struts在开发Web应用程序中所扮演的角色的精彩描述。
当建立一个物理建筑时,建筑工程师使用支柱为建筑的每一层提供支持。
同样,软件工程师使用Struts为业务应用的每一层提供支持。
它的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间。
我们仍然需要学习和应用该架构,不过它将可以完成其中一些繁重的工作。
如果想混合使用Servlets和JSP的优点来建立可扩展的应用,Struts是一个不错的选择。
(三)JSP技术
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。
网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑[10]。
JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。
插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP与JavaServlet-样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。
目前较新的是JSPl.2规范,JSP2.0规范的征求意见稿也己出台。
JSP页面由HTML代码和嵌入其中的Java代码所组成。
服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。
JavaServlet是JSP的技术基础,而且大型酌Web应用程序的开发需要JavaServlet和JSP配合才能完成。
JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全[11]。
(四)MVC架构模式
MVC架构模式的产生早期的Web应用程序将数据库查询语句和像HTML这样的表示层代码混在一起,这样的后果就是数据处理、程序功能与修按时代码部分完全纠结在一起,是的程序的灵活性大大降低,因为一个很小的改动也会牵涉到大量的代码修改,增加了程序开发和维护的工作量和工作难度。
70年代,MVC(Model-View-Controller)莫式在Smalltalk的GUI设计中被提出。
MVC模式把数据处理、程序输入输出控制以及数据的展示分离开来,使他们不必卷入彼此的数据模型和方法中,MVC从根本上强制性的将它们分离开来,使得程序结构清晰和灵活起来[13]。
MVC模式包括三个部分:
模型(Model)、视图(View)和控制器(Controller),
它们分别对应于内部数据、数据表示和输入输出控制部分。
MVC模式的一般结。
结论
本系统可用于大多数课程的期末考试或练习,是一种通用性的考试系统。
本考试系统的开发目标是实现考试的命题、组卷、考试、评分、打印成绩一体化、自动化的在线考试,同时在性能上要具有伸缩性好、易使用、易维护、易扩展、安全性高等特点。
本系统功能考虑较为灵活、完善,界面操作简单友好,较易掌握。
系统提供的功能替代教师的大部分手工劳动,提高工作效率。
自使用以来较好地完成了考试任务,本系统题量大,类型较全面,考前模拟系统为学生提供了学习、掌握的工具,对提高教学有很大帮助。
网上考试系统经测试,达到了预期的目标,可以供多人进行远程的网上考试。
在课题开发过程中,通过学习和实践,我在此过程中受益匪浅,从理论设计到具体实现的整个过程中都凝结着知识的结晶。
通过本次系统的开发,使得我对编程语言、数据库、网页等相关知识的理解和应用达到了一个新的高度。
参考文献
[1]侯剑等.WEB网络考试系统实现技术研究.云南民族大学学报,2003,6(01).54
[2]王心慧在线考试系统的设计与实现.哈尔滨工程大学,2007.3:
63-64.
[3]殷大发.无纸化考试系统的研究和开发.计算机与现代化,2004,4(3):
82-84.
[4]李大生,崔杰.高等学校计算机基础知识无纸化考试研究.齐齐哈尔医学院学报,2003,24(01):
178-180.
[5]张爱文。
.基于JSP的在线考试系统的设计和实现[D]黑龙江工程学院2009.5
[6]段小焕,张士辉.在线考试系统的设计与实现[J].商业文化(学术版),2008,09:
53-56.
[7]文东戈.B/S结构网上考试系统的设计与实现[J].黑龙江科技学院学报,2007,12(4):
34-37.
[8]汪永明.基于B/S模式的在线考试系统[J].微机发展,2004,2(01):
11-12.
[9]毛布.基于Web技术的网络考试系统设计研究[J].西南民族大学学报(自然科学版),2008,04:
85-87.
[10]飞思科技产品研发中心.JSP应用开发详解[M].北京:
电子工业出版社,2000
[11]刘晓华.陈亚强等编著.J2EE应用开发详解.电子版.2000年8月.
[12]胡文生.基于JSP技术的在线考试系统的设计和实现[D]贵州商业高等专科学校2008
[13]萨师煊。
王珊。
数据库系统概论[M]黑龙江工程学院2009.5
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 在线 考试 系统 设计