在线考试系统论文.docx
- 文档编号:10041951
- 上传时间:2023-05-23
- 格式:DOCX
- 页数:34
- 大小:258.04KB
在线考试系统论文.docx
《在线考试系统论文.docx》由会员分享,可在线阅读,更多相关《在线考试系统论文.docx(34页珍藏版)》请在冰点文库上搜索。
在线考试系统论文
毕业论文
(届大学本科)
题目:
在线考试系统的设计与开发
学院:
计算机与电子信息学院
专业:
信息管理与信息系统
班级:
姓名:
学号:
指导教师:
20年3月26日
教务处印制
声明
本人郑重声明所呈交的论文是我个人在指导老师的指导下进行的研究工作及取得的研究成果,不存在任何剽窃、抄袭他人学术成果的现象。
我同意()/不同意()本论文作为学校的信息资料使用。
论文作者(签名)
年月日
摘要
为了提高教师的工作效率,把老师从烦琐的考试工作中解放出来,本文主要研究了如何设计和开发基于JSP的在线考试系统。
本文阐述了一个基于JSP技术的在线考试系统的体系结构和设计实现过程,系统采用的三层体系结构,JSP+JavaBean+SQLServer2000开发,即前端由JSP网页实现表现逻辑,中间使用JavaBean的组件实现系统内部复杂的业务逻辑,后端使用SQLServer2000数据库实现数据逻辑,并设计了在线考试系统的解决方案。
系统实现了三种权限用户信息的管理,题库的增加、修改、删除基本功能,实现了随机生成试卷,并管理试卷的发布状态。
实现了学生在线考试和成绩查询的功能。
关键字:
在线考试系统;JSP;三层体系结构
Abstract
Inordertoimprovetheteacher'sworkingefficiency,liberateteacherfromconvolutedworkabouttest,wedesignanddevelopanetworkexaminationsystemthatbasedonJSP.ThisarticlehasexplainedthesystemstructureanddesignprocessofanetworkexaminationsystemthatbasedonJSPtechnology.Thesystemusesthreesystemsstructures,anddevelopedbyJSP-JavaBean-SQLServer2000technology.Videlicet,atforegroundisrealizeddisplayinglogicbyJSPWebPages,inthemiddleusedJavaBeancomponentcompletethecomplicatedbusinesslogicinnersystem,atbackgroundusesSQLServer2000databasesaccomplishdatalogic,anddesignasolutionforanetworkexaminationsystem.Thissystemaccomplishedthreetypesuserinformation’smanagement.Andaccomplishedthequery,add,deleteandeditfunctionsofitembank.Andaccomplishedarrangingpaperrandomly,andmanagethepaper’spublishstate.Thesystemaccomplishedexamonlineandqueryscore.
Keywords:
Examinationsystemonnetwork;JSP;threesystemsstructures.
目录
绪论5
第1章系统开发背景及意义6
1.1系统开发背景6
1.2系统开发意义6
第2章在线考试系统需求分析7
2.1现状分析7
2.2可行性分析8
2.2.1经济可行性8
2.2.2技术可行性8
2.3设计目标9
2.4功能要求9
2.5系统开发环境配置10
2.6系统开发工具10
2.6.1开发语言—JSP(JavaServerPage)10
2.6.2Eclipse简介11
2.6.3Tomcat简介11
2.6.4MicrosoftSQLServer2000简介13
第3章在线考试系统设计14
3.1数据库设计14
3.1.1数据库需求分析14
3.1.2数据库概念结构设计15
3.1.3数据库逻辑结构设计16
3.2系统结构设计20
3.2.1页面模块化设计20
3.2.2MVC模式设计(Jsp+Servlet+JavaBean)21
第4章在线考试系统实现22
4.1系统各部分的实现方法22
4.1.1创建与数据库的连接22
4.1.2访问数据库的JavaBean23
4.1.3用户及管理员登录模块页面24
4.1.4系统主要模块页面28
4.1.5学生考试模块的实现页面30
4.1.6教师添加试题制作试卷模块的实现32
第5章系统测试35
第5章系统测试35
5.1什么是软件测试35
5.2软件测试的目标与方法35
5.3系统的不足和展望35
结束语37
致谢38
参考文献39
绪论
考试是检验教学效果的重要手段,也是促进学生学习的重要手段,是教学过程中的一个重要环节。
学生考试成绩的优劣,不但反映其对教学内容和应掌握知识的分析、理解、吸收、运用的能力,更反映教师对教学内容的把握和熟练程度。
传统的学校教学中,进行一场考试,要求老师编写试卷、印试卷、安排考试、监考、收集试卷、评改试卷、讲评试卷和分析试卷,这是一个繁杂的过程,需要大量人力、物力与时间的投入,已经越来越不适应学校信息化建设与现代教学的需要。
尤其在远程网络教学中,学生分布广,不易统一集中安排考试,给校方和学生带来了众多的不便。
而在线考试系统不仅减轻了在组织考试、评卷、成绩统计等方面所花费的人力和物力,并且突破了时间与空间的限制,不仅节省了资源,而且提高了评分的客观性、公正性和准确度,大大改善了考试工作的效率。
加上数据库技术的利用,大大简化了传统考试的过程,因此在线考试是电子化教学的不可缺少的辅助手段。
在当今信息时代,计算机技术与网络技术越来越广地应用于各个领域,改变着人们的学习、工作、生活乃至思维方式,也引起了教育领域的重大变革。
将计算机与网络技术应用于现代高等教育中,是现代高等教育发展的需要,也是改革教育模式,提高学校教学效果和教学效率、提高科研和管理水平的必要手段。
第1章系统开发背景及意义
1.1系统开发背景
随着计算机技术、网络技术迅速发展和高校校园网功能的日益完善,很多高校建立了基于校园网的网络信息管理平台,为提高教学管理水平提供了先进的管理手段。
目前,基于网络的在线考试系统己经成为现代考试方式的有力补充和发展。
相对于传统的笔试,网络在线考试不仅减轻了在组织考试、评卷、成绩统计等方面所花费的人力和物力,并且突破了时间与空间的限制,不仅节省了资源,而且提高了评分的客观性、公正性和准确度,大大改善了考试工作的效率。
1.2系统开发意义
很多学校学生的期末考试仍采用任课教师(个人或集体)考前出题的方式。
为解决学生压题,考前漏题,补(缓)考试题与正式考试试题题量及难度差异问题,教务管理部门通常要求教师同时出多套试卷,其题量与难度要求相同,并且要同时给出答案和评分标准。
这样做虽能解决一些问题,但给教师增加了很大的工作负担,若上下届学生的同一门课程由同一教师承担,则难免几届学生用相同几套试卷;若由不同教师任课出题,则上下届学生的成绩之间又不具有可比性。
若建立题库,每次考试前由题库中题目随机生成试卷,则可较好地解决考教分离的问题,也可将广大教师从每学期末繁重的命题工作中解放出来。
近年来,部分学校陆续开发了一些基于微机的题库系统,并作为成果向其它学校推广,但这些题库一般都是结合本校具体情况,针对单一课程的小型题库,甚至某些学校购得的题库系统中的题目本身是不可维护的,即使题目已不适合自己的学生考试使用,也无法更新题库中的题目。
为解决题库系统中存在的这些问题,通过研究几种不同的网上系统,经充分的比较和分析考虑,给出了一个较为理想的题库系统解决方案,并结合当前比较使用的B/S结构开发一个功能完备的在线考试系统。
第2章在线考试系统需求分析
2.1现状分析
传统的考试方法要求组织者提前命题试卷,然后约定一个统一时间,让所有考生到考场里进行考试。
这种模式如图2-1所示:
编辑考题
印刷大量试卷
安排考场,时间,监考人员
学生集体考试
阅卷,统计成绩
图2-1传统考试模式
这种模式存在有较多的问题:
命题:
由于考试要求统一进行,所有考生都考同样的一份试卷,所以试卷的命题工作便一定得非常谨慎小心,试题太难或太容易,都达不到考试目的,尤其是对于一个大规模的考试,(比如计算机等级考试,英语四,六级考试等),如何正确把握试卷的难度,一直都是让命题教师最为头痛的问题之一。
而如何不在考试之前使命好的试题泄漏出去,也是组织者费尽心思。
试卷印刷:
对于大规模的考试,试卷印刷费工费时,成本高,对纸张资源也是一种浪费。
对于涉及地域范围较广的考试(如英语四,六级考试),还要考虑试卷大的长途运送费用。
在考试的印刷和运输过程中同样有试题泄漏出去的问题,任何一个环节出了问题,都可能使前面有的工作付诸流水。
考场的安排:
监考人员的培训与管理。
对于大规模的考试,尤其是到了考试密集期(如期末,期中)。
诸多学科的考试都要陆续开始的时候,对于教室资源和教师数量相对紧张的学校,如何安排考场,调配监考人员,是一件相对繁琐而又复杂的事情。
如果考试再涉及到不同地域之间的同步,如英语四,六级的考试,还要考虑更多的问题。
进行考试:
由于同一次考试的试卷相同,要杜绝考生作弊是一个普遍的难题,因此,历届组织考试的人动了很多脑筋,如分AB卷,加强监考,加重对作弊者的惩罚程度等,但这些都没能从根本上杜绝作弊。
不同地域监考的严格程度,考试时问控制的严格程度,也很难达到统一。
过多人为因素的加入,也使得考试的公正性下降。
判卷:
考试结束后,采用人工判卷比较容易出错,并可能出现人为造成的不公正现象。
2.2可行性分析
可行性分析也称为可行性研究,即是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、管理的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。
可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。
该系统的可行性分析包括以下几个方面的内容。
2.2.1经济可行性
主要是对项目的经济效益进行评价,利用计算机来实现网上考试以成为适应当今教学管理的方式。
开发一套能满足在线考试系统的软件是十分必要的,实现试卷管理和试卷生成自动化,在减少由于认为失误而早成损失的同时,也可以使教师减少工作量。
本系统在经济上是可以接受的,并且本系统实施后可以显著提高考试效率,有助于学院完全实现网络化管理。
所以本系统在经济上是可行的。
2.2.2技术可行性
技术上的可行性分析主要分析技术条件是否能顺利完成开发工作,硬、软件能否满足开发者的需要等。
软件方面,网络化考试需要的各种软件环境都已具备,数据库服务器方面则有SQLServer2000,均能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。
其灵活性、安全性和易用性为数据库编程提供了良好的条件。
因此,系统的软件开发平台已成熟可行。
硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。
2.3设计目标
在线考试系统的总体目标:
1.在线考试系统可以帮助教师完成一个考试从题目设计,考试安排,考试实施,考卷批改到分数计算总结的所有工作。
2.所有的考试数据和其它数据库需要一种主流的方式进行存储和管理,例如使用数据库技术。
3.考试数据的存放和处理必须对考试保密,需要一定的安全性保障。
4.题目最好有一定的稳定性和随机性。
稳定性可以保证每一次考试对每一个考生是公平的,随机性可以避免作弊的发生。
5.考试的部分客观题在考生考完之后系统就能自动评分,并保存考生的主观题答案。
2.4功能要求
系统应该具备的基本功能:
用户类别:
登录系统的身份定为三种,一是管理员,二是老师,三是学生,只有被授权的用户才可以使用本系统的资源。
权限管理:
系统需要经过有效的身份验证可以登录。
用户的身份不同,使用的系统资源也不同。
考生只可以参加在线考试;教师可以在线制作试卷,控制考试、成绩查询、添加试题、阅卷等。
管理员可添加系系部、教师、专业、科目信息、查询修改管理员信息及审批试卷、查询考生成绩。
在线考试功能:
考生输入学号密码登陆系统后,选择对应的试卷可进行考试。
答题中,有倒计时的功能,考试结束时还没提交就自动交卷,系统将自动对客观题进行评分。
在线制作试卷:
教师、管理员可在线制作试卷,可设定试题的类型、分值,但教师制作试卷后必须要由管理员审核才能考试。
控制考试功能:
可设定每次的考试时间。
考生管理功能:
可注册新增学生用户,同时查看考生及班级考生的信息。
考生成绩查询功能:
提供考生各科目成绩的详细查询。
试卷审批功能:
只有管理员有此权限。
教师制作试卷完毕,只有经过管理员审批后才能发布,发布后学生才能开考。
除了实现上述功能以外,在线考试系统还应该具有友好、简洁的界面,安全性要高,稳定性要强。
2.5系统开发环境配置
选择微软平台作为主导,一方面考虑目前微软的飞速发展,越来越多的企业在规划内部网络时,将微软平台作为首选方案;令一方面从技术角度来讲,微软平台上的应用无论是在开发上,还是在软件的部署上都是非常容易,而且性能优越。
具体如下:
1.开发工具:
MyEclipse6.0
2.辅助开发工具:
Dreamweaver8
3.数据库:
SQLSever2005
4.服务器:
ApacheTomcat6.0
5.运行环境:
安装JDK1.6支持Java运行。
6.技术:
前台网页的设计采用JSP技术制作。
负责响应用户对业务逻辑的请求并根据用户的请求行为,决定将哪个JSP页面发送给客户由servlet处理,JavaBean则负责数据的处理。
2.6系统开发工具
本系统是基于JSP+SQLSever2000数据库技术实现的,现对JSP技术和SQLServer2000数据库作简要的介绍。
2.6.1开发语言—JSP(JavaServerPage)
JSP页面由HTML代码和嵌入其中的Java代码所组成。
JavaServlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。
JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的等特点。
JSP的技术的优势:
一次编写,到处运行。
在这一点上Java比PHP更出色,除了系统之外,代码不需要做任何更改。
系统的多平台支持。
基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。
相比ASP/PHP的局限性是显而易见的。
JSP技术是用Java语言作为脚本语言的。
Java语言是成熟的、强大的、易扩充的编程语言。
高效性与安全性。
JSP在执行前先被编译成字节码,字节码由Java虚拟机解释执行,比源码解释效率高。
可维护性。
由于JSP技术是一种开放的、跨平台的结构,因此Web服务器、平台及其他组件能很容易升级或切换,且不会影响JSP基本的应用程序。
多样化和功能强大的开发工具支持。
Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。
2.6.2Eclipse简介
Eclipse是替代IBMVisualAgeforJava(以下简称IVJ)的下一代IDE开发环境,但它未来的目标不仅仅是成为专门开发Java程序的IDE环境,根据Eclipse的体系结构,通过开发插件,它能扩展到任何语言的开发,甚至能成为图片绘制的工具。
目前,Eclipse已经开始提供C语言开发的功能插件。
更难能可贵的是,Eclipse是一个开放源代码的项目,任何人都可以下载Eclipse的源代码,并且在此基础上开发自己的功能插件。
也就是说未来只要有人需要,就会有建立在Eclipse之上的COBOL,Perl,Python等语言的开发插件出现。
同时可以通过开发新的插件扩展现有插件的功能,比如在现有的Java开发环境中加入Tomcat服务器插件。
可以无限扩展,而且有着统一的外观,操作和系统资源管理,这也正是Eclipse的潜力所在。
Eclipse提供了强大的个人版本管理机制,每一次被保存的更改都可以得到恢复。
而且可以精确到每一个方法的版本恢复。
操作也十分方便,在任何一个能看到所要操作文件的观察窗口中,例如资源浏览窗口,选中该文件,点击右鼠标键,选择Comparewith或Replacewith,如果是恢复已经被删除的方法则可以选择Addfromlocalhistory,之后相应的本地历史记录就会显示出来,按照你的需求找到相应的版本就可以了。
强大的个人版本管理功能为程序员提供了更多的信心:
只管编下去,任何不小心的错误都可以恢复。
2.6.3Tomcat简介
Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache,Sun和其它一些公司及个人共同开发而成。
由于有了Sun的参与和支持,最新的Servlet和JSP规范总能在Tomcat中得到体现。
Tomcat被JavaWorld杂志的编辑选为2001年度最具创新的Java产品,可见其在业界的地位。
与传统的桌面应用程序不同,Tomcat中的应用程序是一个WAR(WebArchive)文件。
WAR是Sun提出的一种Web应用程序格式,与JAR类似,也是许多文件的一个压缩包。
这个包中的文件按一定目录结构来组织:
通常其根目录下包含有Html和JSP文件或者包含这两种文件的目录,另外还会有一个WEB-INF目录,这个目录很重要。
通常在WEB-INF目录下有一个web.xml文件和一个classes目录,web.xml是这个应用的配置文件,而classes目录下则包含编译好的Servlet类和JSP或Servlet所依赖的其它类(如JavaBeans)。
通常这些所依赖的类也可以打包成JAR放到WEB-INF下的lib目录下,当然也可以放到系统的CLASSPATH中,但那样移植和管理起来不方便。
在Tomcat中,应用程序的部署很简单,你只需将你的WAR放到Tomcat的webapp目录下,Tomcat会自动检测到这个文件,并将其解压。
你在浏览器中访问这个应用的JSP时,通常第一次会很慢,因为Tomcat要将JSP转化为Servlet文件,然后编译。
编译以后,访问将会很快。
Tomcat不仅仅是一个Servlet容器,它也具有传统的Web服务器的功能。
但与Apache相比,它的处理静态Html的能力就不如Apache。
我们可以将Tomcat和Apache集成到一块,让Apache处理静态Html,而Tomcat处理JSP和Servlet。
这种集成只需要修改一下Apache和Tomcat的配置文件即可。
Tomcat也是一个JSP/Servlet容器,它是在SUN公司的JSWDK(JavaServerWebDevelopmentKit)基础上发展起来的一个JSP和Servlet规范的标准实现。
Servlet是一种运行在支持Java语言的服务器上的组件,Servlet容器的作用是负责处理客户请求。
当客户请求来到时,Servlet容器获取请求,然后调用某个Servlet,并把Servlet的执行结果返回给客户。
Tomcat的三种工作模式:
独立的Servlet容器(Tomcat的默认模式),进程内的Servlet容器、进程外的Servlet容器。
通过嵌套关系可以知道3个组件的范围有如下的关系:
Engine>Host>Context
Engine组件下可以包含多个Host组件,它为特定的Service组件处理所有客户请求。
一个Host组件代表一个虚拟主机,一个虚拟主机中可以包含多个Web应用(Context组件)。
Context组件代表一个Web应用。
2.6.4MicrosoftSQLServer2000简介
MicrosoftSQLServer2000是微软公司推出的一个全面的、集成的、端到端的数据库。
它为企业中的用户提供了一个安全、可靠和高效的平台用于企业数据管理和商业智能应用。
此外,MicrosoftSQLServer2000还提供了JDBC驱动程序的下载,使得其与JSP页面的连接变得简单易行。
其中,JDBC是一种用于执行SQL语句的JavaAPI(ApplicationProgrammingInterface)。
通过使用JDBC,开发人员可以很方便地将SQL语句传送给几乎任何一种数据库。
将Java和JDBC结合起来将使程序员只须写一遍程序就可让它在任何平台上运行[10]。
在MicrosoftSQLServer2000系统中,数据库的管理采取了先进的动态管理机制,数据库的大小可以随着数据量的变化而缩小或者扩大。
另外,用户数据都是非常重要的和保密的,这些数据存储在MicrosoftSQLServer2000系统中有绝对的安全性保障,有完善的用户账户策略和许可机制,只有经过授权的用户才能访问系统,并且执行相应的操作和访问允许访问的数据。
XX的用户既不能执行相应的操作,也不能访问数据库中的相应数据[4]。
第3章在线考试系统设计
3.1数据库设计
在对在线考试系统数据库部分进行设计的过程中,通过对系统功能进行需求分析得到系统的基本信息表,绘制系统业务流程图和系统数据流程图,分析得到数据字典;在概率结构设计阶段通过对需求阶段得到的用户需求抽象得到数据库关系模型的E-R图;在逻辑结构设计阶段得到数据库的关系模式并绘制信息表。
详细设计过程如下介绍。
3.1.1数据库需求分析
需求分析是设计数据库的起点,需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。
3.1.1.1系统基本信息
综合以上分析,要实现上面的所有功能模块,数据库共要设计十个表,它们分别是:
科目表、班级表、系别表、专业表、试卷信息表、学生表、学生成绩表、学生答题试卷信息表、教师表、题库表。
3.1.1.2系统层次图
根据所要实现的功能和用户权限的设置。
系统总体的层次图如下图3-1所示:
图3-1系统层次图
3.1.1.3系统数据流程图
系统数据流程图如下图3-2所示:
图3-2数据流程图
3.1.2数据库概念结构设计
概念设计阶段主要是将需求分析阶段得到的用户需求抽象为信息结构(概念模型)的过程,它是整个数据库设计的关键,包括概念模型设计和新系统流程两个阶段。
在需求分析阶段所得到的应用需求应该首先抽象为信息世界的结构,才能更好地、更准确地用某一DBMS实现这些需求。
概念数据模型独立于具体的数据处理的细节和数据库管理系统。
这次设计仍
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 在线 考试 系统 论文