基于Web的在线考试系统的开发与实现毕业设计Word格式.docx
《基于Web的在线考试系统的开发与实现毕业设计Word格式.docx》由会员分享,可在线阅读,更多相关《基于Web的在线考试系统的开发与实现毕业设计Word格式.docx(42页珍藏版)》请在冰豆网上搜索。
![基于Web的在线考试系统的开发与实现毕业设计Word格式.docx](https://file1.bdocx.com/fileroot1/2022-12/16/95cb44b0-eb60-433b-9afb-349e251dc8df/95cb44b0-eb60-433b-9afb-349e251dc8df1.gif)
在线考试系统极大地提高了教学的灵活性,现在在许多领域已经有了广泛的应用。
最有影响的案例就是ETS(美国教育考试中心)举办的GRE(美国研究生入学考试)的计算机化考试,它使考试由原来的每年只能有两次参加考试的机会变成了每个工作日都可以参加的考试。
本论文讲述了一个基于Web的在线考试系统的大体实现过程,该系统基本上可以满足学校及现代信息化企业的内部考试要求,可以实现学校或企业的低成本投入、高效率办公的宗旨。
例如:
一个学校或公司如果使用了本系统,老师和领导即使在外地出差也可以通过访问Internet轻松设置审批考试`,考试结束后也不要传统的繁琐的阅卷过程,极大地提高了办公效率。
考试的题型可以都是标准化客观题目,对于其他类型的题目只要在本文的基础上稍加修改即可。
利用JSP技术开发的基于Web的多用户在线考试系统[2],它具有用户登录、多用户同时在线考试、动态随机出题、考试时间控制、自动判卷、题库维护、用户管理、分数管理等功能。
本系统主要由管理模块和在线考试模块组成。
随机选题及自动评分的实现是本系统的关键。
1.2系统开发的目的和现实意义
在当今信息时代,计算机技术与网络技术越来越广地应用于各个领域,改变着人们的学习、工作、生活乃至思维方式,也引起了教育领域的重大变革。
将计算机与网络技术应用于现代高等教育中,是现代高等教育发展的需要,也是改革教育模式、提高学校教学效果和教学效率、提高科研和管理水平的必要手段。
随着计算机网络在生产、生活、科技、教育中的普及,传统的考试出卷、答卷方式以及学绩管理正发生着巨大的变革,因此如何使考试过程变得方便、高效、快捷、公正,是现代教育的一个重要课题。
目前的一个发展趋势是采用大规模试题库的计算机网络考试模式。
在线考试系统是传统考场的延伸,它可以利用网络的无限广阔空间,随时随地对学生进行考试,加上数据库技术的利用,大大简化了传统考试的过程。
因此在线考试系统是电子化教学不可缺少的一个重要环节。
有趋势表明,考试的标准化、计算机网络化已当今考试的发展方向,当前国际上许多考试认证,例如GRE、CISCO,其出题、答卷以及评分都是在计算机上完成的。
无纸化的考试形式有着其科学、及时、准确、公平等优点,具有传统考试形式无法替代和比拟的优势。
(1)实现无纸化考试。
考试结果直接提交并存储在服务器上,无需上任何纸张。
考卷也是实时下载显示在考生机器的屏幕上,当考试结束后自动批阅试卷,显示成绩。
(2)安全性好:
系统通过对网络通讯数据的加密,采用系统随机产生试卷以及老师手工筛选、修改的组卷方式取代简单的题库抽题方式,能更加科学的组织试卷对考生进行考核。
试题顺序的随机性能够有效地防止考生的舞弊行为;
同时采用考试监控系统和考生身份验证系统,更有效的保证了考试的安全性和公平性。
(3)有效的监考。
系统拒绝其他考生用相同的学号注册进行考试,保证考生的唯一性;
系统拒绝时间已经用完的考生再注册进行考试,以保证考试的有效性;
监考人员可在任意一台联网的机器进行监控,查询考生的考试状态等信息。
(4)通用性和可扩展性佳:
题库导入可以将第三方试题库转换成系统识别的试题库格式,有效地增强了试题库的扩充能力。
较为严格地按模块划分,为扩展和完善留下了余地。
(5)自动化程度高:
实现了组卷自动化、阅卷自动化和成绩分析统计自动化。
(6)界面设计合理,使用方便:
体贴的考试界面设计将使考生作起来更方便。
电子试卷提供了自动记时、纵观全卷、即选即作、试题标记等友好的界面设定,加上计算器和草稿纸的设计,让考试的过程更流畅。
所有的一切完全从考生的角度出发,力争提供最优化的考试环境。
(7)考试/练习终端采用键盘鼠标输入与手写输入方式相结合进行答题,加快了考生的答题速度。
(8)快速、透明的自动阅卷。
1.3系统设计思想及实施方案
本系统主要采用JSP语言进行开发维护[3],用PhotoshopCS4进行前台的设计与美化,后台采用机动灵活的SQLserver2005建立数据库[10],并在设计过程中采用系统框架实现系统的构架,使用JDBC的方式对数据库进行链接,编辑过程中使用SmartServerV-13作为系统运行服务器,在IE中对系统进行浏览,并且采用Vbscript和Javascript脚本语言对系统的前台数据的操作,整个系统在各项技术和开发工具的配合下相得益彰,充分体现出了JSP在开发软件中的优势。
1.4可行性分析
可行性研究[7]是一个系统开发前最关键的部分,它决定着系统是否要开发和开发的意义。
可行性研究的主要任务是对新系统是否能够实现和值得实现等问题作出判断,避免在花费了大量的人力和物力之后才发现系统不能实现或新系统投入使用后没有实际意义而引起浪费。
内容包括:
资源可行性、时间可行性、技术可行性、经济可行性、社会因素方面的可行性。
1.4.1资源可行性
资源可行性是指完成本系统需要的各种设施,现在所具备计算机(WindowsXP操作系统,内存265MB,网络系统良好,所需资料随时可以搜索、下载)。
Eclipse6.0、PohoshopCS4等安装文件和SmartServerV-13服务器程序并且有SQLServer2005数据库程序,以上可以达到资源可行性的要求。
1.4.2时间可行性
本次毕业设计2011年2月已经开始准备,到答辩时间百十余天,在现有的理论知识和部分实践的基础上能够完成对本系统的开发。
1.4.3技术可行性
技术可行性是指设备条件、技术解决方案的实用性和技术资源的可用性的度量。
由于在大学期间,开过JSP、JAVA程序设计语言和SQLsever2000以及数据库概论等课程,因此本系统采用JSP/SQLServer来设计,可以达到技术的可行性。
1.4.4经济可行性
经济可行性是希望以最小的成本开发具有最佳的经济效益的软件产品,主要进行投资及效益的分析。
本系统规模不大,运用的人力、物力、财力相对也较小,因此开发本系统的成本相对较低。
总而言之,本系统能获得良好的收益/投资比,可达到经济可行性。
1.4.5社会的可行性
社会可行性主要从法律、用户等方面分析可行性。
本系统是为了解决传统的考试方式带来的问题而开发的,也是为广大学者而服务的。
因此不管从法律还是用户方面都是可行的。
1.5本文内容安排
本文主要研究内容是基于Web的在线考试系统的开发与实现,主要内容包括如下三点:
(1)深入分析了国内外考试的现状及发展趋势,并针对我国传统考试方式存在的问题,设计出了具有交互、及时、安全的在线考试系统。
(2)深入对系统进行了需求分析、可行性研究与系统设计。
(3)在详细设计的基础上,进一步对系统进行了编码实现。
论文共分为六部分:
Ø
绪论介绍课题的相关背景、研究现状以及论文研究的主要内容及意义。
需求分析介绍了本系统的可行性研究、需求分析及相关关键技术。
概要设计系统的概要设计(主要功能模块、数据库概念结构和逻辑结构设计、数据库物理结构设计)
详细设计介绍了本系统的详细设计(各个模块的实现及数据库的连接)。
系统测试介绍系统测试案例和测试结果。
使用说明介绍系统运行环境的要求和用户操作提示。
2系统需求分析
经过对本系统的调查研究,本系统的功能模块主要分为以下两个部分:
前台考试部分和后台管理部分。
2.1系统功能分析
2.1.1系统功能模块
前台考试部分:
包括查看个人信息、开始考试、查看个人成绩三部分。
后台管理部分:
包括用户管理、题库管理、试卷管理、成绩管理四部分,其中用户管理包括添加考生、学生列表;
题库管理包括添加试题、试题列表、导入试题;
试卷管理包括试卷列表、试卷模板、生成试卷。
2.1.2系统界面设计分析
本系统不是一种娱乐性的系统而是在线考试系统,所以系统界面不易太花哨,要设计成让人一目了然的效果。
所以本系统在考虑到诸多问题之后,对各个方面的问题采取了一定的措施:
(1)用户友好性:
用户操作使用系统时主观操作的复杂性低。
本系统针对系统的友好性,把系统设计的尽量减少用户的键盘操作,进而减少用户的操作。
(2)计算机启动的交互系统:
一般具有良好的可学习性和可使用性,用户启动的交互系统要具有交互能力强、灵活性高、运行速度快等特点。
(3)用户需求:
用户需求包含功能需求和使用需求两方面,功能需求已经说了,使用需求主要为:
系统设计必须考虑到人使用计算机时的身体、心理要求,同时能让用户舒适地使用计算机完成他们的工作。
2.2系统性能分析
1、时间特性要求
管理功能操作:
小于3秒
添加处理:
查找操作:
不超过3秒
2、可靠性
时间:
该系统需长期持续正常工作。
环境:
该系统只要是满足CPU在PentiumIV2Ghz,内存256M,硬盘50.0MB剩余空间以上即可正常运行。
3、输入输出要求
用户输入的信息都是通过键盘来实现的,输出信息为系统处理后的显示信息。
4、数据处理能力要求
系统运行期间可根据服务器的承受能力的不同,处理相应的用户操作,本系统的处理能力与硬件信息有关。
5、故障处理要求
该系统所选择设计的模块能够提示用户所进行的不当操作或者是当前处理信息时所遇到的错误,提醒用户进行适当的操作。
6、其他专门要求
灵活性:
能够正确方便的进行模块的更新和根据用户的需求进行修改。
扩展性:
能够根据信息的变迁、改动进行模块的延伸。
2.3数据库分析
2.3.1系统数据库分析
根据系统的平台需求,结合实际的需求分析,并对各个模块加以分析综合,确定设计八张表[8]:
用户信息表、学生信息表、学生成绩信息表、考试试卷信息表、试卷模板表、试卷内容表、题库表、题库类型表,各数据表及功能如下。
1.用户信息表dbo.admin
用户信息表用于存放用户的基本信息。
用户信息数据表结构如表2.1所示。
表
2.1dbo.admin
字段名
数据类型及长度
说明
备注
id
int
编号
主键(自动增长)
adminName
nvarchar(30)
用户姓名
不允许为空
adminPwd
nvarchar(20)
用户密码
2.学生信息表dbo.student
学生信息表主要用于存放学生用户的基本信息。
学生信息表结构如表2.2所示。
2.2dbo.student
学生编号
stuNumber
学生学号
stuName
nvarchar(10)
学生姓名
stuPwd
nvarchar(6)
学生密码
stuSex
nvachar
(2)
学生性别
允许为空
stuClass
学生班级
stuRegDate
smalldatetime
注册日期
3.考试成绩信息表dbo.score
考试成绩信息表主要用于存放学生用户的考试成绩。
考试成绩信息表结构如表2.3所示。
2.3dbo.score
试卷id
paperId
试卷编号
Score
money(4,1)
学生成绩
examDate
考试日期
4.考试试卷信息表dbo.exam
每次考试之前,由管理员(教师)创建本次考试的试卷,试卷信息被保存在试卷信息表中。
试卷编号组成:
两位试卷类型(网络试卷:
NW;
软件试卷:
SF)+年月日+5位随机码。
如:
网络:
NW2010041988888或软件:
SF2010041977777
考试试卷信息表结构如表2.4所示。
2.4dbo.exam
主键,递增
type
varchar(20)
试卷类型
title
标题
estimateCount
判断题数量
estimateScore
numeric(2,1)
判断题每题分数
choiceCount
选择题数量
choiceScore
选择题每题分数
mangchoiceCount
多选题数量
mangchoiceScore
多选题每题分数
doTime
答题时间
setupDate
设置考试日期
5.试卷模板表dbo.examTemplate
试卷模板表主要保存生成试卷的基本条件。
试卷模板表结构如表2.5所示。
2.5dbo.examTemplate
主键(自动增长)
modelName
名称
Ext_Fill_Count
填空题数量
Ext_Fill_Score
填空题每题分数
6.试卷内容表dbo.examContent
试卷内容表负责存储试卷的题目信息。
试卷内容表结构如表2.6所示。
2.6dbo.examContent
tkId
题目编号
7.题库表dbo.tk
存储题目信息的题库表。
题目级别:
主要指题目是属于初级、中级、还是高级。
题库表结构如表2.7所示。
2.7dbo.tk
Type
题目类型
不允许为空
[level]
题目等级
tkType
科目类型
question
nvarchar(MAX)
题目内容
answer
正确答案
date
添加题目日期
8.题库类型表dbo.tkType
存储题目信息的题库类型。
题库类型表结构如表2.8所示。
2.8dbo.tk
typeName
2.3.2数据库结构分析
该系统的开发采用SQLServer2005数据库[10],在数据库中建立了八张表,各表都有数据结构化、最低冗余度、较高的程序与数据独立性、易于扩充、易于编制应用程序等优点,系统在运行过程中通过与各自不同的主键进行匹配完成相关操作,其中在管理员信息表中设置“身份”这一字段,分别用“管理员”和“学生”进行区分用户权限。
2.4系统开发环境
2.4.1硬件、软件平台
鉴于以上对系统的分析,可以得出开发运行本系统所要求的硬件平台主要为:
(1)操作系统:
WindowXP;
(2)CPU:
PⅢ以上;
(3)内存:
256MB以上;
(4)开发工具软件:
Eclipse6.0、PhotoshopCS4;
(5)数据库程序:
SQLServer2005;
(6)服务器:
SmartServerV-13。
2.4.2系统开发技术描述
本系统的管理界面采用JSP中的MVC分层技术[12],MVC是三个单词的缩写,分别为:
模型(Model),视图(View)和控制Controller)。
MVC模式的目的就是实现Web系统的职能分工。
在对服务器端和客户端操作中使用Vbscript和Javascript脚本语言,使能在客户端解决问题在客户端解决,减轻服务器的负担,提高系统的速度。
在对与数据库的交互操作中,使用SQL检索技术。
在系统的代码实现过程中,把代码模块化,代码间相互调用,这样便于系统的扩充系统代码维护和代码重用。
3系统概要设计
3.1总体结构设计
3.1.1系统HIPO图
根据认真详细的系统需求分析[7]可以得出开发本系统的结构,本系统的HIPO图为:
图3.1系统