还剩31页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
山西大学商务学院本科毕业设计目录基于JSP的考试题库管理系统的设计与实现学生姓名指导教师摘要随着计算机技术和人工智能理论的发展,教育测量理论的不断深入,计算机辅助教学设计在教学管理中得到了广泛的应用,利用计算机进行自动组卷系统的研究也随之产生和发展基于遗传算法的自动组卷系统是利用遗传算法对自动组卷功能进行研究,以提高试卷的质量及系统运行效率本系统可以在试题库中按照试题类型、试题数量、曝光度等约束条件进行快速搜索,系统通过选择、交叉和变异等操作,从试题库中自动地查找和组织出一些不同类型、不同难度、不同章节范围的试题来组成一套最佳的试卷,实现了快速自动组卷功能本设计是在对组卷系统研究、开发过程中,采用软件工程的方法,利用JSP动态网页技术和Oracle数据库技术进行实现设计界面友好、操作方便,具有一定的实用价值关键词遗传算法自动组卷试题管理
1.引言在现代教育管理过程中,如何提高组卷的效率是一件非常重要的工作考试是对考生知识和能力水平的一种测量考试的方式有很多种,例如,笔试、面试、口试、上机考试等其中笔试是我国教育行业采用的主要手段,因此,质量好的试卷能更好的检验学生的学习成果一份好的试卷,要求具有较全面的覆盖度、恰当的难易度及较高的可信度采用传统的手工出题组卷方式,工作量相对比较大通过建立自动组卷系统,利用平时积累建立试题库,然后利用计算机生成试卷和分析试卷,可以减轻学校教学人员的工作量,实现试卷生成、分析试卷的系统化、规范化和自动化自动化组卷问题实质上是一个多重约束条件的优化问题目前通用的组卷方法是随机选取法,即在题库中随机搜索满足条件的试题,直到总数满足要求为止但由于各种组卷约束条件之间相互制约,随机选取法不仅需要多次回溯,而且组卷效率不高而用遗传算法处理组卷问题就恰恰能解决随机选取法的盲目随机性,提高搜索效率遗传算法,在本质上是一种不依赖具体问题的直接搜索方法它是模拟自然界生物体从低级到高级的进化过程,由初始种群出发,采用优胜劣汰、适者生存的自然法则选择个体,通过杂交、变异来产生下一代种群,如此逐代进化,直到满足期望的条件正是由于遗传算法具有随机性、适应性和并行性的特点,所以基于遗传算法的自动组卷系统可按照试题类型、试题数量、曝光度等约束条件进行快速搜索,通过选择、交叉和变异等操作,从试题库中自动地查找和组织出一些不同类型、不同难度、不同章节范围的试题来组成一份最佳的试卷,进而解决了在教学过程中组卷耗时长、试题质量低等问题,实现了快速自动组卷,为教学单位和人员提供方便和帮助
2.绪论
2.1自动组卷系统的现状随着计算机辅助教学研究的发展,利用计算机自动组卷将解决试卷质量的控制问题所谓自动组卷就是按照命题人和教学大纲的要求,由计算机自动从试题库中选择试题,组成一份符合要求的试卷它是计算机辅助教学系统的重要组成部分现有的考试系统有多种组卷算法常见的有随机组卷法、回溯试探组卷法和遗传算法组卷等随机组卷法是根据组卷状态的控制指标,由计算机同随机抽取一道符合控制指标的试题放入组卷库,此过程需不断重复,直到组卷完毕或已无法从题库中抽取满足控制指标的试题为止该方法具有组卷直观,实现过程简单等优点,但是具有很大的随意性和不确定性,无法从整体上把握题库不断变化的要求同时,它还不具有智能性,在组卷之前无法对组卷约束条件进行预处理,生成试卷合理性较差,试卷维度系数也很难控制回溯试探法是将随机抽取法产生的每一状态类型记录下来,当搜索失败时释放上次记录的状态的类型然后再按照一定的规律变换一种新的状态类型进行试探,通过不断的回溯试探直到试卷生成完毕或退回到出发点为止实践证明,回溯试探组卷法的优点是对每一种状态都进行试探各搜索,组卷成功率较高,该方法适用于类型和出题量都比较小的题库系统不足之处在于当组卷试题库中的题量较大时,不仅组卷等待时间长、组卷效率低,并且实际应用时程序结构也相对复杂,选取试题随机性差遗传算法是一种模拟自然选择和自然遗传机制的随机优化算法,它能根据不同环境产生不同的后代,具有动态性,自适应性,从而满足题库不断变化的需求遗传算法同时具有内在的并行性,能有效地解决计算量大的问题,具有全局寻优和收敛速度快的特点,这些都适宜处理试题库自动组卷的问题目前,基于遗传算法的组卷系统中有一些采用传统二进制编码方法,组卷时间受试题库试题问题影响较大进行交叉和变异的过程中,容易形成不满足试题数量约束的试卷非法解如对其进行修正,将大大影响搜索效率;同时,二进制编码与试题号的转换,会占用系统运行的时间本系统在成卷方式上采用的是十进制整数编码并增加多种约束机制,克服了上述缺点,提高了组卷的成功率和成卷速度
2.2系统开发目标在开发自动组卷系统的过程中,要开发出一个优秀的系统,应当解决以下几个问题
(1)系统的安全性,即用户的合法登录与身份验证
(2)数据的合法性,即试题、试卷在录入和编辑的过程中是否合法
(3)数据的一致性,即试题信息和章节信息在录入的编辑的过程中题号与其它各项是否保持一致
(4)数据的完整性,即试题信息在录入和编辑的过程中是否完整
(5)生成的试卷必须符合需求的题型、题量
(6)试卷难易度、章节覆盖度和曝光度的控制,即题目难易程度的区分、各章节轻重之分和自动生成的试卷与往年试卷的相似率这三项参数指标必须与目标参数指标的误差尽可能小总之,本系统是旨在实现满足上述要求的自动组卷系统
2.3系统运行环境为了保证系统运行的效率和可靠性,系统服务器端应具有较高的软硬件配置此应用程序可广泛运行于互联网,也可适用于内部的局域网其运行要求如下
(1)开发环境操作系统MicrosoftWindows7开发语言Java开发工具MyEclipse
8.6数据库Oracle10g
(2)硬件配置CPU AMDAthlonXP,1000MHz5x200(服务器)内存512MB或以上(服务器)硬盘20GB以上(服务器)
3.系统分析该系统先进行了可行性的研究概述,接着进行了可行性的分析在此基础上提出需求分析
3.1可行性分析可行性研究的目的不是解决问题,而是确定问题是否能够解决对新系统的开发从技术、经济、社会等方面进行分析和研究,以避免投资失误,保证新系统的开发成功
(1)技术可行性本系统是一个基于Java平台,使用Oracle数据库的系统,开发软件较为简单,采用MyEclipse
8.6目前,国内的技术已较为成熟,硬件、软件的性能要求、环境条件等各项条件均良好,利用现有技术条件完全可以达到该系统的功能目标
(2)经济可行性经济可行性即成本效益分析它要评估项目的开发成本,估算开发成本是否会超过项目预期的全部预算本系统的开发是基于本人对程序开发的实践学习而来,学校无需资金投入,并且软件开发投入的成本不高,因此开发经费完全可以接受
(3)操作可行性基于遗传算法的自动组卷系统采用B/S结构,具有跨平台性、高度可扩展性、可重用性和可维护性用户界面友好,对操作人员的专业要求低,操作人员可以通过界面轻松的对题库和试卷进行操作对于用户使用方便简易,具有比较短的响应时间由以上分析可知,本系统具有技术可行性、经济可行性和操作可性,因此可以进行相关开发工作
3.2需求分析
3.
2.1需求分析概述需求分析是开发人员通过准确理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转化到相应的形式功能规约(需求规格说明)的过程需求分析虽处于软件开发过程的初期阶段,但它对于整个软件开发过程以及软件产品质量是至关重要的随着软件系统复杂性的提高及规模的扩大,需求分析在软件开发中的所处的地位愈加突出,从而也愈加困难软件工程理论认为,在软件生命周期中,需求分析是最重要的一个阶段软件需求分析的质量对软件开发的影响是深远的、全局性的,高质量的需求对软件开发往往起到事半功倍的效果,而如果在后续阶段改正需求分析阶段产生的错误将会付出高昂的代价正所谓“磨刀不误砍柴功”项目的需求分析如果做得好,那项目就相当于做完了一半,好的需求分析会为项目的顺利开发奠定基础,减少大量开发成本,减小开发风险
3.
2.2系统需求分析如前所述,组卷工作是一个教育单位考试工作中不可缺少的部分它对于学校的教师和教务管理者来说都至关重要一直以来,人们都是采用传统人工的方式组卷,这种组卷方式存在着许多缺点如效率低、保密性差等另外时间一长,将产生大量的文件和数据,这会为查找、更新和维护都带来困难显然,传统方式和试卷管理手段已经难以满足现在的教育日新月异的发展组卷系统不仅仅是对其题库试卷的管理,还要求对试卷进行分析统计包括试题的所属范围、试题的难易程度等等随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用作为计算机应用的一部分,使用计算机对试卷进行管理,具有手工管理所无法比拟的优点例如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等,这些优点都能够极大地提高组卷的效率
4.系统设计
4.1总体设计经过需求分析阶段的工作,系统必须“做什么”已经清楚了现在是决定“怎样做”的时候了总体设计的基本目的就是回答“概括地说,系统应该如何实现?”这个问题因此,总体设计又称为概要设计或初步设计通过这个阶段的工作将划分出组成系统的物理元素—程序、文件、数据库、人工过程和文档等等但是,每个物理元素仍然处于黑盒子级,这些黑盒子里的具体内容将在以后仔细设计而总体设计阶段的另一项重要任务就是设计软件的结构,也就是要确定系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系总体设计过程首先要寻找实现目标系统的各种不同方案,需求分析阶段得到的数据流图是设想各种可能方案的基础然后分析员从这些供选择的方案中选取若干合理的方案,为每个合理的方案都准备一份系统流程图,列出组成系统的所有物理元素,进行成本/效益分析,并且制定实现这个方案的进度计划分析员应该综合分析比较这些合理的方案,从中选出一个最佳方案向用户和使用部门负责人推荐如果用户和使用部门的负责人接受了推荐的方案,分析员应该进一步为这个最佳方案设计软件结构通常,设计出初步的软件结构后还要多方改进,从而得到更合理的结构,进行必要的数据库设计,确定测试要求并且制定测试计划从上面的叙述中不难看出,在详细设计之前先进行总体设计的必要性既可以站在全局高度上,花较少成本,从较抽象的层次上分析对比多种可能的系统实现方案和软件结构,又可以从中选出最佳方案和最合理的软件结构,从而用较低成本开发出较高质量的软件系统
4.2系统模块设计本系统由题库管理、试卷管理两大模块构成,其中题库管理模块提供题型管理、题库管理、章节管理、知识点管理和试题管理5个功能,而试卷管理包括自动组卷、预览试卷、导出试卷和分析试卷4个功能本系统的功能模块图如图4-2-1所示图4-2-1题库管理系统功能模块图各个模的主要功能块如下
(1)系统登录模块此模块的主要功能是显示用户登录窗口,输入用户名和密码,检查用户的合法性,如果合法则登录成功,否则登录失败
(2)数据库连接模块在系统开发的过程中,大多数地方都涉及到数据库的存取在应用数据库之前,系统需要建立数据库连接、设定各种参数以及处理数据库连接中可以出现的错误并由数据库连接模块对所有关于数据库的操作进行封装,这样在进行程序编写的时候,就可以通过简单的引用数据库连接模块来连接数据库了
(3)试卷管理模块试卷管理模块是本系统的主要功能它分为自动组卷、预览试卷、导出试卷、分析试卷4个子功能其中,自动组卷,就是根据用户需求自动生成一份符合要求的试卷预览试卷,是实现对试卷的查看导出试卷,即是实现把已经生成试卷写入word文档而分析试卷,则是任选取2套现有试卷分析试卷组成、重复试题等信息
(4)题库管理模块此模块的主要功能是实现对试题库的增、删、查、改操作它分为试题管理、科目管理、章节管理、知识点管理、题型管理五个子功能
4.3系统数据库设计数据库设计的好与坏对系统的稳定性、可维护性以及代码的实现起着决定性的作用本系统的数据库是用Oracle实现的,能稳定运行在实际应用中,具有很高的可维护性以及可操作性本系统的核心数据库设计图如图4-3-1所示图4-3-1题库管理系统数据库设计图
4.
3.1系统表结构本系统核心表有8个,分别为题型表(Types)、科目表(Subject)、章节表(Charpter)、知识点表(Knowledge)、试题表(Questions)、答案表(Answers)、试卷表(Testbase)、试题试卷关系表(Ques_r_test)各表的具体结构如下
(1)题型表题型表主要是保存题库中各种题型的编号及名称,供建立题库、查询及组卷时选择题型时使用各字段的数据类型及含义如表4-3-1-1所示表4-3-1-1题型表(Types)字段名字段类型字段长度可空字段说明T_IDnumber3N题型ID,主键T_NAMEVarchar240N题型名称
(2)科目表科目表主要是保存题库的编号及名称,表中每一条记录对应一个题库各字段的数据类型及含义如表4-3-1-2所示表4-3-1-2科目表(Subject)字段名字段类型字段长度可空字段说明S_IDnumber3N科目ID,主键S_NAMEVarchar240N科目名称
(3)章节表章节表记录了每一门课程的章节信息,主要用于保存章节编号和章节名称其中题库编号(S_ID)为外键,参照题库表各字段的数据类型及含义如表4-3-1-3所示表4-3-1-3章节表(Charpter)字段名字段类型字段长度可空字段说明C_IDnumber3N章节ID,主键C_NAMEVarchar2100N章节名称S_IDnumber3N科目编号,外键(S_ID)
(4)知识点表知识点表主要是保存知识点编号、名称及对应的章节编号其中章节编号(C_ID)为外键,参照章节表各字段的数据类型及含义如表4-3-1-4所示表4-3-1-4知识点表(Knowledge)字段名字段类型字段长度可空字段说明K_IDnumber3N知识点ID,主键K_NAMEvarchar2100N知识点名称C_IDnumber3N章节编号,外键(C_ID)
(5)试题表试题表会记录每一道题的详细信息包括用于自动组卷的几个参数试题编号、科目编号、题型编号、章节编号、知识点编号、试题难度、曝光度其中科目编号、题型编号、章节编号和知识点编号为外键,分别参照科目表、题型表、章节表和知识点表各字段的数据类型及含义如表4-3-1-5所示表4-3-1-5试题表(Questions)字段名字段类型字段长度可空字段说明Q_IDnumber7N试题ID,主键S_IDnumber3N科目ID,外键(S_ID)Q_TYPEnumber3N题型ID,外键(T_ID)Q_CHARPERnumber3N章节ID,外键(C_ID)Q_KNOWLEDGEnumber3N知识点ID,外键(K_ID)Q_TEXTvarchar23000N题目内容A_NUMnumber2N答案数量Q_DIFFICULTYnumber1N试题难度(
1.易
2.中等
3.较难)Q_EXPOSEDdateY曝光度Q_SCOREvarchar2255N试题分数REMARKnumber3N试题标记
(6)答案表答案表记录试题的答案信息主要保存答案编号、答案内容、是否为正确答案以及对应试题编号其中试题编号为外键,参照试题表各字段的数据类型及含义如表4-3-1-6所示表4-3-1-6答案表(Answers)字段名字段类型字段长度可空字段说明A_IDnumber7N答案ID,主键Q_IDnumber7N试题编号,外键(Q_ID)ANSWERvarchar23000N答案RIGHTnumber1Y是否正确0错1对)
(7)试卷表试卷表会记录每一张试卷的信息概要,表中的每一条记录对应一张试卷保存试卷编号、名称和科目编号其中科目编号为外键,参照题库表各字段的数据类型及含义如表4-3-1-7所示表4-3-1-7试卷表(Testbase)字段名字段类型字段长度可空字段说明TP_IDnumber5N试卷ID,主键S_IDnumber3N科目ID,外键(S_ID)TP_NAMEvarchar2200N试卷名称
(8)试题试卷关系表试卷关系表主要是保存关系编号、试题编号和试卷编号主要用于连接试题表(表4-3-1-5)和试卷库表(表4-3-1-7)各字段的数据类型及含义如表4-3-1-8所示表4-3-1-8试题试卷关系表(Ques_r_test)字段名字段类型字段长度可空字段说明R_IDnumber5N关系ID,主键Q_IDnumber7N试题ID,外键(Q_ID)TP_IDnumber5N试卷ID,外键(TP_ID)
5.详细设计通过对本系统的总体设计,本章开始详细设计,详细设计目的是对该项目进行详细设计,在总体设计的基础上进一步明确系统结构,详细地介绍系统的各个模块,为进行后面的实现和测试作准备
5.1登录功能登录模块的主要功能是用于登录本系统,首先是接受从前台页面提交的用户名和密码,按照用户名在数据库中进行查询如果查询到该用户,则将用户在数据库的密码与该用户输入的密码进行比对,若匹配则进入系统否则,返回登陆页面并显示错误信息登录界面如图5-1-1所示图5-1-1登录界面
5.2题库管理题库管理包括,题型管理、科目管理、章节管理知识点管理和试题管理
5.
2.1题型管理题型管理功能能提供对题型的操作,包括显示题型、新增题型、修改题型和删除题型
(1)显示题型该功能主要是查询系统中已经存在的题型,并提供删除和修改功能链接界面如图5-2-1-1所示图5-2-1-1显示题型列表界面
(2)新增题型该功能是向系统中添加新题型,服务器接受前台页面提交的题型名称和该题型所对应的答案样式由于本系统采用的是四种答案的录入样式,而每种答案样式又与题型是相对应的关系,因此判断题与选择题的答案录入方式是不一样的新增题型界面如图5-2-1-2所示图5-2-1-2增加题型界面
(3)修改题型该功能是提供用户修改题型的名称和答案样式界面与图5-2-1-2相似,区别在于题型名称已经填写,填写的名称即为要修改的题型名称,界面不在赘述
(4)删除题型该功能用于删除数据库中已经存在的题型,并且会级联删除试题库中该类题型的所有试题点击删除会弹出确认框,选择“确定”则删除该题型,选择“取消”则取消删除操作删除确认界面如图5-2-1-3所示图5-2-1-3显示科目列表界面
5.
2.2科目管理科目管理功能提供对科目的操作,包括显示科目列表、新增科目、修改科目和删除科目
(1)显示科目列表该功能主要是用于显示已经存在的科目名称,并提供删除和修改功能链接界面如图5-2-2-1所示图5-2-2-1显示科目列表界面
(2)新增科目该功能是向系统中增加新的科目,用户需要在界面输入科目名称并点击“添加”按钮即可界面如图5-2-2-2所示图5-2-2-2新增科目界面
(3)修改科目名称该功能用于修改科目名称,用户在显示科目列表界面下点击“修改”即可链接到修改科目界面此时,科目名称会自动填充,显示名称即为要修改的科目名称界面如图5-2-2-3所示图5-2-2-3修改科目名称界面
(4)删除科目该功能用于删除科目,并且会级联删除该科目对应题库中的所有试题在显示科目列表界面点击“删除”会出现确认框,点击“确认”删除科目,点击“取消”即可取消删除操作确认框如图5-2-2-4所示图5-2-2-4确认删除科目界面
5.
2.3章节管理章节管理功能能提供对章节的操作,包括显示章节、新增章节、修改章节和删除章节
(1)显示章节列表该功能主要用于显示与科目相对应的所有章节,在科目的下拉列表选择要显示的科目即可显示该科目的所有章节,并且提供删除和修改功能链接显示章节列表界面如图5-2-3-1所示图5-2-3-1显示章节列表界面
(2)新增章节该功能用于向科目中新增章节用户在科目下拉列表中选中科目,在章节名称处输入要新增加的章节名称,点击“增加”按钮即可新增章节界面如图5-2-3-2所示图5-2-3-2增加章节界面
(3)修改章节名称该功能用于修改章节名称用户在显示章节界面点击“修改”即可显示修改功能区此时,章节编号和章节名称会自动填充,其中章节编号为只读修改完成后,点击“修改”按钮即可完成操作界面如图5-2-3-3所示图5-2-3-3修改章节界面
(4)删除章节该功能用于删除章节,并且会级联删除章节下的知识点和对应的试题在显示章节界面点击“删除”会出现确认框,点击“确认”删除章节,点击“取消”即可取消删除操作确认框如图5-2-3-4所示图5-2-3-4确认删除章节界面
5.
2.4知识点管理知识点管理功能能提供对知识点的操作,包括显示知识点,新增知识点,修改知识点和删除知识点
(1)显示知识点该功能主要用于显示某一章节下的所有知识点用户先通过科目下拉列表选择科目,再通过章节下拉列表选择要查看的章节,随即页面就可以显示该章节的知识点信息,同时提供修改和删除知识点的链接显示知识点界面如图5-2-4-1所示图5-2-4-1知识点列表界面
(2)增加知识点该功能用于向系统中新增知识点用户通过题库下拉列表和章节下拉列表选择新知识点和要插入的章节,再输入新知识点名称,点击“新增知识点”按钮即可保存新知识点增加知识点界面如图5-2-4-2所示图5-2-4-2知识点增加界面
(3)修改知识点该功能用于修改知识点名称用户在显示章节界面点击“修改”即可显示修改功能区此时,知识点编号和知识点名称会自动填充,其中知识点编号为只读点击“修改”按钮即可完成操作界面如图5-2-4-3所示图5-2-4-3知识点修改界面
(4)删除知识点该功能用于删除知识点,并且会级联删除该知识相对应的试题在显示知识点界面点击“删除”会出现确认框,点击“确认”删除章节,点击“取消”即可取消删除操作删除的确认操作如图5-2-4-4所示图5-2-4-4知识点删除界面
5.
2.5试题管理
(1)新增试题用户只需在下拉列表中选择试题题型、所属题库、所属章节、所属知识点,然后输入题目内容和答案,选择试题难度点击“录入试题”按钮,保存题目即可新增试题界面如图5-2-5-1所示图5-2-5-1试题增加界面
(2)查看全部试题该功能用于查询题库上的全部试题,按知识点升序排列分页显示试题,每页显示10条记录显示界面如图5-2-5-2所示图5-2-5-2试题预览界面
5.3试卷管理试卷管理功能包括自动组卷、预览试卷和试卷分析三个功能,其中自动组卷即是试卷管理的核心功能也是本系统的主要功能
5.
3.1自动组卷用户选择要出试卷的题库,系统会自动列出被选择题库的所有章节选择每章节试题量占试卷试题总量的百分比输入试卷名称,选择试题平均难度,难度分为易、较易、中、较难、难五个等级输入不同题型的数量,点击“确定组卷”,即可完成组卷如果组卷成功会出现成功提示界面,若组卷失败系统会返回自动组卷界面并提示失败原因自动组卷界面如图5-3-1-1所示图5-3-1-1自动组卷界面
5.
3.2试卷预览点击试卷名称可以链接到显示试卷界面该界主要面显示试题类型、试题题目、备选答案、所属章节和试题难度等信息界面如图5-3-2-1所示图5-3-2-1试卷预览界面
5.
3.3导出到Word该功能可以把试卷导出并保存到Word中,默认存储路径为D盘下导出Word提示界面如图5-3-3-1所示图5-3-3-2试卷导出界面
6.自动组卷及算法
6.1成卷参数与模型在企业门户网站的首页中,用户不但可以查看网站的公司信息、公司公告、公司新闻以及行
6.2遗传算法对于一个企业的门户网站宣传自己公司的业务、产品是必不可少的在该网站的网站导航条
6.3基于遗传算法的自动组卷网站后台主要是对前台需要显示的信息进行管理、对留言簿信息进行管理和维护网站的后
7.软件测试及维护软件测试即使用人工或者自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别它是帮助识别开发完成的计算机软件整体或部分的正确度、完全度和质量度的软件实现过程总之软件测试贯穿整个软件开发生命周期、对软件产品或阶段性产品进行验证和确认的活动过程,其目的是尽快尽早地发现在软件产品中所存在的各种问题
7.1测试的意义使用人工或者自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别软件测试具有如下意义
(1)测试并不仅仅是为了找出错误通过分析错误产生的原因和错误的发生趋势,可以帮助项目管理http://baike.baidu.com/view/
65955.htm者发现当前软件开发http://baike.baidu.com/view/
190611.htm过程中的缺陷http://baike.baidu.com/view/
1122313.htm,以便及时改进;
(2)这种分析也能帮助测试人员设计出有针对性的测试方法,改善测试的效率和有效性;
(3)没有发现错误的测试也是有价值的,完整的测试是评定软件质量http://baike.baidu.com/view/
1451265.htm的一种方法;
(4)根据测试目的的不同,还有回归测试、压力测试、性能测试等,分别为了检验修改或优化过程是否引发新的问题、软件所能达到处理能力和是否达到预期的处理能力等
7.2测试方法程序测试的主要方法分为两大类,黑盒测试和白盒测试黑盒测试也称功能测试http://baike.baidu.com/view/
651435.htm,它是通过测试来检测每个功能是否都能正常使用在测试中,把程序http://baike.baidu.com/view/
17674.htm看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口http://baike.baidu.com/view/
2809361.htm进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面http://baike.baidu.com/view/
43207.htm和软件功能进行测试黑盒测试主要是根据输入条件和输出条件的确定测试数据,来检查程序是否能产生正确的输出进行黑盒测试主要有下面几种方法等价分类法、边界值分析法、猜错法、因果图法白盒测试也称结构测试或逻辑驱动测试,它是按照程序http://baike.baidu.com/view/
17674.htm内部的结构测试程序http://baike.baidu.com/view/
420822.htm,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作这一方法是把测试对象http://baike.baidu.com/view/
2387.htm看作一个打开的盒子,测试人员依据程序内部逻辑结构相关信息,设计或选择测试用例http://baike.baidu.com/view/
106882.htm,对程序所有逻辑路径进行测试,通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致白盒测试的测试方法有代码http://baike.baidu.com/view/
41.htm检查法、静态结构分析法、静态质量度量法、逻辑覆盖http://baike.baidu.com/view/
178784.htm法、基本路径测试法、域测试、符号测试、Z路径覆盖、程序变异本系统的测试综合了白盒测试、黑盒测试两种方法,但主要使用的是黑盒测试方法在测试当中遵循了“尽早地和不断进行测试”,“保证测试用例的完整性和有效性”原则通过测试达到以下测试目标
(1)发现一些可以通过测试避免的开发风险;
(2)实施测试来降低所发现的风险;
(3)确定测试何时可以结束;
(4)在开发项目的过程中将测试看作是一个标准项目
7.3系统测试平台简介测试要求相应的硬件平台,其具体配置如表7-3-1所示表7-3-1测试硬件平台CPUIntel酷睿i32310M主板LenovoJITR1内存镁光DDR321GB硬盘SeagateST9250827AS(250GB/5400转/分)显卡AMDRadeonHD6370M显示器LGLGD0210LP141测试要求相应的软件环境,其具体配置如表7-3-2所示表7-3-2测试软件环境操作系统MicrosoftWindows7数据库Oracle10g显卡驱动NVIDIAGeForce9300M
7.4测试项目
7.
4.1系统登录功能系统登录模块的主要功能是显示用户登录窗口,输入用户名和密码,检查用户的合法性,如果合法则登录成功,否则登录失败系统登录失败界面如图7-4-1-1所示测试用例用户名是admin;密码是000测试结果登录失败提示信息“用户不存在或密码不正确”图7-4-1-1登录失败界面测试用例用户名是admin;密码是admin测试结果登录成功,显示系统登录成功页面如图7-4-1-2所示图7-4-1-2登录成功界面
7.
4.2题库管理功能题库管理模块是对题库的管理,可以新建科目、删除科目、新增章节、新增知识点、查看题型、新增试题、查看全部试题用户登录到主界面后,点击“题库管理”即可如图7-4-2-1所示图7-4-2-2题库管理界面
(1)添加科目功能测试用户登录到主界面后,点击题库管理中的科目管理,点击“增加”按钮即可添加科目如图7-4-2-2所示图7-4-2-2题库管理界面测试用例科目名称软件工程理论与实践测试结果科目添加成功如图7-4-2-3所示图7-4-2-3科目添加界面
(2)科目操作测试科目操作包括删除和修改操作如图7-4-2-4所示图7-4-2-4科目操作界面修改操作测试用例原科目名称软件工程理论与实践修改后科目名称软件工程理论与实践Test测试结果修改成功在题库操作界面中显示修改后的名称如图7-4-2-5所示图7-4-2-5科目修改界面删除操作测试用例单击删除链接,弹出删除确认信息点击“确定”删除科目,点击“取消”不删除科目且返回原页面点击“确认”界面如图7-4-2-6所示点击“取消“界面如图7-4-2-7所示图7-4-2-6“取消”界面图7-4-2-7“确定”界面
7.
4.3新增试题功能用户登录到主界面后,点击管理题库中的新增试题,进入新增试题页面如图7-4-3-1所示测试用例题目类型判断题目所属高等数学题目所属章节第一章函数题目所属知识点函数题目内容函数必须有返回值,否则不能使用函数答案内容错难度等级较易图7-4-3-1试题添加界面选择题型后,系统会自动匹配答案内容录入框,然后选择题目所属科目、题目所属章节、题目所属知识点,在题目内容处输入试题题干,并在答案内容处输入相对应的答案单击“添加试题”按钮,直接跳转到试题预览页面显示刚录入试题测试结果添加成功如图7-4-3-2所示图7-4-3-2添加成功界面
7.
4.4自动组卷功能选择管理试卷中的自动组卷,可以看到如图7-4-4-1所示图7-4-4-1自动组卷界面出卷人先选择试卷有哪些章节,在试题类型及相应数量栏中填入相应题型的数量,并修改试卷名称,选择试卷难度等级,点击“确定组卷”按钮即可测试用例科目高等数学章节所占比例第一章函数90%第二章微积分10%试卷名称2013-2014期末测试题试题平均难度系数较易填空题1题选择题1题简答题1题判断1题论述题1题测试结果若组卷成功进入组卷成功页面,如图7-4-4-2所示图7-4-4-2组卷成功界面如果各章节比例之和不为100%或者所选择的试题类型题库中没有足够的题量,是无法组成试卷的那么系统会返回到自动组卷界面并提示组卷失败原因如图7-4-4-
3、7-4-4-4所示图7-4-4-2“章节比例之和不到100%”失败界面图7-4-4-3“题库中题目数量不足”失败界面
7.
4.5试卷预览功能单击试卷管理中的预览试卷,如图7-4-5-1所示,该页面将提供预览试卷、试卷分析功能图7-4-5-1试卷预览界面选中任意两套试卷,点击试卷分析按钮,可对选中的试卷进行分析结果如图7-4-5-2所示图7-4-5-2试卷分析界面点击试卷名称可以预览试卷如图7-4-5-3所示图7-4-5-3试卷预览界面单击“导出Word”按钮可把试卷导出,保存为Word文件存放在D:/路径下试卷效果如图7-4-5-4所示图7-4-5-4Word形式预览界面
7.
4.6退出功能在任何页面单击“退出”退出系统,即可返回登录页面如图7-4-6-1所示图7-4-6-1退出界面参考文献
[1]张孝祥,徐明华.JavaScript基础与案例开发详解[M].北京清华大学出版社,
2009.
[2]张孝祥,徐明华.JSP基础与案例开发详解[M].北京清华大学出版社,
2009.
[3]JavaSE
1.6_API_zh_CN-.CHM帮助文档.
[4]魏应彬,周星.网页设计与Web数据库发布技术[M].清华大学出版社,
2012.
[5]陈威,白伟明,李楠.JSP工程应用与项目实践[M].机械工业出版社,
2011.
[6]李刚.轻量级JavaEE企业应用实战第三版[M].北京:电子工业出版社,
2011.
[7]刘志成.JSP程序设计实例教程[M].人民邮电出版社,
2010.
[8]李钟尉,陈丹丹等.JavaEE开发实战1200例第一卷[M].清华大学出版社,
2013.
[9]赛若,贝茨.HeadFirstJava中文版第二版[M].中国电力,
2010.
[10]邹竹彪.JSP宝典[M].北京:电子工业出版社,
2011.
[11]JoshuaBloch,杨春花,俞黎敏.EffectiveJava中文版第二版[M].机械工业出版社,
2009.
[12]RobertHoekman.Jr.,JaredSpool,向怡宁.网站设计解构有效的交互设计框架和模式[M].人民邮电出版社,
2013.
[13]白峻尧.基于轮盘赌的图像传输技术研究与应用,
2011.
[14]王学友.模拟电子技术试题库智能组卷算法研究与系统实现,
2005.
[15]王淑佩,易叶表.基于改进自适应遗传算法的组卷研究,
2009.
[16]李敏强.遗传算法的基本理论与应用[M].北京科学出版社,
2012.
[17]吴勇,张若愚.数据库在网站后台开发中的应用,
2013.
[18]贺平.软件测试技术[M].北京机械工业出版社,
20014.后记本软件的设计目的是在题库建立管理维护和试卷生成方面为教学单位和人员提供方便和帮助通过这几个月的毕业设计,我学到很多以前没有学到的Java开发技术,在软件工程学上更是取得了很大的进步虽然软件基本达到设计要求并且达到同行的先进水平,但由于作者水平有限,软件存在bug也是在所难免的,您的意见和建议将极大的帮助我改进并完善软件真诚的希望您的参与在这几个月的毕业设计过程中我深刻的体会到了达内老师授课内容的实用性,在此感谢老师在这几个月对我的帮助和辅导,也感谢在这四年的大学生活中辛勤培养过我的各位老师DesignandImplementationofThe questionbankManagement SystemAbstract Thestudyofmeasurementtheoryisthedeepeningofthedevelopmentofcomputertechnologyandartificialintelligencetheoryeducationcomputer-aidedinstructionaldesignhasbeenwidelyusedinteachingmanagementuseofcomputersfortheautomaticgenerationofsystemanddevelopment.Automaticgenerationofgeneticalgorithm-basedsystemistostudytheuseofgeneticalgorithmsforautomaticgenerationoffunctionstoimprovepaperqualityandsystemefficiency.Thesystemcanbeinthetestdatabaseinaccordancewithitemtypeitemnumberexposureconstraintsquicksearchthroughselectioncrossoverandmutationoperationsfromthetestdatabaseautomaticallyfindandorganizeanumberofdifferenttypesanddifficulty.rangeofdifferentsectionsofthedatabasetoformasetofbestpaperstoachievearapidandautomaticgenerationoffeatures.ThisdesignisaGroupingSystemthedevelopmentprocesssoftwareengineeringmethodstheuseofJSPdynamicwebtechnologyandOracledatabasetechnologytoachieve.Designandfriendlyinterfaceeasyoperationandhassomepracticalvalue.Keyword:geneticalgorithms;automatictestpaper;testmanagement2。