试卷自动生成系统设计与实现.doc

上传人:聆听****声音 文档编号:1931568 上传时间:2023-05-02 格式:DOC 页数:40 大小:1.27MB
下载 相关 举报
试卷自动生成系统设计与实现.doc_第1页
第1页 / 共40页
试卷自动生成系统设计与实现.doc_第2页
第2页 / 共40页
试卷自动生成系统设计与实现.doc_第3页
第3页 / 共40页
试卷自动生成系统设计与实现.doc_第4页
第4页 / 共40页
试卷自动生成系统设计与实现.doc_第5页
第5页 / 共40页
试卷自动生成系统设计与实现.doc_第6页
第6页 / 共40页
试卷自动生成系统设计与实现.doc_第7页
第7页 / 共40页
试卷自动生成系统设计与实现.doc_第8页
第8页 / 共40页
试卷自动生成系统设计与实现.doc_第9页
第9页 / 共40页
试卷自动生成系统设计与实现.doc_第10页
第10页 / 共40页
试卷自动生成系统设计与实现.doc_第11页
第11页 / 共40页
试卷自动生成系统设计与实现.doc_第12页
第12页 / 共40页
试卷自动生成系统设计与实现.doc_第13页
第13页 / 共40页
试卷自动生成系统设计与实现.doc_第14页
第14页 / 共40页
试卷自动生成系统设计与实现.doc_第15页
第15页 / 共40页
试卷自动生成系统设计与实现.doc_第16页
第16页 / 共40页
试卷自动生成系统设计与实现.doc_第17页
第17页 / 共40页
试卷自动生成系统设计与实现.doc_第18页
第18页 / 共40页
试卷自动生成系统设计与实现.doc_第19页
第19页 / 共40页
试卷自动生成系统设计与实现.doc_第20页
第20页 / 共40页
亲,该文档总共40页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

试卷自动生成系统设计与实现.doc

《试卷自动生成系统设计与实现.doc》由会员分享,可在线阅读,更多相关《试卷自动生成系统设计与实现.doc(40页珍藏版)》请在冰点文库上搜索。

试卷自动生成系统设计与实现.doc

四川师范大学成都学院本科毕业设计

试卷自动生成系统的设计与实现

学生姓名

李锦超

学号

2012101149

所在学院

通信工程学院

专业名称

通信工程

班级

2012级宽带通信2班

指导教师

石彬

四川师范大学成都学院

二○一六年五月

试卷自动生成系统的设计与实现

学生:

李锦超指导教师:

石彬

内容摘要:

试卷自动生成系统,即用户通过自定义选择设置试题的类型、难度、分数、时间等多个因素自动生成考试试题并给予对错验证。

随着互联网络的飞速发展、网络教育的不断普及与提升,传统的出题考试方式已经不能满足所有的需求,一概而论不“因材施教”的出题方式不利于考核不同类型的学生,也不满足现代教育的发展需要。

因此,现在已经逐渐开始流行自定义、有难度、时间、类型选择控制的出题方式来迎合当前社会考试所需。

试卷自动生成系统的诞生油然而生。

该设计主要目的是帮助出题者以及试题训练者能够根据不同人群自定义设置难度、类型生成考试试题的系统。

系统为用户提供用户登录、开始试卷定制、选择题型、选择所占分数比例、最高分数设定、考试时间限制设定、考试难度选择、生成试卷以及答案查看等功能,将用户的需要“因材施教”、“分门别类”地提供,由用户自定义选取,从而达到针对不同层次的考生的训练和考验。

同时,也方便了出题者逐个进行试卷试题的选取,省去了出题者挨个设定的过程,既提升了出题的速度,也提高了出题的整体质量。

本次设计主要是以服务出题者、试题训练人等人群方便快速地完成试题的构造并提升自身所需检测为目的的试卷自动生成系统。

整体设计使用的是JAVA语言开发的B/S(浏览器/服务器)应用系统。

用户登录该系统后可以根据自己的能力选择生成题目的难度,根据自己的弱项针对题目类型进行生成试题,亦可根据自己的熟练度选择答题时间。

本系统的代码框架采用了现在比较流行的SSH(Spring+Struts+Hibernate)进行设计,在功能模型的实现和页面处理方面严格遵从了MVC(Model,View,Controller)的思想体系。

配合Javascript以及Xml对页面提取处理。

数据库方面采用了中小型的Mysql数据库进行处理,数据库工具使用了当下主流的navicat进行操作,以减轻代码量的负担和方便代码编写和功能实现。

关键词:

试卷自动生成B/SJavaMySQL数据库

Designandimplementationofautomatictestpapergenerationsystem

Abstract:

Automatictestpapergenerationsystem,thatis,bytheusertocustomizetheselectionofthetypeoftestquestions,difficulty,scores,timeandotherfactorsautomaticallygeneratetestquestionsandgivethewrongverification.WiththerapiddevelopmentofInternet,networkeducationpopularizationandpromotion,thetraditionalwayofexaminationquestionshasbeenunabletomeetalltheneedsofgeneralizationsdonotteachstudentsinaccordanceoftheiraptitudequestionsthewayisnotconducivetotheassessmentofdifferenttypesofstudents,alsodonotmeetthedevelopmentneedofthemoderneducation.Therefore,nowwehaveassemblypopularcustom,difficulty,time,typeselectioncontrolsetsthetopicthewaytocatertothesocialexaminationrequired.Automaticgenerationsystemoftestpaperbirtharisespontaneously.

Themainpurposeofthedesignisthehelptopicandquestionsoftrainingcanbesetdifficulty,typeofgeneratingexaminationpaperssystemaccordingtothecustomofdifferentgroupsofpeople.Systemfortheuserprovidesuserloginandstartcustomizedpaper,multiple-choice,choosetheratio,thehighestscoreset,theexaminationtimelimitset,choosethedifficultyoftheexam,testgenerationandcheckyouranswersandotherfunctions,theuserneedto"teachstudentsinaccordancewiththeiraptitude","subcategories"toprovide,selectedbytheuser,soastoachieveforcandidatesofdifferentlevelsoftrainingandtest.,butalsotofacilitatethequestionsonebyoneofpapersselected,eliminatingthetopicandsetonebyone,bothtoenhancethespeedofquestions,thetopicandalsoimprovesthequalityofthewhole.

Thisdesignismainlybasedonservicequestions,questionsoftrainingpeopleandotherpeopleeasilyandquicklycompletetheteststructureandenhanceitstestpaperautogeneratingsystem.TheoveralldesignistheuseofJAVAlanguagedevelopmentB/S(Browser/server)applicationsystem.Aftertheuserloginthesystemcanaccordingtotheirabilitytoselectthedifficultyofthequestionsintheform,accordingtotheirweaknessesfortypesofquestionsweregeneratedquestions,canalsochoosetoanswerthequestionsofthetimeaccordingtotheirproficiency.

ThecodeframeworkofthesystemusingthenowpopularSSH(Spring+struts+Hibernate)isdesigned.ThefunctionmodelandtherealizationofpageprocessingstrictlycomplywiththeMVC(model,viewandcontroller)systemofthought.WithJavascriptandXmlonpageextraction.DatabaseusedinsmallMysqldatabaseprocessing,databasetoolsusedinthecurrentmainstreamNavicatoperation,inordertoreducetheburdenofwritingcodeandconvenientcodeandfunctionrealization.

Keywords:

AutomatictestpapergenerationB/SJavaMySQLdatabas

目录

前言 1

1系统功能介绍与分析 1

1.1用户登录功能 1

1.2试卷生成及试题判断功能 2

1.3题库维护功能 3

2数据库的设计与开发 5

2.1数据库基础 5

2.2数据库设计需求 6

2.2.1数据库设计思路 6

2.2.2数据库表与字段的设置 7

3试卷自动生成系统流程 8

3.1物理结构流程 8

3.2文件结构流程展示 11

4界面设计 12

4.1界面流程展示 12

4.2界面设计示意图 13

5系统算法设计 19

5.1组卷方法设计 19

5.1.1随机法 19

5.1.2回朔法 20

5.1.3遗传算法 21

5.2试题难度算法 21

5.3试题分数算法 21

5.4系统算法总结 22

6主要功能代码展示 22

6.1登录功能代码展示 22

6.1.1数据库链接 22

6.1.2登录功能 24

6.1.3主要功能模块 27

6.2前端代码展示 30

6.2.1主界面代码 30

6.2.2图片轮播代码 31

7总结 32

参考文献 34

试卷自动生成系统的设计与实现

前言

现代教育伴随着互联网、自动化的发展而迅速地进行革新,传统的试卷考试已经远远不能满足现在社会急促的步伐,不仅如此,传统的试题考试设计相当地消耗出题者的时间与精力,并且没有针对性。

这种方式已经不能满足现代考试紧凑的步伐了。

因此,能够快速并且具有针对性、为用户提供自定义难度、类型、时间选择的试卷自动生成就显得尤为重要了。

试卷自动生成系统油然而生。

传统的试卷出题方式需要经过人工进行,出题者或者使用者需要根据自己的经验进行题目的设置,这种方式往往需要人力对试题数据的反复制定和验算、对题目合理性进行检验等等。

制定题目的难度梯度,以满足不同层次的学生反应不同的学习水平。

出题者往往还需要将以往的试题与将要出的试题的考点、难度进行对比。

由上诉需求可以看出,传统的人工出题方式不仅没有将互联网联动的优势运用起来,进行题库的资源共享与使用,也使出题者浪费了大量的研究和设置试题的时间。

互联网的时代是个资源共享的时代,现代教育也应该与时俱进,对于优秀的试题、适合学生做的试题可以进行共享并且反复利用,并且也解决了出题者自我思考浪费大量时间的问题。

本次设计的数据库可以存储大量物联网所提供的各类试题需求,以满足资源共享与互补互助的需求。

此外,该系统还提供了多种一键选择的功能方便用户意见集成试卷。

同时,数据库的使用也使得针对不同的用户也额外地分配的个人对题库和试题的编辑权限,用户可以自定义题目的难度、类型、分数等等,也可以新增、删除、查阅和编辑已有的试题。

更加人性化的是,用户在完成试卷答题之后,系统会根据用户等分的情况给出提升或者降低难度的一键生成试卷的选项。

从整个试卷的出题到打分结束,整个流程不仅与庞大的数据库进行了资源共享,也极大地提升了出题的质量和时间,可谓一举多得!

试卷自动生成系统的不断成熟将会逐渐撼动传统出题以及训练方式,随着试卷自动生成系统的不断完善和创新,用户将获得更好的体验。

本次设计主要研究试卷自动生成系统的各项功能以及相对传统出题方式所带来的优势。

1系统功能介绍与分析

1.1用户登录功能

每一个用户都会有自己对题库和试题不同的需求,我们提供了Mysql数据库为每个人分配了单独的IP并且开辟了独立的空间。

用户在输入帐号密码登录之后可以自由地根据需要管理自己的题库和试题。

用户登录系统的设置很好地区分了不同使用人群对不同环境的试题需求,也方便了使用者个人对特殊体型和试题的编辑和修改操作。

1.2试卷生成及试题判断功能

本试卷自动生成系统为用户提供了多项一键生成功能,用户可以根据自己的需要对生成试题的类型、分数、难度、时间、所占比例等等做出相应的设置从而生成出相应的试题。

根据用户的作答给出成绩并且提供提高难度和降低难度的一键生成按钮方便用户根据实际情况调整试卷。

并且用户可以根据自己的需要,自定义增加、删除、查阅和编辑自己的题库和试题。

在用户登录该系统之后,用户会来到一个中转的欢迎界面,用户可以选择查看题库对试题进行操作,也可以直接选择在线答题系统对自己所需的试题要求进行设置并且一键生成。

l试题类型的选择

生成一套试题首先得明确这套试题的结构组成,需要几种类型的试题,每种试题、每道题所占的分数比例都决定着这套试卷的合理性。

本系统为用户提供了当代考试最流行的几种题目类型:

选择题、填空题、问答题。

用户可以根据自己的需求合理安排各类题目在整个试卷中所占的数量以及分数的比例,比如单选题20道,每道1分;多选题10道,每道2分;填空题10道,每道2分,简答题5道,分别为6分、8分、8分、10分,共100分。

l试题难度的选择

作答难度的设定关系这整套试卷的出题质量,如何合理地根据实际情况给出适当难度的试题显得尤为重要。

本系统为每一道试题都给出了一个难度系数,数据库会根据给定的难度系数自动为您提供您所需要的难度系数的试题供用户选择。

难度系数设定在0-1之间,用户只需设定不同类型的题型的难度系数系统即会自动为该类型进行题型分配。

因此,用户在设置难度系数的时候只需要把握好整套试题的难度梯度即可。

此外。

该系统还会根据用户的作答情况给出一键自动降低难度和一键自动提高难度的试卷生成功能,很好地帮助用户找到当前阶段适合自己训练的试题难度。

l考试时间的选择

不同试题难度根据出题者分配,在设置难度的时候需要注意的就是难度和答题时间的合理结合,该系统提供了自定义的答题时间设定,方便使用者根据自己的综合实力在不同阶段设置需要完成试题的时间。

比如当用户第一次做的时候可以将时间设置为两个小时,经过一段时间的训练,用户一是可以通过提升难度来加强能力,同时也可以选择相同难度的其他试题通过减短作答时间的方式来得到提升。

本系统提供的时间设定很好地满足了用户的这点需求。

l总分数的设置

用户可以根据试卷的题量和考试需求自定义指定试卷的总分数以此配合题型的所占分数比例,比如在高中学校应用此系统自动生成试题,理综试卷按照传统标准应当设置300分为满分;数学、英语和语文等学科应按照150分给出。

在初中或者小学等其他环境中亦可给出120分或者100分甚至80分的满分。

当然,分数的给定完全由用户自定义,具体情况以实际需要为主。

同时也方便使用者在单独的考试中能够合理地分配分数。

l生成试卷的功能

在完成了上诉的试卷不同类型试题的难度系数设定、考试总时间的分配、考试总分数的设定之后,自动生成试卷就显得十分简单了,用户只需根据界面提示一键生成即可从数据库中随机提取相应数量并且符合条件(如类型和难度系数的)的试题,开始答题之后,倒计时开始启动。

若作答完题之后用户选择了提升难度或者降低难度,那么系统也会自动根据当前的试题难度系数做出判断,适当地降低或者增加考试难度对数据库进行试题的调取,再采用相同的方式进行试题的自动生成。

l试题判断功能

当用户完成登录选题生成试题并且作答之后,点击提交试卷,系统会根据用户作答情况结合数据库答案对用户的作答进行评分,用户根据得分情况从而选择是否增加难度或者降低难度再次进行作答训练。

针对单选题、多选题、判断题、填空题,经过正则处理过后的Javascript可以自动忽略空格、空白字符等等的干扰因素以确保空白空格等电脑认为操作带来的误判。

对于简答题,数据库会根据事先的关键字提取去抓取用户的答案中的关键字进行对比,只要最关键的关键字符出现,基本可以判定该题得分。

关键字的回答正确率也决定了该用户此题的最终得分,通过分割多个关键字以确保系统判断的正确率,极大地减少了误判,也满足了自动判断节省人力对比资源的时间。

1.3题库维护功能

用户除了从数据库中搜索、提取自动生成出试题以外,有时候也需要将自己平时收集的一些优秀的题目录入题库并设定难度系数,增加题库的题目库存以便下一次调用或者自动生成。

此外,对于一些易错、难懂的题目我们不需要讲究题目内容的形式,只需要对其重要参数进行修改即可重做以达到多次练习的效果,这样既没有脱离题目考察内容的本质,也节约了大量的时间。

当然,对于一些用户已经完全掌握的试题,用户可能怕在下一次自动生成试题中再次遇到从而减少了训练量并耽搁自己的训练时间。

所以需要将其删掉。

也有时,用户想要有针对性地训练,对于某种类型或者自己经常出错的题进行反复练习,需要在茫茫题库中迅速查找到某一道题。

综上所诉,我们为该系统设置了题库的试题增加、删除、查阅与编辑功能,以方便用户对题库的各种功能需求。

以下为具体功能的详细介绍:

l增加、删除试题功能

系统中的每一道试题都有且只有唯一的一个ID作为主键,在不考虑恢复试题的情况下,本系统采用了删除数据库ID字段的方式直接对其数据进行删除与添加,删除的数据ID数不会被新的数据ID所代替,数据的ID会依次呈上升的形式无限排列下去。

通过程序界面连接数据库语言,增加采用Mysql增加语句insertintot_user(id,degree(难度),style(类型),content(内容))values(xx,xx,xx,xx)来设置用户自定义的试题;删除则采用Mysql删除语句deletefromtablename(表名)wherexx=xxxandxxx=xxxorxxx=xxx数来进行条件的控制并且进行数据库删除操作数据。

当然,数据库初始化的时候处理关键的键以及主键不能为空以外,其余用户可以选择留空白,只需勾写必须的条件即可完成增加删除功能。

l查阅试题功能

查阅试题的功能主要是为了方便使用者快速、直接地找到自己所需的试题。

快速搜索关键字的方式可以为前台或者后台来完成。

使用后台的方式需要在数据库当中设置一个问题关键字的字段,在其中录入相应的关键字,然后对其搜索按钮进行处理进行连接查询数据库得出符合结果的试题。

使用前台的方式需要将关键字全部读取在指定的文件当中,通过Javascript对其进行代码的读取,采用正则和ajax等方式将相应关键字进行提取,然后在对比input框中输入的数据从而得出符合条件的试题。

考虑到本系统采用了数据库读取的方式,我们便可以在数据库模型搭建的时候很好地预测所需要的字段,方便了所有功能的实现。

所以本系统采用与后台数据库结合的方式进行查询。

采用Mysql查询语句selectid(试题ID),stname(试题名称),keyword(试题关键字)fromDB_name(表名)where(条件设置)degree(难度系数)isnum(数值)的方式在界面得出用户所需要查找的相应内容,当然,select后面根的具体的需要展示出来的字段可以根据用户需要在设计的时候作出调整,我们也可以全出查询出来,只在界面展示用户需要的部分。

Where后面跟的条件当然也可以根据用户的需求来改变设置,用户可以使用多个条件进行条件的定义。

最后满足所有条件的试题将会被展示出来,否则题库中没有符合该条件的试题。

l编辑试题功能

对于题库的编辑功能的设定主要方便了用户对指定试题的特殊要求做维护和修改,通过修改主要参数、内容环境以达到一题多用、举一反三。

同时也方便了用户纠正指出被忽略的试题错误。

进入试题编辑页面进行完编辑功能后点击保存,程序将执行修改数据库的Mysql语句updatetablename(表名)set字段=xx,字段=xxwhere(条件设置)xxx=xxxandxxx=xxx从而保存修改内容。

题库编辑功能的实现帮助了用户随时随地自定义地将试题修改成自己所需的条件,对于不同用户对同意试题的难度理解的定义、所花时间的需要以及出现的频率的不同做了很好的区分,每位用户都可以结合自己的实际情况进行试题的考核。

2数据库的设计与开发

2.1数据库基础

在整个系统的功能运行流程当中,我们可以很容易地发现一条贯穿整个系统的“线”,那就是数据库,无论是用户的登录系统,还是题目的增加、删除、查阅与编辑,再到试卷的生成、试题的保存都离不开数据库。

那么接下来,我们就有必要对数据库进行一些基础性质的讲解。

我们常说的数据库(Database)通俗地来讲就是利用主机空间开辟的一个虚拟的对数据结构进行储存、管理的一个数据仓库。

数据库最初诞生于1950年,最初只是用于储存和管理一些重要的数据,发展至今,数据库已经得到了非常广泛的运用,存储资源的种类也变得越来越多种多样。

用户可以通过不同类型的代码对数据库进行连接从而对数据进行增加、删除、查阅和修改、展示等等功能。

如今市面上常见的数据库有ORACLE(甲骨文)、DB2、SQLServer、Sybase、Informix、MySQL、VF、Access等等。

但是一般基于系统大小、开发速度、开源程度以及成本的考虑,在中小型系统或者网站的开发的时候,我们往往选择Mysql数据库作为主流数据库。

Mysql的功能未必是最强大的一个,它相对于ORACLE(甲骨文)、DB2等数据库的功能上来说还略差一截,但就其开源程度以及传播的知名度来说,Mysql因其卓越的开发速度以及可靠性在中小型系统开发当中占据了不可或缺的一席。

数据库的广泛运用使得市面上出现了很多数据库的编辑使用工具。

比较流行的有phpAdmin、Navicat、SQLyog、SequelPro、MicrosoftSQLServer等等。

每一款数据库管理软件都有自己的优劣势,无论使用哪一款,目的都是为了简化方便对数据库的管理和操作。

phpAdmin是一款基于网页的Mysql开源管理器,它以界面简单、功能齐全而深受广大用户的喜爱。

但本系统最终还是选用了Navicat作为数据库管理编辑的软件。

Navicat是一款跨平台的(于Windows/Mac/Linux)的管理数据工具,相对于页面形式的phpAdmin来说,Navicat在界面优化以及操作处理的运行速度上来说更胜一筹,同时也避免了数据库软件受到网页浏览器影响的情况。

Navicat的完全开源工作并不复杂,在网上可以轻易地搜索到教程并且在5分钟内搞定。

本套试卷自动生成系统使用Mysql数据库,Navicat数据库管理工具进行操作管理。

2.2数据库设计需求

2.2.1数据库设计思路

在程序制作初始,将数据库所需要用到

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

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2