试题库管理系统本科毕业设计目录引言 (1)第一章绪论 (2)1.1 工程研究的背景与意义 (2)1.1.1 工程研究的背景 (2)1.1.2工程研究的意义 (2)1.2研究现状以及研究容 (2)1.2.1研究现状 (2)1.2.2研究容 (3)第二章系统实现相关技术 (4)2.1开发框架技术 (4)2.2 数据库技术 (4)2.2.1 数据库 (4)2.2.2 SQL语句 (4)2.2.3 ORM (5)2.3 Ajax技术 (5)2.4 开发环境 (5)2.5 可行性分析 (6)第三章系统需求分析 (7)3.1 系统功能用例图 (7)3.1.1 用户 (7)3.1.2 教师 (7)3.1.3 管理员 (8)3.2 系统功能时序图 (9)3.2.1 教师模块时序图 (9)3.2.2 管理员模块时序图 (10)3.3 逻辑模型 (11)第四章系统设计 (16)4.1 系统功能的结构设计 (16)4.1.1 总体结构设计 (16)4.1.2 教师模块结构设计 (17)4.1.3 管理员模块结构设计 (18)4.2逻辑结构设计 (20)4.2.1 用户信息表 (20)4.2.2 角色表 (21)4.2.3 系部表 (21)4.2.4 专业表 (22)4.2.5 科目表 (22)4.2.6 章节表 (23)4.2.7 难度系数表 (23)4.2.8 单选题表 (24)4.2.9 多选题表 (25)4.2.10 判断题表 (25)4.2.11填空题表 (26)4.2.12简答题表 (27)4.2.13 试卷标题信息表 (28)4.2.14 单选试题表 (28)4.2.15多选试题表 (29)4.2.16 其它试题表 (30)4.2.17 试卷表 (30)4.3程序流程图 (31)4.3.1 系统前台模块流程图 (31)4.3.2 系统后台模块流程图 (32)4.4程序核心模块设计 (33)4.4.1登录模块 (33)4.4.2编辑个人资料 (34)4.4.3修改密码 (35)4.4.4试题模块 (35)4.4.5试卷模块 (36)4.5接口 (39)4.5.1 系统首页 (39)4.5.2 系统前台界面 (40)4.5.3 系统后台界面 (47)第五章系统测试 (51)5.1软件测试的目的与原则 (51)5.2 测试分类 (51)5.3 测试用例 (51)5.4系统调试时遇到的问题及解决方法 (52)结论 (54)参考文献 (55)谢辞 (57)引言现如今,计算机的广泛运用已经普及到千家万户,随着网络的飞速发展,但是教学软件的开发还依旧处于发展的低端,为了满足用户,在最短时间求得利益最大化,所以试题库管理系统的实现很有必要,试题库管理最核心的环节是试题和试卷模块,其中最难实现的是试卷模块,虽然已经步入网络时代,但是在我国,大多数教学任务还是使用传统方式完成的,比如在考试前,教师手忙脚乱的找题,究竟哪道题才是考试的重点,在找题和选题中绞尽脑汁,最后还得组织并且写成纸质版进行初审,浪费不少时间和精力,并且也不方便进行修改,人们也迫切希望使用计算机取代人工出题,从而减少教师工作量,提高效率,教师所做的仅仅是维护试题库,而不用手持一摞书,只需要一台计算机,一套完整的试卷就会呈现出来,经济性也是相当可观的。
本文对试题库管理系统进行了完整的论述,深入描述了该系统从设计到实现的整个过程,文章的基本结构如下:第一章:绪论部分。
主要阐述了工程研究的背景以及意义、研究现状以及研究容。
第二章:相关技术部分。
主要叙述了实现该系统用到的开发框架技术、数据库技术、Ajax技术、开发环境、可行性分析等容。
第三章:需求分析部分。
主要通过用例图、时序图说明该系统具有的功能模块,并且通过系统的逻辑模型来说明实体类之间的关系,以及各个实体拥有的属性。
第四章:系统设计部分。
该部分是本系统的关键章节,将系统的概要设计和详细设计合并为一部分进行描述,主要有系统功能的结构设计,通过系统的功能模块图进行该系统的模块讲解;接下来还叙述了该系统的逻辑结构设计,主要是对实现该系统用到的数据库表进行分析;通过绘制程序流程图对每一个用户操作流程进行说明,然后讲解了该系统实现的核心模块的输入、输出,采用的算法思想等;最后通过图片来显示系统的良好接口。
第五章:系统测试。
该章节主要描述了软件测试的目的与原则、测试的分类、测试用例以及系统调试时遇到的问题及解决方法等容。
第六章:结论。
该部分简单介绍了系统存在的缺陷以及对该系统的展望。
第一章绪论1.1 工程研究的背景与意义1.1.1 工程研究的背景面对教育、教学的现代化建设,考试也是必须完成的一项工作,而考试的核心部分是试题库的建设,如果没有试题库管理系统的支持,试题的存在也毫无意义,在整个考试的过程中,试题扮演着重要的角色,我们可以这么认为,试题库管理系统是在线考试、在线评分的支撑平台,如果这个平台搭建不好,或者实现不够完整,将会给后续的组卷、测试带来一定的影响,试题库中由于试题种类多,数据比较庞大,常规管理将会面临浪费时间、管理不便的问题,为了克服种种问题,把这一切交给具有强大功能的计算机来完成,从而达到更新方便、快速查找、组卷灵活,同时也降低了人员的工作强度,在计算机还未应用到各大高校中,试卷都是由教师或者工作人员管理,寻找试题或者亲自出题来组成试卷,最后提供给学生使用,近几年随着计算机在高校的普及使用,硬件设施发展颇快,考试系统是各大高校必不可少的,通过计算机来有效管理,方便师生,更是一种节约纸的选择,日积月累积攒了一大笔财富。
1.1.2工程研究的意义试题库管理系统为学校能方便快捷的举行考试,其效果与真实考试一样,不论在出题还是组卷,其容主要有前台和后台的开发,后台主要实现数据库的维护,供管理员使用,前台主要完成试题和试卷模块,供教师使用,这样做可以为教师节省大量时间,减轻工作量,提高效率,也可以作为高校方便教师使用的一种出卷工具。
1.2研究现状以及研究容1.2.1研究现状时代的发展,社会的进步,生活水平的提升,计算机越来越深入到我们的学习、工作、生活中,成为我们不可缺少的辅助工作,我们被它的强大功能所征服,深入到各行各业,利用它可以完成图像处理、文件传送、学习、娱乐。
尤其网络学习,可以带给我们无穷多的知识,在学校,学习是学生的天职,考试也是自我检测的关键,试卷也是必备品。
谈起试卷,传统的出卷方式,老师们必须提前花费时间和精力才能组出一份满意的试卷,比如说要预先考虑出所有试题的难度系数,所有题型,这是一个比较复杂的过程。
一个好的试题库管理系统,要求友好的界面,以及操作方便,容易录题,试题库维护简单,更新容易,组卷灵活快捷,能迅速找到自己想要的试题,还应该具备一定的安全性。
1.2.2研究容该试题库管理系统的主要容:1)用户登录模块:(验证用户的合法性,有教师、管理员二种不同类型的用户,登录成功后进入相应的页面进行操作)。
2)用户管理模块:(添加操作用户、条件查询用户信息、修改用户信息、注销用户等基本操作)。
3)试题库管理模块:(按题型管理,有多种题型,包括单选题、多选题、填空题、判断题、简答题五种题型,分别对应有增、删、改、查功能)。
4)试卷管理模块:(实现试卷的手动生成或者根据条件系统随机自动生成,可以进行预览,老师预览是带有答案的试卷)。
5)角色管理模块:(角色的增加、删除、修改操作)。
6)系部管理模块:(管理员可以继续增加系部、修改、删除等操作)7)专业管理模块:(管理员可以根据系部进行专业的分配,可以根据系部查询该系部所对应的专业)8)科目管理模块:(管理员可以根据系部和专业分配科目,可以根据系部和专业查询该专业拥有的科目)。
9)个人资料管理模块:(教师和用户可以查询个人资料,可以修改个人资料,也可以修改密码)10)退出系统:(用户成功退出系统)。
第二章系统实现相关技术本章节对试题库管理系统应用的技术做简单介绍,主要针对该系统用到开发框架、数据库、Ajax、JavaScript等技术方面的介绍。
2.1开发框架技术该系统采用的是三大框架SSH,也是目前比较流行的Web应用程序开发框架,第一个S代表的是Struts,第二个S代表Spring,H代表Hibernate,SSH为Struts + Spring + Hibernate的一个集成框架,它主要有四层:表示层、业务逻辑层、数据库持久层、域模块层,这样划分的蕴意在于给开发人员一个清晰的开发思路,并且后期维护相对操作简单。
Struts负责的是整体的基础架构,主要分离MVC。
Spring主要管理Struts和Hibernate,具体实现思路是:用面向对象的方法根据需求提出一些模型,将这些模型封装成基本的Java对象,然后采用Hibernate架构编写DAO层,通过DAO实现实体类与数据库之间的访问和转换。
2.2 数据库技术2.2.1 数据库该系统采用的是MySQL数据库,由瑞典MySQL AB开发,目前属于Oracle公司,在Web应用方面,MySQL是最好的关系数据库管理系统应用软件之一,一般用于小型系统,灵活性比较好。
2.2.2 SQL语句SQL(Structure Query Language,结构化查询语言),是计算机专用的数据库语言,无论是哪一个数据库,都可以是用SQL语言来访问和修改数据库的容,并且都遵循ASNI,即美国国家标准协会制定的SQL标准,SQL语言对于初学者比较容易理解,并且使用起来也相对灵活,SQL语言不但可以对数据库信息进行查询,而且还可以对数据库信息添加、删除、修改以及跳转等操作。
2.2.3 ORMORM代表关系映射,是一种程序技术,主要用于实现面向对象语言中不同类型数据库之间的转换,ORM的三个原则:易于理解性:以最基本的形式建模数据。
简答传达性:容易被多数人理解。
描述精确性:运用标准的语言创建结构。
2.3 Ajax技术Ajax是一种异步请求技术,它的核心是JavaScript、XMLHTTPRequest和DOM对象,系统通过JavaScript向服务器提出请求并做出响应,在这个过程中并不影响用户做别的操作。
Ajax的工作原理其实相当于在用户端和服务器端加了一个中间层,并不是所有用户的请求都直接交给服务器端完成,有的像一些数据验证和数据处理都交给中间层去完成,只有确定用户向服务器读取新的数据时,这时中间层才会向服务器端真正提出请求。
利用Ajax技术有许多优点,比如:无需刷新更新数据,让Web 应用程序与用户做出敏捷的交互,用户不用花费很长时间去等待,有良好的用户体验;它采用的是异步方式与服务器进行通信,不干涉用户的其他操作,优化了浏览器与服务器的沟通,减少多余的数据传输、在一定程度上减少了一定的流量损耗;前端与后端负载平衡,客户端可以为服务器端分担工作,Ajax是按照需求取数据,在很大程度上减少了对服务器端冗余的请求和响应;Ajax的另外一个优点是界面与应用分离,有利于分工合作,以免修改页面造成Web应用程序的错误。