《基于JSP的考试题库管理系统的设计与实现毕业论文(21页).doc》由会员分享,可在线阅读,更多相关《基于JSP的考试题库管理系统的设计与实现毕业论文(21页).doc(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-基于JSP的考试题库管理系统的设计与实现毕业论文-第 17 页目 录基于JSP的考试题库管理系统的设计与实现学生姓名: 指导教师: 摘要:随着计算机技术和人工智能理论的发展,教育测量理论的不断深入,计算机辅助教学设计在教学管理中得到了广泛的应用,利用计算机进行自动组卷系统的研究也随之产生和发展。基于遗传算法的自动组卷系统是利用遗传算法对自动组卷功能进行研究,以提高试卷的质量及系统运行效率。本系统可以在试题库中按照试题类型、试题数量、曝光度等约束条件进行快速搜索,系统通过选择、交叉和变异等操作,从试题库中自动地查找和组织出一些不同类型、不同难度、不同章节范围的试题来组成一套最佳的试卷,实现了快
2、速自动组卷功能。本设计是在对组卷系统研究、开发过程中,采用软件工程的方法,利用JSP动态网页技术和Oracle数据库技术进行实现。设计界面友好、操作方便,具有一定的实用价值。关键词:遗传算法 自动组卷 试题管理1. 引言在现代教育管理过程中,如何提高组卷的效率是一件非常重要的工作。考试是对考生知识和能力水平的一种测量。考试的方式有很多种,例如,笔试、面试、口试、上机考试等。其中笔试是我国教育行业采用的主要手段,因此,质量好的试卷能更好的检验学生的学习成果。一份好的试卷,要求具有较全面的覆盖度、恰当的难易度及较高的可信度。采用传统的手工出题组卷方式,工作量相对比较大。通过建立自动组卷系统,利用平
3、时积累建立试题库,然后利用计算机生成试卷和分析试卷,可以减轻学校教学人员的工作量,实现试卷生成、分析试卷的系统化、规范化和自动化。自动化组卷问题实质上是一个多重约束条件的优化问题。目前通用的组卷方法是随机选取法,即在题库中随机搜索满足条件的试题,直到总数满足要求为止。但由于各种组卷约束条件之间相互制约,随机选取法不仅需要多次回溯,而且组卷效率不高。而用遗传算法处理组卷问题就恰恰能解决随机选取法的盲目随机性,提高搜索效率。遗传算法,在本质上是一种不依赖具体问题的直接搜索方法。它是模拟自然界生物体从低级到高级的进化过程,由初始种群出发,采用优胜劣汰、适者生存的自然法则选择个体,通过杂交、变异来产生
4、下一代种群,如此逐代进化,直到满足期望的条件。正是由于遗传算法具有随机性、适应性和并行性的特点,所以基于遗传算法的自动组卷系统可按照试题类型、试题数量、曝光度等约束条件进行快速搜索,通过选择、交叉和变异等操作,从试题库中自动地查找和组织出一些不同类型、不同难度、不同章节范围的试题来组成一份最佳的试卷,进而解决了在教学过程中组卷耗时长、试题质量低等问题,实现了快速自动组卷,为教学单位和人员提供方便和帮助。2. 绪论2.1自动组卷系统的现状随着计算机辅助教学研究的发展,利用计算机自动组卷将解决试卷质量的控制问题。所谓自动组卷就是按照命题人和教学大纲的要求,由计算机自动从试题库中选择试题,组成一份符
5、合要求的试卷。它是计算机辅助教学系统的重要组成部分。现有的考试系统有多种组卷算法。常见的有随机组卷法、回溯试探组卷法和遗传算法组卷等。随机组卷法是根据组卷状态的控制指标,由计算机同随机抽取一道符合控制指标的试题放入组卷库,此过程需不断重复,直到组卷完毕或已无法从题库中抽取满足控制指标的试题为止。该方法具有组卷直观,实现过程简单等优点,但是具有很大的随意性和不确定性,无法从整体上把握题库不断变化的要求。同时,它还不具有智能性,在组卷之前无法对组卷约束条件进行预处理,生成试卷合理性较差,试卷维度系数也很难控制。回溯试探法是将随机抽取法产生的每一状态类型记录下来,当搜索失败时释放上次记录的状态的类型
6、。然后再按照一定的规律变换一种新的状态类型进行试探,通过不断的回溯试探直到试卷生成完毕或退回到出发点为止。实践证明,回溯试探组卷法的优点是对每一种状态都进行试探各搜索,组卷成功率较高,该方法适用于类型和出题量都比较小的题库系统。不足之处在于当组卷试题库中的题量较大时,不仅组卷等待时间长、组卷效率低,并且实际应用时程序结构也相对复杂,选取试题随机性差。遗传算法是一种模拟自然选择和自然遗传机制的随机优化算法,它能根据不同环境产生不同的后代,具有动态性,自适应性,从而满足题库不断变化的需求。遗传算法同时具有内在的并行性,能有效地解决计算量大的问题,具有全局寻优和收敛速度快的特点,这些都适宜处理试题库
7、自动组卷的问题。目前,基于遗传算法的组卷系统中有一些采用传统二进制编码方法,组卷时间受试题库试题问题影响较大。进行交叉和变异的过程中,容易形成不满足试题数量约束的试卷非法解。如对其进行修正,将大大影响搜索效率;同时,二进制编码与试题号的转换,会占用系统运行的时间。本系统在成卷方式上采用的是十进制整数编码并增加多种约束机制,克服了上述缺点,提高了组卷的成功率和成卷速度。2.2系统开发目标在开发自动组卷系统的过程中,要开发出一个优秀的系统,应当解决以下几个问题:(1)系统的安全性,即用户的合法登录与身份验证。(2)数据的合法性,即试题、试卷在录入和编辑的过程中是否合法。(3)数据的一致性,即试题信
8、息和章节信息在录入的编辑的过程中题号与其它各项是否保持一致。(4)数据的完整性,即试题信息在录入和编辑的过程中是否完整。(5)生成的试卷必须符合需求的题型、题量。(6)试卷难易度、章节覆盖度和曝光度的控制,即题目难易程度的区分、各章节轻重之分和自动生成的试卷与往年试卷的相似率这三项参数指标必须与目标参数指标的误差尽可能小。总之,本系统是旨在实现满足上述要求的自动组卷系统。2.3系统运行环境为了保证系统运行的效率和可靠性,系统服务器端应具有较高的软硬件配置。此应用程序可广泛运行于互联网,也可适用于内部的局域网。其运行要求如下:(1)开发环境操作系统:Microsoft Windows 7开发语言
9、:Java开发工具:MyEclipse 8.6数据库:Oracle 10g(2)硬件配置CPU:AMD Athlon XP,1000 MHz (5 x 200)(服务器)内存:512MB或以上(服务器)硬盘:20GB以上(服务器)3. 系统分析该系统先进行了可行性的研究概述,接着进行了可行性的分析。在此基础上提出需求分析。3.1可行性分析可行性研究的目的不是解决问题,而是确定问题是否能够解决。对新系统的开发从技术、经济、社会等方面进行分析和研究,以避免投资失误,保证新系统的开发成功。(1)技术可行性本系统是一个基于Java平台,使用Oracle数据库的系统,开发软件较为简单,采用MyEclip
10、se8.6。目前,国内的技术已较为成熟,硬件、软件的性能要求、环境条件等各项条件均良好,利用现有技术条件完全可以达到该系统的功能目标。(2)经济可行性经济可行性即成本效益分析。它要评估项目的开发成本,估算开发成本是否会超过项目预期的全部预算。本系统的开发是基于本人对程序开发的实践学习而来,学校无需资金投入,并且软件开发投入的成本不高,因此开发经费完全可以接受。(3)操作可行性基于遗传算法的自动组卷系统采用B/S结构,具有跨平台性、高度可扩展性、可重用性和可维护性。用户界面友好,对操作人员的专业要求低,操作人员可以通过界面轻松的对题库和试卷进行操作。对于用户使用方便简易,具有比较短的响应时间。由
11、以上分析可知,本系统具有技术可行性、经济可行性和操作可性,因此可以进行相关开发工作。3.2需求分析3.2.1 需求分析概述需求分析是开发人员通过准确理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转化到相应的形式功能规约(需求规格说明)的过程。需求分析虽处于软件开发过程的初期阶段,但它对于整个软件开发过程以及软件产品质量是至关重要的。随着软件系统复杂性的提高及规模的扩大,需求分析在软件开发中的所处的地位愈加突出,从而也愈加困难。软件工程理论认为,在软件生命周期中,需求分析是最重要的一个阶段。软件需求分析的质量对软件开发的影响是深远的、全局性的,高质量
12、的需求对软件开发往往起到事半功倍的效果,而如果在后续阶段改正需求分析阶段产生的错误将会付出高昂的代价。正所谓“磨刀不误砍柴功”。项目的需求分析如果做得好,那项目就相当于做完了一半,好的需求分析会为项目的顺利开发奠定基础,减少大量开发成本,减小开发风险。3.2.2系统需求分析如前所述,组卷工作是一个教育单位考试工作中不可缺少的部分。它对于学校的教师和教务管理者来说都至关重要。一直以来,人们都是采用传统人工的方式组卷,这种组卷方式存在着许多缺点。如:效率低、保密性差等。另外时间一长,将产生大量的文件和数据,这会为查找、更新和维护都带来困难。显然,传统方式和试卷管理手段已经难以满足现在的教育日新月异
13、的发展。组卷系统不仅仅是对其题库试卷的管理,还要求对试卷进行分析统计。包括:试题的所属范围、试题的难易程度等等。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对试卷进行管理,具有手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等,这些优点都能够极大地提高组卷的效率。4. 系统设计4.1 总体设计经过需求分析阶段的工作,系统必须“做什么”已经清楚了。现在是决定“怎样做”的时候了。总体设计的基本目的就是回答“概括地说,系统应该如何实现?”
14、这个问题。因此,总体设计又称为概要设计或初步设计。通过这个阶段的工作将划分出组成系统的物理元素程序、文件、数据库、人工过程和文档等等。但是,每个物理元素仍然处于黑盒子级,这些黑盒子里的具体内容将在以后仔细设计。而总体设计阶段的另一项重要任务就是设计软件的结构,也就是要确定系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系。总体设计过程首先要寻找实现目标系统的各种不同方案,需求分析阶段得到的数据流图是设想各种可能方案的基础。然后分析员从这些供选择的方案中选取若干合理的方案,为每个合理的方案都准备一份系统流程图,列出组成系统的所有物理元素,进行成本/效益分析,并且制定实现这个方案的进度计划
15、。分析员应该综合分析比较这些合理的方案,从中选出一个最佳方案向用户和使用部门负责人推荐。如果用户和使用部门的负责人接受了推荐的方案,分析员应该进一步为这个最佳方案设计软件结构。通常,设计出初步的软件结构后还要多方改进,从而得到更合理的结构,进行必要的数据库设计,确定测试要求并且制定测试计划。从上面的叙述中不难看出,在详细设计之前先进行总体设计的必要性。既可以站在全局高度上,花较少成本,从较抽象的层次上分析对比多种可能的系统实现方案和软件结构,又可以从中选出最佳方案和最合理的软件结构,从而用较低成本开发出较高质量的软件系统。4.2系统模块设计本系统由题库管理、试卷管理两大模块构成,其中题库管理模
16、块提供题型管理、题库管理、章节管理、知识点管理和试题管理5个功能,而试卷管理包括自动组卷、预览试卷、导出试卷和分析试卷4个功能。本系统的功能模块图如图4-2-1所示。图4-2-1 题库管理系统功能模块图各个模的主要功能块如下:(1)系统登录模块此模块的主要功能是显示用户登录窗口,输入用户名和密码,检查用户的合法性,如果合法则登录成功,否则登录失败。(2)数据库连接模块在系统开发的过程中,大多数地方都涉及到数据库的存取。在应用数据库之前,系统需要建立数据库连接、设定各种参数以及处理数据库连接中可以出现的错误。并由数据库连接模块对所有关于数据库的操作进行封装,这样在进行程序编写的时候,就可以通过简
17、单的引用数据库连接模块来连接数据库了。(3)试卷管理模块试卷管理模块是本系统的主要功能。它分为自动组卷、预览试卷、导出试卷、分析试卷4个子功能。其中,自动组卷,就是根据用户需求自动生成一份符合要求的试卷。预览试卷,是实现对试卷的查看。导出试卷,即是实现把已经生成试卷写入word文档。而分析试卷,则是任选取2套现有试卷分析试卷组成、重复试题等信息。(4)题库管理模块此模块的主要功能是实现对试题库的增、删、查、改操作。它分为试题管理、科目管理、章节管理、知识点管理、题型管理五个子功能。4.3系统数据库设计数据库设计的好与坏对系统的稳定性、可维护性以及代码的实现起着决定性的作用。本系统的数据库是用O
18、racle实现的,能稳定运行在实际应用中,具有很高的可维护性以及可操作性。本系统的核心数据库设计图如图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所示。表
19、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-
20、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)试题表试题表会记
21、录每一道题的详细信息。包括用于自动组卷的几个参数:试题编号、科目编号、题型编号、章节编号、知识点编号、试题难度、曝光度。其中科目编号、题型编号、章节编号和知识点编号为外键,分别参照科目表、题型表、章节表和知识点表。各字段的数据类型及含义如表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
22、_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试题编号
23、,外键(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
24、-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 登录功能登录模块的主要功能是用于登录本系统,首先是接受从前台页面提交的用户名和密
25、码,按照用户名在数据库中进行查询。如果查询到该用户,则将用户在数据库的密码与该用户输入的密码进行比对,若匹配则进入系统。否则,返回登陆页面并显示错误信息。登录界面如图5-1-1所示。图5-1-1 登录界面5.2题库管理题库管理包括,题型管理、科目管理、章节管理知识点管理和试题管理。5.2.1题型管理题型管理功能能提供对题型的操作,包括显示题型、新增题型、修改题型和删除题型。(1)显示题型该功能主要是查询系统中已经存在的题型,并提供删除和修改功能链接。界面如图5-2-1-1所示。图5-2-1-1 显示题型列表界面(2)新增题型该功能是向系统中添加新题型,服务器接受前台页面提交的题型名称和该题型所
26、对应的答案样式。由于本系统采用的是四种答案的录入样式,而每种答案样式又与题型是相对应的关系,因此判断题与选择题的答案录入方式是不一样的。新增题型界面如图5-2-1-2所示。图5-2-1-2 增加题型界面(3)修改题型该功能是提供用户修改题型的名称和答案样式。界面与图5-2-1-2相似,区别在于题型名称已经填写,填写的名称即为要修改的题型名称,界面不在赘述。(4)删除题型该功能用于删除数据库中已经存在的题型,并且会级联删除试题库中该类题型的所有试题。点击删除会弹出确认框,选择“确定”则删除该题型,选择“取消”则取消删除操作。删除确认界面如图5-2-1-3所示。图5-2-1-3 显示科目列表界面5
27、.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 修改
28、科目名称界面(4)删除科目该功能用于删除科目,并且会级联删除该科目对应题库中的所有试题。在显示科目列表界面点击“删除”会出现确认框,点击“确认”删除科目,点击“取消”即可取消删除操作。确认框如图5-2-2-4所示。图5-2-2-4 确认删除科目界面5.2.3章节管理章节管理功能能提供对章节的操作,包括显示章节、新增章节、修改章节和删除章节。(1)显示章节列表该功能主要用于显示与科目相对应的所有章节,在科目的下拉列表选择要显示的科目即可显示该科目的所有章节,并且提供删除和修改功能链接。显示章节列表界面如图5-2-3-1所示。图5-2-3-1 显示章节列表界面(2)新增章节该功能用于向科目中新增章
29、节。用户在科目下拉列表中选中科目,在章节名称处输入要新增加的章节名称,点击“增加”按钮即可。新增章节界面如图5-2-3-2所示。图5-2-3-2 增加章节界面(3)修改章节名称该功能用于修改章节名称。用户在显示章节界面点击“修改”即可显示修改功能区。此时,章节编号和章节名称会自动填充,其中章节编号为只读。修改完成后,点击“修改”按钮即可完成操作。界面如图5-2-3-3所示。图5-2-3-3 修改章节界面(4)删除章节该功能用于删除章节,并且会级联删除章节下的知识点和对应的试题。在显示章节界面点击“删除”会出现确认框,点击“确认”删除章节,点击“取消”即可取消删除操作。确认框如图5-2-3-4所
30、示。图5-2-3-4 确认删除章节界面5.2.4知识点管理知识点管理功能能提供对知识点的操作,包括显示知识点,新增知识点,修改知识点和删除知识点。(1)显示知识点该功能主要用于显示某一章节下的所有知识点。用户先通过科目下拉列表选择科目,再通过章节下拉列表选择要查看的章节,随即页面就可以显示该章节的知识点信息,同时提供修改和删除知识点的链接。显示知识点界面如图5-2-4-1所示。图5-2-4-1知识点列表界面(2)增加知识点该功能用于向系统中新增知识点。用户通过题库下拉列表和章节下拉列表选择新知识点和要插入的章节,再输入新知识点名称,点击“新增知识点”按钮即可保存新知识点。增加知识点界面如图5-
31、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)新增试题用户只需在下拉列表中选择试题题型、所属题
32、库、所属章节、所属知识点,然后输入题目内容和答案,选择试题难度。点击“录入试题”按钮,保存题目即可。新增试题界面如图5-2-5-1所示。图5-2-5-1 试题增加界面(2)查看全部试题该功能用于查询题库上的全部试题,按知识点升序排列。分页显示试题,每页显示10条记录。显示界面如图5-2-5-2所示。图5-2-5-2 试题预览界面5.3试卷管理试卷管理功能包括自动组卷、预览试卷和试卷分析三个功能,其中自动组卷即是试卷管理的核心功能也是本系统的主要功能。5.3.1自动组卷用户选择要出试卷的题库,系统会自动列出被选择题库的所有章节。选择每章节试题量占试卷试题总量的百分比。输入试卷名称,选择试题平均难
33、度,难度分为易、较易、中、较难、难五个等级。输入不同题型的数量,点击“确定组卷”,即可完成组卷。如果组卷成功会出现成功提示界面,若组卷失败系统会返回自动组卷界面并提示失败原因。自动组卷界面如图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.自动组卷及算
34、法6.1成卷参数与模型在企业门户网站的首页中,用户不但可以查看网站的公司信息、公司公告、公司新闻以及行6.2遗传算法对于一个企业的门户网站宣传自己公司的业务、产品是必不可少的。在该网站的网站导航条6.3基于遗传算法的自动组卷网站后台主要是对前台需要显示的信息进行管理、对留言簿信息进行管理和维护。网站的后7. 软件测试及维护软件测试即使用人工或者自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。它是帮助识别开发完成的计算机软件整体或部分的正确度、完全度和质量度的软件实现过程。总之软件测试贯穿整个软件开发生命周期、对软件产品或阶段性产品进行验
35、证和确认的活动过程,其目的是尽快尽早地发现在软件产品中所存在的各种问题。7.1测试的意义使用人工或者自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。软件测试具有如下意义: (1)测试并不仅仅是为了找出错误。通过分析错误产生的原因和错误的发生趋势,可以帮助项目管理者发现当前软件开发过程中的缺陷,以便及时改进; (2)这种分析也能帮助测试人员设计出有针对性的测试方法,改善测试的效率和有效性;(3)没有发现错误的测试也是有价值的,完整的测试是评定软件质量的一种方法;(4)根据测试目的的不同,还有回归测试、压力测试、性能测试等,分别为了检验修改
36、或优化过程是否引发新的问题、软件所能达到处理能力和是否达到预期的处理能力等。7.2测试方法程序测试的主要方法分为两大类,黑盒测试和白盒测试。黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。黑盒测试主要是根据输入条件和输出条件的确定测试数据,来检查程序是否能产生正确的输出。进行黑盒测试主要
37、有下面几种方法:等价分类法、边界值分析法、猜错法、因果图法。白盒测试也称结构测试或逻辑驱动测试,它是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。这一方法是把测试对象看作一个打开的盒子,测试人员依据程序内部逻辑结构相关信息,设计或选择测试用例,对程序所有逻辑路径进行测试,通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。白盒测试的测试方法有代码检查法、静态结构分析法、静态质量度量法、逻辑覆盖法、基本路径测试法、域测试、符号测试、Z路径覆盖、程序变异。本系统的测试综合了白盒测试、黑盒测试两
38、种方法,但主要使用的是黑盒测试方法。在测试当中遵循了“尽早地和不断进行测试”,“保证测试用例的完整性和有效性”原则。通过测试达到以下测试目标。(1)发现一些可以通过测试避免的开发风险;(2)实施测试来降低所发现的风险;(3)确定测试何时可以结束;(4)在开发项目的过程中将测试看作是一个标准项目。7.3系统测试平台简介测试要求相应的硬件平台,其具体配置如表7-3-1所示。表7-3-1 测试硬件平台CPUIntel 酷睿i3 2310M主板Lenovo JITR1内存镁光DDR3 21GB硬盘Seagate ST9250827AS(250GB/5400转/分)显卡AMD Radeon HD 637
39、0M显示器LG LGD0210 LP141测试要求相应的软件环境,其具体配置如表7-3-2所示。表7-3-2 测试软件环境操作系统Microsoft Windows7数据库Oracle10g显卡驱动NVIDIA GeForce 9300M7.4测试项目7.4.1 系统登录功能系统登录模块的主要功能是显示用户登录窗口,输入用户名和密码,检查用户的合法性,如果合法则登录成功,否则登录失败。系统登录失败界面如图7-4-1-1所示。测试用例:用户名是admin;密码是000。测试结果:登录失败。提示信息“用户不存在或密码不正确”。图7-4-1-1登录失败界面测试用例:用户名是admin;密码是admi
40、n。测试结果:登录成功,显示系统登录成功页面。如图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)科目
41、操作测试科目操作包括删除和修改操作。如图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 新增试题功能用户登录到主界面后,点击管理题库中的新增试题,进
42、入新增试题页面。如图7-4-3-1所示。测试用例:题目类型:判断题目所属:高等数学 题目所属章节:第一章 函数题目所属知识点:函数题目内容:函数必须有返回值,否则不能使用函数。答案内容:错难度等级:较易图7-4-3-1 试题添加界面选择题型后,系统会自动匹配答案内容录入框,然后选择题目所属科目、题目所属章节、题目所属知识点,在题目内容处输入试题题干,并在答案内容处输入相对应的答案。单击“添加试题”按钮,直接跳转到试题预览页面显示刚录入试题。测试结果:添加成功。如图7-4-3-2所示。图7-4-3-2 添加成功界面7.4.4 自动组卷功能选择管理试卷中的自动组卷,可以看到如图7-4-4-1所示。
43、图7-4-4-1自动组卷界面出卷人先选择试卷有哪些章节,在试题类型及相应数量栏中填入相应题型的数量,并修改试卷名称,选择试卷难度等级,点击“确定组卷”按钮即可。测试用例:科目: 高等数学章节所占比例:第一章 函数 90%第二章 微积分 10%试卷名称:2013-2014期末测试题试题平均难度系数:较易填空题:1题选择题:1题简答题:1题判断:1题论述题:1题测试结果:若组卷成功进入组卷成功页面,如图7-4-4-2所示。图7-4-4-2 组卷成功界面如果各章节比例之和不为100%或者所选择的试题类型题库中没有足够的题量,是无法组成试卷的。那么系统会返回到自动组卷界面并提示组卷失败原因。如图7-4
44、-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形式预
45、览界面7.4.6 退出功能在任何页面单击“退出”退出系统,即可返回登录页面。如图 7-4-6-1所示。图7-4-6-1退出界面参考文献1 张孝祥,徐明华.Java Script基础与案例开发详解M.北京:清华大学出版社,2009.2 张孝祥,徐明华.JSP基础与案例开发详解M.北京:清华大学出版社,2009.3 JavaSE1.6_API_zh_CN -.CHM帮助文档. 4 魏应彬,周星. 网页设计与Web数据库发布技术M.清华大学出版社,2012. 5 陈威,白伟明,李楠.JSP工程应用与项目实践M.机械工业出版社,2011. 6 李刚. 轻量级Java EE企业应用实战(第三版)M.北京
46、:电子工业出版社,2011.7 刘志成. JSP程序设计实例教程M.人民邮电出版社,2010. 8 李钟尉,陈丹丹等. Java EE开发实战1200例(第一卷)M.清华大学出版社,2013.9 赛若,贝茨. Head First Java 中文版(第二版)M.中国电力,2010.10 邹竹彪. JSP宝典M.北京:电子工业出版社,2011. 11 Joshua Bloch,杨春花,俞黎敏. Effective Java中文版(第二版)M.机械工业出版社,2009. 12 Robert Hoekman.Jr.,Jared Spool,向怡宁.网站设计解构:有效的交互设计框架和模式M.人民邮电出版社,2013. 13白峻尧.基于轮盘