毕业论文-在线考试系统设计_第1页
毕业论文-在线考试系统设计_第2页
毕业论文-在线考试系统设计_第3页
毕业论文-在线考试系统设计_第4页
毕业论文-在线考试系统设计_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2007级学生毕业设计题目在线考试系统姓名XXX专业软件技术班级软件技术指导教师XXX2010年04月18日设计说明书论文摘要随着网络技术逐渐渗入社会生活各个层面,传统的考试方式必将面临着变革,而WEB在线考试则是一个很重要的方向。基于WEB技术的在线考试系统的试卷可以根据题库中的内容即时生成,可避免考试前的压题;而且可以采用大量标准化试题,从而使用计算机判卷,大大提高阅卷效率;还可以直接把成绩送到数据库中,进行统计、排序等操作。所以现在较好的考试方法为在线考试,试题内容放在服务器上,考生通过姓名、准考证号码和口令进行登录,考试答案也存放在服务器中,这样考试的公平性、答案的安全性可以得到有效的保证。因此,采用WEB在线考试方式将是以后考试发展的趋势。所以,我的毕业设计题目就是在线考试系统。可以让莘莘学子们用计算机就能考试答题,让考试变得轻松与简单。关键词考试,在线,在线考试系统,数据库ABSTRACTASTHENETWORKTECHNOLOGYANDGRADUALLYINFILTRATEDINTOALLLEVELSOFSOCIALLIFE,THETRADITIONALTESTMETHODISBOUNDTOFACEACHANGE,WHILETHEWEBONLINEEXAMISAVERYIMPORTANTDIRECTIONWEBBASEDONLINEEXAMINATIONSYSTEMOFPAPERSBASEDONTHECONTENTSOFTHEITEMBANKREALTIMEGENERATION,CANAVOIDTHEPRESSUREBEFORETAKINGTHETESTQUESTIONSANDALARGENUMBEROFSTANDARDIZEDEXAMINATIONQUESTIONSCANBEUSEDTOGRADERSUSINGCOMPUTERSHASGREATLYENHANCEDMARKINGEFFICIENCYALSOBESENTDIRECTLYTORESULTSINTOTHEDATABASE,STATISTICS,SORTINGANDOTHEROPERATIONSSONOWABETTERTESTINGMETHODSFORONLINEEXAMINATIONS,EXAMINATIONQUESTIONSONTHECONTENTSOFTHESERVER,CANDIDATESHAVEPASSEDTHENAME,TICKETNUMBERANDPASSWORDTOLOGIN,THEEXAMINATIONANSWERSAREALSOSTOREDINTHESERVER,SOTHATTHEFAIRNESSOFTHEEXAMINATION,THEANSWERCANBETHESAFETYOFAREEFFECTIVELYGUARANTEEDTHEREFORE,THEUSEOFWEBLINETESTMETHODWILLBETHEDEVELOPMENTTRENDOFTHEFUTUREEXAMINATIONSSO,IGRADUATEDFROMADESIGNTHATISONLINEEXAMINATIONSYSTEMSTUDENTSCANTESTTHEIRCOMPUTERWILLBEABLETOANSWER,SOTHATMADEITEASYANDSIMPLETESTSKEYWORDSEXAMINATION,ONLINE,ONLINEEXAMINATIONSYSTEM,DATABASE需求分析一选题的背景目前是计算机技术与网络技术飞速发展的时代,传统的教育模式和考试模式受到了严重的挑战。组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。随着计算机应用的迅猛发展,网络应用不断扩大,人们迫切要求利用这些技术来进行在线考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观。二现行系统描述在线考试是现阶段研究开发的一个热点。给考生、评卷人和出题者带来巨大的便利,同时也使考试成为真正意义上的平等、公开。它可以杜绝试题泄露、评卷不公、考生作弊。考生可以在规定的期间内选择最佳状态时期参加考试,系统会为每一个考生同样的试卷,同时当场给出成绩。在线考试系统的实现技术有多种,可以采用传统的客户机/服务器型的MIS型架构,即试题内容放在远程的服务器上,在考试机上安装考试应用程序和数据库客户机配置,因此每次考试时要对机器进行安装、配置,考务工作比较烦琐,而且考试程序放在客户机上,安全性也受到一定影响,因此本文讨论的网络考试系统采用WEB技术实现。WEB技术超越了传统的“客户机/服务器“两层结构,采用了三层体系结构用户界面层/服务层/数据库层,因此WEB结构有着更好的安全性,在用户机上不需要安装任何应用程序,应用程序可以安装在事务层所在的计算机上,试题存放在数据库服务器上,当然,事务层和数据库可以是同一台机器(如果条件允许,还是应该把这两层分开在不同的计算机上),本文所讨论的在线考试系统是基于JSP技术实现的。三系统分析一功能需求该系统和普通的基于WEB的考试系统是有所不同的。它要求系统能自动生成测试试卷、能到点自动提交并评分、能断点续考、能根据某次考试分析各知识点的失分情况等功能。同时也要求系统能作为一个通用的用于各类课程测试、考试和练习的系统。在系统的安全性、智能性、并发性、实用性、易操作性等诸多方面均有着较高的要求。二可行性分析概述用户教育单位拟建系统名称学校在线考试系统系统目标为了适应新形势的发展,我进行了这一系统的初步设计工作,也可以说是做一个初步的探索,希望它能够在各类考试中发挥高效、便捷的作用,把老师从繁重的工作中解脱出来四系统流程图本系统是以一个会员身份登陆,用户可以修改自己的信息,可以查看新闻,可以提交留言评论。相关的系统流程图,如图管理员登陆模块流程图教师登陆模块流程图学生登陆模块流程图第二章本人所负责的模块详细介绍一试题管理模块(一)模块描述试题管理模块的功能有试题单个添加,试题EXCEL导入,试题分页查询,试题修改,试题删除以及试题批量删除。试题分页查询页面如下图21图21题库列表1当点击左导航时查询出所有的试题分页显示,如图21;按题目查询是模糊查询,若文本框中什么都不写是查询的是所有试题;若所在页码是首页时,上一页和首页的按钮是不可用的,相反,若所在页码是尾页是首页和上一页的按钮是不可用的。2在线考试系统使用了HIBERNATE框架,所以分页使用的HIBERNATE分页,其中字段题目、科目、知识点分别来自不同的三个表,用HQL语句做链表查询,在此我用的是左外连接语句。3点击新增按钮,进入新增界面,如下图22图22试题添加4科目和知识点的下拉列表是一个二级联动,页面打开时初始化出来,题目是不可以重复的,当题目文本框失焦时,用AJAX与服务器进行交互,查询出该题目是否已经存在,若存在就在右侧提示“该题目已存在”。添加成功则跳到列表页面,失败则跳到中间页提示“添加失败”5点击导入按钮,跳到导入界面如下图23图23试题导入6科目和知识点的下拉列表是一个二级联动,页面打开时初始化出来,若以上任何一个框是NULL都会提示不能导入。7点击修改按钮,进入修改界面如图24图24试题修改8打开页面时初始化出所点试题的所有信息,并填充页面。点击修改,完成以后跳到列表页面9点击右侧删除链接,弹出提示框如图25图25确认删除提示框10点确定后删除并返回列表页面,点取消则什么都不做。11勾选全选复选框,则本页所有试题全部被选中,在点击批量删除链接则会删除所选并跳到列表页面,若没有试题被选中则提示“请选择您要删除的试题”。(二)模块总结1该模块用到了试题的EXCEL导入,要求若EXCEL已经导入过是不可以重复导入的,从EXCEL表中读出数据后,先去数据库里查询该试题是否已经存在(根据试题标题查询)若已经存在,则不在执行插入,如果不存在则插入数据库,这样就避免了相同的试题多次导入的弊端。2该模块中用到的二级联动,其实是当页面初始化时查询出所有的科目和知识点放在页面上,科目先填充进去,当科目选择发生变化时,用JAVASCRIPT实现知识点的联动。只所以不用AJAX,本人认为若每次选择一个科目都要去跟数据库交互查询出该科目下的知识点,势必加大服务器的负担。二学生在线考试模块(一)模块描述在线考试模块主要功能有1当这次考试时间未到时,可以登录但不能点击“开始考试按钮”。2时间到了以后点击“开始考试”按钮进入考试列出试卷所有试题并标识选项个数。3学生可以在题目后的文本框中填入答案,每填一个试题或改一个试题都采用AJAX与数据库进行一次交互,修改TEMP表中的试题答案。4若学生还未交卷,而突然断电或其他情况导致页面关闭,则用户重新登录进入考试,还可以继续答卷,以前的答案还会填充回来。5答题完毕以后点击“交卷”按钮可立即计算出该学生的成绩弹出对话框提示,点击确定退出页面进入登录页面,用户提交试卷以后再登录系统时点击这次考试的“开始考试按钮”会提示“试卷已经提交”。6若试卷已经提交,若时间已到,则会自动交卷。7若学生断电以后来不及登录到试卷页面时间就到了的话,系统将会执行服务器端自动交卷。8考试页面如下图26图26在线考试页面(二)模块总结1点击开始考试时,要做很多。首先判断是否在考试时间以内,若在考试时间以内再判断该学生在在这次考试中是否有成绩(即是否是第一次点击开始考试),若没有成绩,则向数据库中的成绩表中插入一条记录(成绩是1)同时向临时表中添加和题数相等条数的记录;若有成绩则判断是否已经提交,若没有提交则读出临时表中该学生成绩后跳转到考试页面进行填充(即断电续考)。2在线考试模块中,要实现断电续考功能就必须在数据库中添加一张临时表,将学生的每次答题都记录下来,而要实现这样的功能势必要用到AJAX,在此,服务器的压力要大一些是必然的,为了减轻服务器的压力,在答题页面,F5和右键功能全部被屏蔽。AJAX作为一种新型编程模式,避免了页面的整体刷新,让学生在没有任何刷新感觉的情况下完成与数据库交互的功能从而实现了断电续考。3在线考试系统的页面自动提交功能,为了实现这一功能,在用户点击开始考试时就拿出服务器端系统时间和数据库中的开始考试时间和考试用时做对比计算出离交卷还有多少毫秒,在页面上拿到这个毫秒数用JAVASCRIPT中的SETTIMEOUT倒计时,时间到了以后执行提交。4在线考试系统的服务器端自动提交,为了实现这一功能,在学生点击开始考试时,就为这个学生开启一个作业调度,将考试结束时间传入调度里,调度把这个时间转换成它要求的表达式格式,当时间到了的时候就自动从TEMP表中自动读出该学生这次考试中所有试题的对错情况并计算得分插入到SCORE表中。第三章项目总结一遇到的问题(一)SSH遇到的问题1在线考试系统用的是SSH稳定框架整合,为了保证用HIBERNATE操作数据库不出错,所有的数据库表不是用MYSQL企业管理器或查询分析器来完成的,而是用HIBERNATE的POJO类和HBMXML文件导入的,然而,配置这些关联映射却很麻烦,往往考虑不到而配置成单向关联,在开发过程中又发现双向关联都用到了,因此开发过程中数据库一直在修改。2使用SSH必然用到了HQL查询,虽然学习过HIBERNATE高级查询,而用HIBERNATE联合4,5张表进行查询时就不知道该用HIBERNATE的那种方式进行查询了,一开始觉得HIBERNATE远没有JDBC直接连数据库简单,后来随着使用HQL越来越多发现也不是这样,HIBERNATE查询非常灵活,它的对象导航图就可以很简单的链表查询,HQL连接语句也很好用。即使如此,HIBERNATE始终都存在一个大的BUG,HIBERNATE的本地SQL查询支持任何长度的字符串查询,然而当MYSQL中的字段变成TEXT类型时,HIBERNATE一定会报一个“TYPE1“的错误,这是我们组在导入试题时发现试题名称和选项太短而把数据库改成TEXT类型是发现的。所以本人建议所有使用HIBERNATE的开发者,即使使用在数据库中建立视图,程序查询视图的方式来查询所要结果也要尽可能的避免使用本地SQL方式。(二)调用任务调度的问题1MYSQL数据库是不支持任务调度的,所以只有使用JAVA程序来解决了。JAVA的任务调度是可以在某个特定时间执行相应操作,而每次考试结束时间不是特定的,所以只有拿到考试结束时间以参数的形式传到调度里才能实现服务器端自动提交。为此写了一个方法将字符串时间转换成了任务调度所使用的时间表达式格式。在学生点击开始时NEW一个任务调度,然而当多个同学同时参加考试时JOBDETAIL和CRONTRIGGER的第一个参数如果重复就会出错,所以我用以下方法PUBLICSTRINGGETRANDOMSTRINGUUIDUUIDRANDOMUUIDTOSTRINGSYSTEMOUTPRINTLN“UUID“UUIDRETURNUUID来得到一个随机字符串再加上年月日时分秒来做这两个参数就可以保证不会出错了。二项目感想1通过这次做在线考试系统,学到了不少的新知识POI操作EXCEL和WORD,JFREECHART绘制柱状图或饼状图,SSH稳定框架整合,AJAX实现断电续考等。2整个项目从需求分析到功能实现全部由小组成员四人合力完成,大家共同商讨难点对策,共同解决技术问题,让我感受到团队的力量3由于计算机都可以上互联网,遇到问题时,网络也给了我很大的支持,自己解决问题的能力也有所提升。4这次的在线考试系统让我们体验到开发一个现实中的项目不是自己凭空想象出来的,它是根据用户的需求来开发的,无论自己做的多么好,如果不是用户所需要都不是一个好的项目5SSH虽然是现在JAVA大型应用开发应用最多的,但还是要考虑自己的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论