题库及试卷管理模块的设计与开发

题库及试卷管理模块的设计与开发[java毕业论文下载]

Smart系统—

题库及试卷管理模块的设计与开发

摘  要

SMART系统是一个采用新思路、新架构、新技术开发出来的一个新型智能在线考试信息管理系统,该系统主要实现了学生在线考试与评估以及对各种评估信息的管理和维护。本文针对教育工作的具体需求,用struts + spring + hibernate搭建的框架为设计平台,以B/S(Browser/Server)模式开发与设计题库及试卷管理模块。本设计为Smart系统的一部分。主要设计和实现了学校考试的出卷方式与试题库的管理。论文首先阐述了题库管理及试卷管理系统的详细需求分析、数据库的合理设计以及系统设计原理,给出了计算机管理环境下的题型分类、试卷生成的方法,并从科学、实用的角度构造系统功能模块,包括试题录入、题库维护、生成试卷、试卷管理等功能。其次介绍了各个模块功能的具体实现,包括:题库权限管理、手动出卷、自动出卷等。最后通过本模块的应用,可以满足评估系统中考试需求,对教育评估的发展起到一定的促进作用。

关键词:Struts;Spring;Hibernate;卷生成;题库;卷管理

 

 

The Smart System----

The Design and Implementation of an Exercise library Management Module

Abstract

Developed with new idea, structure, technology, SMART is online intelligent examination information management system; it realizes the function of online test, evaluation, and evaluation information management and maintenance. Aiming at the requirement of education, I use the framework of struts + spring + hibernate as a design platform, and B/S mode as development and design of item pool and paper management module. My design is part of the Smart system.  The design realizes the function of test paper design and item pool management. The theses, firstly, illustrate the principle of item management, database design and system design, then find out the solution of question type sorting, test paper generating in computer environment. The design also construct the function mode from scientific and pragmatic aspect, including test question input, item pool management, test paper generation etc. Secondly, the theses introduces the realization of each module function, including the power limit management of the item pool, manual generation of test paper etc. finally, Through this system application, may satisfy the educate appraisal demand, and promote the educational evaluation development.

Key words: struts; spring; hibernate; randomization test; test questions database; test management

 

目  录

论文总页数:22页

1引言 1

1.1课题背景 1

1.2国内现状 1

1.3本课题研究的意义 1

2相关理论知识及其技术 2

2.1系统开发环境及技术 2

2.1.1 开发环境 2

2.2框架介绍 2

2.2.1 Struts 简介 2

2.2.2 Spring简介 4

2.2.3 Hibernate 简介 4

2.2.4 SQLServer 2000 简介 4

2.2.5 JSP 组件 5

3需求分析和设计方案 6

3.1 题库管理 6

3.1.1 试题管理需求分析 6

3.1.2 试题管理设计方案 6

3.2试卷管理 7

3.2.1 试卷管理需求分析 7

3.2.2 试卷管理设计方案 8

4设计流程 9

4.1数据库设计 9

4.1.1 题库管理数据ER图及数据库表 9

4.1.2 试卷管理数据ER图及数据库表 11

4.2 系统实现 14

4.2.1 题库管理模块实现 14

4.2.2 试卷管理模块实现 16

5系统测试 19

5.1 测试环境 19

5.2 测试结果 19

     19

参考文献 19

     21

     22

 

 

 1引言

1.1课题背景

随着网络技术的飞速发展,现在很多国外的大学和社会其他部门都已经开设了远程教育,通过计算机网络实现异地教育和培训。现在,计算机硬件技术的发展已经达到了相当高的水平。但是,远程教育软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好、更完善的软件系统应用到远程教育当中去,给传统教育模式带来新的变革,并对教育的发展形成新的推动力。

本文以Internet为平台,研究了基于Web考试系统――题库管理模块和试卷管理模块的设计与实现,包括系统需求分析和系统功能设计以及数据库设计。重点阐述了题库管理模块和试卷管理模块的设计。

1.2国内现状

在我国,虽然远程教育已经蓬勃地发展起来,但是目前学校与社会上的各种考试大多数采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。然而在这个过程中人工手动出题和试题的选择是最为复杂的。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。

1.3本课题研究的意义

随着计算机应用的迅猛发展,网络应用不断扩大,如远程教育和虚拟大学的出现等等,且这些应用正逐步深入到千家万户。人们迫切要求利用这些技术来进行在线考试,以减轻教师的工作负担及提高工作效率,与此同时也提高了考试的质量,从而使考试更趋于公证、客观,更加激发学生的学习兴趣。

在线考试是现阶段研究开发的一个热点。它是建立在国际互联网上的应用系统,客户端的配置可以极为简单,使考试不受地域的限制。一个完备的在线考试系统可以使用户在网上学习后及时检验自己的学习效果,已发现自己的不足,使得学习效率得到很大提高。只要形成一套成熟的题库和生成试卷的自动化就可以实现考试的自动化,可以使教师方便的出卷,在出题模块设计了比较智能的出题方式,为教师提供很大的方便,这样一来,教师所要做的只是精心设计题目、维护题库,智能出卷就可以了,从而大大减轻了教师的负担,这表明其经济性是相当可观的。为了适应新形势的发展,我进行了这一系统的初步设计工作,也可以说是做一个初步的探索,希望它能够在各类考试中发挥高效、便捷的作用,把老师从繁重的工作中解脱出来!

2相关理论知识及其技术

2.1系统开发环境及技术

2.1.1 开发环境

(1)集成开发环境: JDK5.0+Eclipse3.1+MyEclipse4.0

(2)硬件环境:PC机  CPU:PIII 500以上,内存:256M以上

(3)开发语言: Java、SQL

2.2框架介绍 

本系统采用struts + spring管理的hibernate作为平台框架搭建的。

图1系统框架流程图

 

2.2.1 Struts 简介

1、MVC设计模式

MVC是一种设计模式,他强制性的把应用程序的输入、处理和输出分开。MVC把应用程序分成三个核心模块:模型、视图和控制器,他们分别担负不同的任务。图2显示了这几个模块各自的功能以及它们的相互关系。

图2 MVC设计模式

 

2、Struts概述

Struts最早作为Apache Jakarta项目的组成部分问世。这个名字来源于在建筑和旧式飞机中使用的支持金属架。它产生的目的是为了帮助开发者减少运用MVC设计模式来开发Web应用的时间。Struts框架是基于JAVA技术的,开发人员通过Struts框架可以充分利用代码重用和“一次编写、到处运行”的优点。它提供了一种创建Web应用程序的框架,其中对应用程序的显示、表示和数据的后台代码进行了抽象。

Struts是一个比较好的MVC框架,继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化和扩展。它采用的主要技术是Servlet,JSP和tag library。Struts架构是围绕一个Action Mapping把HTTP消息形式的用户请求转换成应用程序的动作。Action Mapping创建了一个Action对象来处理请求。一旦Action对象完成了一个任务,它就通过在一个JSP页面上写结果来直接回应一个用户请求,或者它可以让一个引用程序流动到其它地方作回应。

Struts作为一个MVC的框架,对Model、View和Controller都提供了响应的实现组件,对此分别做介绍,并且看它们是如何结合在一起的。

Controller:控制器的作用是从客户端接受请求,并且选择执行相应的业务逻辑,然后把响应结果送回到客户端,在Struts中由ActionServlet和ActionMapping对象组成。

Model:struts为Model部分提供了Action 和ActionForm对象。Struts建议在实现是把“做什么”(Action)和“如何做”(业务逻辑)分离。

View:Struts应用中的View部分是通过JSP技术实现的。Struts提供了自定义的标记库可以使用,通过这些自定义标记可以非常好地和系统的Model部分交互,通过使用这些自定义表创建的JSP表单,可以实与Model部分中的ActionForm的映射,完成对用户数据的封装,同时这些自定义标记还提供了像模板定制等多种显示功能。

2.2.2 Spring简介

Spring既是全面的又是模块化的。Spring有分层的体系结构,这意味着你能选择仅仅使用它任何一个独立的部分,而它的架构又是内部一致。它的设计从一开始就是要帮助你编写易于测试的代码。Spring是使用测试驱动开发的工程的理想框架。

Spring不会给你的工程添加对其它的框架依赖。Spring也许称得上是个一站式解决方案,提供了一个典型应用所需要的大部分基础架构。它还涉及到了其它framework没有考虑到的内容。

其中比较重要的两个模块有IOC和AOP。IOC即控制反转模式(也称作依赖性介入)的基本概念是:不创建对象,但是描述创建它们的方式。在代码中不直接与对象和服务连接,但在配置文件中描述哪一个组件需要哪一项服务。容器 (在 Spring 框架中是 IOC 容器) 负责将这些联系在一起。面向方面的编程,即AOP,是一种编程技术,它允许程序员对横切关注点或横切典型的职责分界线的行为(例如日志和事务管理)进行模块化。AOP 的核心构造是方面,它将那些影响多个类的行为封装到可重用的模块中。

2.2.3 Hibernate 简介

Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它使得与关系数据库打交道变得十分轻松,就像您的数据库中包含每天使用的普通Java对象一样,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是:Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。

2.2.4 SQLServer 2000 简介 

Server是一个关系数据库管理系统,它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的。于1988 年推出了第一个OS/2版本,在Windows NT 推出后,Microsoft与Sybase在SQL Server的开发上就分道扬镳了,Microsoft 将SQL Server 移植到Windows NT 系统上,专注于开发推广SQL Server WindowsNT 版本。SQL Server 2000是Microsoft公司推出的SQL Server数据库管理系统,该版本继承了SQL Server 7.0版本的优点,同时又比它增加了许多更先进的功能,具有使用方便、可伸缩性好与相关软件集成程度高等优点。SQL Server 不但可以应用于大中型数据库管理中,建立分布式关系数据库,并且也可以开发桌面数据库。事实上,SQLServer 数据库处理的基本结构,采取关系型数据库模式,尽管如此,相信大家都可以轻易的发现,在SQL Server 的数据库处理方式中,则是使用面向对象的操作方式与精神,也就是说,SQL Server的所有功能,都可以基于系统已经建立好的一些对象来达成,是相当OO面向对象的一个系统结构。SQL Server 企业管理器是 SQL Server 的主要管理工具,它提供了一个遵从MMC 标准的用户界面,使用户得以:

(1)定义 SQL Server 实例组。

(2)将个别服务器注册到组中。

(3)为每个已注册的服务器配置所有 SQL Server 选项。

(4)在每个已注册的服务器中创建并管理所有 SQL Server 数据库、对象、

登录、用户和权限。

(5)在每个已注册的服务器上定义并执行所有 SQL Server 管理任务。

(6)通过唤醒调用 SQL 查询分析器,交互地设计并测试 SQL 语句、批处

理和脚本。

(7)唤醒调用为 SQL Server 定义的各种向导。

2.2.5 JSP 组件

在传统的HTML文件中加入JAVA程序片段和JSP标签,就构成了JSP网页。JAVA程序片段可以操作数据库、重定向网页以及发送E-MAIL等,实现建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给用户端的仅仅为输出结果。JSP技术大大降低了对用户浏览器的要求,即使用户浏览器端不支持Java,也可以访问JSP网页。

当JSP容器接受到WEB用户的一个JSP文件请求时,它对JSP文件进行语法分析并生成JAVA Servlet源文件,然后对其进行编译。一般情况下,Servlet源文件的生成和编译仅在初次调用JSP时发生。如果原始的JSP文件被更新了,JSP容器将检测所做的更新,在执行它之前重新生成Servlet并进行编译。图3显示了JSP容器初次执行JSP的过程:尽管JSP在本质上是Servlet,但这两者的创建方式不一样。Servelet完全由java程序代码构成,擅长于流程控制和事务处理,而通过Servlet来生成动态网页很不直观;JSP由HTML代码和JSP标签构成可以方便的编写动态网页。因此在实际应用中,采用Servlet来控制业务流程,而采用JSP来生成动态网页。在Struts框架中,JSP位于MVC设计模式的视图层,而Servlet位于控制层。

 

图3 JSP容器初次执行JSP的过程

 

题库及试卷管理模块的设计与开发[点击下载]

如需要全部源码,联系QQ:2812491287如需要全部源码,联系QQ:2812491287

评论