《数据结构》试卷生成系统的设计与实现毕业论文
2021-03-26 23:34:16
摘 要
本系统为《数据结构》试卷生成系统,是一个基于JavaWeb的应用系统。该系统操作简单,功能丰富,有四大模块,分别是:登录模块,主要完成用户的登录;注册模块,主要完成用户的注册;题库管理模块,主要完成对试题的增、删、查、改操作,题型包括选择题、填空题、简答题、编程题;试卷管理模块,主要完成组卷功能和导出word文档的功能。其中题库管理和组卷功能为该系统的核心,用户可以根据需要,实现对题库的管理和组成试卷。本系统有两种组卷的选题方式,分别是手动选题和随机选题,用户可以制定一些条件,系统会根据条件组卷。
该系统的主要目的是方便教师创建试卷,以完成对学生学习情况的检查。该系统解决了传统的出卷方式中知识点覆盖不全、出现重复试题的情况,能高效的组成一份《数据结构》试卷。
关键词:题库管理;随机选题;手动选题
Abstract
This system is a test paper generation system of data structure, and it is an application system based on JavaWeb. The system is easy to operate, rich in function, there are four modules in this system : login module, the main completion of user login;registration module, the main completion of user registration; question bank management module, mainly to complete the operation of add, delete, search, change, the questions include choice questions, fill in the blanks, simple answer, programming problems; test paper management module, the main completion of the make up the test paper function and export word document function. Among them, the function of question bank management and make up the test paper is the core of the system, users can manage the question bank and make up the test paper according to their needs. There are two ways of select questions in this system when make up the test paper, they are select questions by random and select questions by manual, Users can make some conditions, and the system will make up the test papers according to the conditions.
The main purpose of the system is to convenient teachers to create test paper to complete the examination of students' learning. This system solves the traditional ways of make up the test paper in incomplete coverage, repeated examination questions, can efficiently form a "data structure" test paper.
Key Words:question bank management ;select questions by random;select questions by manual;
目 录
摘 要 I
Abstract II
第1章 绪论 1
1.1 研究背景 1
1.2 国内外研究现状 1
1.3 研究意义 2
第2章 开发技术和开发环境 3
2.1 开发技术 3
2.1.1 Java技术 3
2.1.2 JSP技术 3
2.1.3 jQuery技术 4
2.1.4 Struts2框架 4
2.1.5 Spring框架 5
2.1.6 MyBatis框架 6
2.1.7 MySQL数据库 6
2.2 开发环境 6
第3章 系统分析 7
3.1 需求分析 7
3.2 可行性分析 8
第4章 系统设计 9
4.1 总体设计 9
4.2 详细设计 10
4.2.1数据库设计 10
4.2.2功能设计 13
第5章 系统测试 23
5.1 系统测试的目的和意义 23
5.2 系统测试的目的方法 23
5.3 系统测试的过程 23
第6章 总结 32
6.1 收获与体会 32
6.2 缺点与不足 32
6.3 展望 32
参考文献 33
致 谢 34
第1章 绪论
1.1 研究背景
教育乃立国之本,只有拥有良好的教育,一个国家才能兴盛,才会有未来。考试作为检验教育水平的一种方式,得到广泛的认可。中考、高考、研究生考试等,各种考试屡见不鲜,在各种各样的考试中,都需要一份考卷。好的考卷可以检验考生的真实水平,让有能力的人有发挥的空间。因此如何组成一份高质量的考卷成了一件很重要的事。
随着教育体制的不断改革,高等院校的试卷也应该作出相应的调整,例如不能出现雷同卷、难度应该适当、应当有侧重点等。传统的手工出卷的方式容易出现知识点分配不合理、试卷难度过高或过低、印刷错误等问题,而计算机系统以其精确的计算能力可以避开这个问题。
计算机系统在配置相关的程序、数据库、服务器后,可以根据出题人输入的条件进行合理地组卷,减少组卷过程中发生的错误,减少了许多人为因素的干扰,体现了考试的公平性和合理性,所以利用计算机系统来生成试卷将成为一大趋势。设计编写试卷生成管理系统,是基于二种目的:一是充分利用现有的计算机系统减轻工作人员的劳动强度;二是摒弃传统的手工整理、以试卷(纸质)的形式存放到档案室,浪费纸张等原材料,不利于保护环境[1]。
1.2国内外研究现状
随着科技的发展,教育方式也发生了巨大的变化,由传统的书本教学到现在的网络化教学,教育方式日新月异。同时,教育作为培养国家人才的重要途径,世界各国都对教育的改革给予了高度重视。考试作为检验学生学习成果的方式之一,也有了很大的变化,越来越多的考试开始使用计算机系统进行辅助操作。
现在国际上的很多考试都开始利用计算机系统来辅助完成,例如Ruslan Mitkov 等人在2003 年创建了一个多选题的自动生成系统,这个系统可以从电子文档中读取知识点,编写一个算法,使得系统可以通过对这些知识点的智能分割来获取字段从而进行匹配生成题目;许多国际化的考试如美国的托福考试、雅思考试等都已经开始利用计算机系统辅助考试。其中考试的试题都没有通过人工的干预,而是利用计算机系统直接从试题库中取出。这体现了考试的公平性、合理性。利用计算机系统辅助考试要比传统的人工出卷更能够减少人为因素的干扰,同时也可以节省不少的人力、物力,给命题人提供了巨大的便利。
与西方发达国家相比,国内的计算机考试技术研究工作开展的相对较晚,但国内在网络远程教学研究工作也发展相当迅速。目前已经有很多高校陆陆续续地在网上建立了自己的考试系统并且开始进行相关研究工作,例如清华大学、北京大学、上海复旦大学等都是很典型的代表,这些高等院校利用计算机系统的精确性,组成一份合理的试卷供学生作答。除此之外,2003年,中南大学的唐雅媛等人,将本体概念引入到了试卷的自动生成系统中,提出了利用最近邻算法来进行试题的组成,从而形成一张试卷。各大教育网站也将网络化教育应用其中。例如牛客网可以根据用户提出的需求,自动选择一些题目供给用户练习,用户可以对练习的题目进行收藏操作,方便下次查看;同时,许多互联网公司的笔试测试会在牛客网上进行,通过这种方式,可以使异地考试得以实现。
1.3研究意义
考试作为检验学生学习成果的一种重要方式,得到了人们的认可和关注,如何组成一份高质量的试卷成了一件非常重要的事。传统的出卷方式为:命题者出卷,印刷试卷,考生答卷,教师批改试卷。这个过程极其繁琐,尤其是出卷的时候,容易出现很多问题。而利用计算机精确的计算能力,配置以适当的出卷算法、数据库和服务器等,可以很好的解决传统出卷方式遇到的问题,也可以大大降低命题者的工作量。基于以上情况,本文主要介绍了《数据结构》试卷生成系统的设计与实现。该系统开发的目的是为了方便教师对学生“数据结构”课程的学习成果的检验,节省人力。同时,解决传统组卷方式遇到的一些问题。基于以上要求,该系统以实用性和多功能性为原则,配置必要的数据库,向用户展现了一套布局合理、功能完善的《数据结构》试卷生成系统。
该系统支持教师对题库中的题目进行管理,包括增、删、改、查操作。在出卷时,可以根据情况,选择所出试题的难度和章节等,选题方式分为自动选题和手动选题。通过使用本系统,可以提高命题人在组卷时的工作效率,减轻命题人的工作负担,同时也可以解决传统组卷时遇到的一些问题。当然,由于试卷是根据命题人的要求从题库中随机选取题目组成的,还可以根据教师和学生的具体情况选择题目的章节、难度等,提高了考试的公正性与科学性。在如今信息化时代,采用计算机系统辅助考试将是以后教学发展的一大必然趋势。
第2章 开发技术和开发环境
2.1 开发技术
本系统采用的主要技术有:Java、JSP、jQuery、Struts2框架、Spring框架、MyBatis框架、MySQL数据库,下面逐一进行概括的介绍。
2.1.1 Java技术
Java是Sun公司开发出来的一套编程语言,主要设计者是James Gosling,最早来源于一个叫Green的项目,这个项目原来的目的是为家用电子消费产品开发一个分布式代码系统,这样就可以通过网络对家用电器进行控制[2]。
在本系统中,后台的业务逻辑处理主要是用Java语言编写的,即其中action层、service、层、dao层的代码是用Java语言编写的。
2.1.2 JSP技术
JSP即Java Server Page,是一种运行在服务器端的脚本语言,是用来开发动态网页的,该技术是Java Web程序开发的重要技术。通过使用JSP技术,可以在静态网页HTML代码中加入Java程序片段和JSP标签。
JSP技术还包括了两个重要的部分:EL表达式和JSTL技术。
EL表达式都是以“${”作为开始,以“}”作为结尾的,即${expression},该表达式的功能是在页面上显示变量expression的值。可以从page、request、session、application四种范围内读取对应的内容。
JSP标准标签库( JavaServer Pages Standard Tag Library,JSTL)是由 Apache 的 Jarkarta小组开发的一个开放源代码的JSP 标签库, 它的标准规范是由JCP( Java Commnunity Process) 制定并维护, JSTL 主要提供给 Java Web 开发人员一个标准通用的函数库,实现 Web 应用程序中常见的通用功能的定制标记库集, 这些功能包括迭代和条件判断、数据管理格式化、XML 操作以及数据库访问等[3]。