1、山 东 大 学 硕 士 学 位 论 文分类号:TP311 单位代码:10422 密 级: 学 号:200412563硕 士 学 位 论 文论文题目: 基于J2EE架构的网上试题库系统设计与实现作 者 姓 名 专 业 指导教师姓名 2006年 04月 08日61原创性声明和关于论文使用授权的说明原 创 性 声 明本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究所取得的成果。除文中已经注明引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写过的科研成果。对本文的研究作出重要贡献的个人和集体,均已在文中以明确方式标明。本声明的法律责任由本人承担。论文作者签名: 日 期: 关于
2、学位论文使用授权的声明本人完全了解山东大学有关保留、使用学位论文的规定,同意学校保留或向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅;本人授权山东大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或其他复制手段保存论文和汇编本学位论文。(保密论文在解密后应遵守此规定)论文作者签名: 导师签名: 日 期: 目录摘要1ABSTRACT3第一章绪论511 课题背景512 现实意义613 国内外研究状况714 课题的技术路线715 论文的结构8第二章 J2EE与MVC模式介绍921 J2EE概述922 MVC模式概述1023 MVC模式在J2EE技术中的
3、应用1124 小结11第三章 系统分析1231系统的功能描述1232系统的建模分析12321统一建模语言UML12322系统的对象模型133221确定类和对象133221系统的静态视图14323系统的用例模型15324系统的流程模型2033小结21第四章 系统设计2241 功能模块划分2242 网络结构设计2343 系统框架设计2444 数据库设计25441 数据库表的总体设计25442 重要模块的数据库表设计264421 考纲的数据库表设计264422 试题拆分方案设计2745 主要功能模块的设计29451 考纲管理模块设计29452 试题管理模块设计31453 试卷管理模块设计3446 小
4、结37第五章 系统实现3851业务逻辑层的实现38511 EJB概述538512会话Bean的实现39513实体Bean的实现42514 DAO模式的使用44515值对象模式的使用4752 Web层的实现48521业务代理模式的使用48522 Servlet的实现49523 JSP的实现5053 系统的实现界面5154小结53第六章 总结和下一步工作55参考文献56致谢58摘要随着计算机网络和信息技术的飞速发展,网络教育日益流行。网络教育具有诸多优点:如信息量大,内容丰富、生动;教与学不受时间、地域的限制等等。网上考试是网络教育中的一个重要环节,网上试题库的设计以及试卷的组织则是网上考试的基础
5、。本文设计并实现了一个基于J2EE架构的网上试题库系统,用于为网上考试提供试题、试卷资源。开发该系统的目的是通过网络实现与考纲对应的标准化试题(包括多媒体试题)资源的数据库管理,实现试题资源的共享和快速分发,支持手工组卷与自动组卷,并为用户提供在线测试功能。系统采用基于J2EE的四层结构。客户层为用户提供可视化图形界面;Web层响应客户请求,为客户提供所请求的数据;业务逻辑层运行应用逻辑,完成客户请求中相应的计算和数据操作;数据层存储、管理数据信息。采用多层结构的方式使得系统具有很强的伸缩性、通用性、兼容性和可操作性,每一层能够专注于特定的角色和功能。在此基础上,系统使用了MVC、业务代理、D
6、AO、值对象等多种设计模式,使得系统结构清晰,具有良好的可扩展性、可维护性以及平台无关性。论文依照软件工程的思想将系统的开发分为三个阶段进行论述:在需求分析阶段,用UML建立系统的对象模型、功能模型和流程模型,确定系统的结构和行为;在系统设计阶段探讨了网上试题库系统的网络结构、系统架构并进行了系统的数据库设计,对一些关键问题如考纲的建立和试题的存储等做出解决,提出便于使用和扩展的无限级考纲树结构和试题的拆分存储方案,然后为考纲管理、试题管理、试卷管理等主要功能模块建立了详细的设计模型;在系统实现阶段,采用从下到上的开发思路进行系统实现做出说明,重点对业务逻辑层和Web层的实现做了论述,其中包括
7、了EJB、Servlet、JSP、JNDI等J2EE核心技术的使用以及业务代理、DAO、值对象等设计模式的运用,并给出了系统具体实现的实例。论文的最后总结了系统的优势和需要改进之处。在论文的完成过程中,本人主要做了以下工作: 用软件工程和面向对象的思想对系统进行分析与设计; 系统中考纲管理、题库管理、试卷管理等主要功能模块的实现; 系统实现过程中关键问题的解决,包括知识树的建立、试题拆分方案设计等; 对EJB、servlet、JSP、JNDI等J2EE核心技术的研究和运用。 对J2EE架构和MVC模式的研究,对DAO、值对象、业务代理模式的研究。关键词:J2EE、MVC 、EJB、试题库、设计
8、模式ABSTRACTWith the development of Internet and Information Technology, Online Education becomes more and more popular. Online Education has many advantages : such as large volume of information, informative, lively;Teaching and learning rescuing from the time, geographical restrictions and so on. On
9、line Examinations are an important part of Online Education. The design of Online Praxis Storehouses and forming papers is the base of Online Examinations. This paper introduces the architecture and the realization of the Online Praxis Storehouses system based on J2EE.The system achieve the database
10、 management of standardlized praxis rescouces and achieve the sharement and the quick dispense of praxis rescouces.More over, it offers forming papers in manual or automatic way, and enable users testing online. The system employs J2EE four-tier based structure.Browser provides visual graphic interf
11、ace; Web Server responds to the requests of the clients. Application Server processes application, computation and data operation; DB Server stores and administrates information.The impleme- ntation of multi-tier structure enables the system to have distinguished quality of flexibility, currency and
12、 compatibility.This paper dissertates the process of the development of the Online Praxis Storehouse system which is divided into 3 phases according to the software engineering ideology :In needs analysis phase, I established the Functions Model and the Objects Model using the UML system to determin
13、e the structure and behaviour; In the system design phase I discussed the network structure of the system, the structure of the system and the database system designing,solving some important problems such as the establishment of knowledge and the storage of proxis.And then I established the design
14、model for some major function module.In the Realization phase I maked instruction of the process by bottom-up development method, including EJB, Servlet, JSP, JNDI, and other core technologies of J2EE and the use of design patterns such as Business Delegate, DAO, Value Objects etc.In the final of th
15、is paper I summarized the advantages and the places needing improving of the system. In the process of dealing with this Paper,I have finished many works following: Analyzing and designing the system according to the Software Engneering ideology; Realization of some major function module; Solving so
16、me key problems such as the establishment of knowledge and the storage of proxis; Researching and using many core technology such as EJB、JSP、JNDI,etc; Researching the Structure of J2EE and the pattern of MVC,and some design patterns such as Business Delegate, DAO, Value Objects etc.Key Words J2EE, M
17、VC, EJB, online praxis storehouse, design pattern第一章 绪论11 课题背景在信息技术飞速发展的今天,网络技术的应用越来越广泛,如何利用Internet和校园网开展网络教育正受到人们的普遍关注。网络教育是一种现代教育模式,是指教与学双方在时空分离的情况下,利用现代教育技术,保持教学双方的双向信息联系,自主的完成施教与学习活动的过程。网络教育具有鲜明的特色:信息量大,内容丰富、生动;教与学不受时间、地域的限制;提供多种学习方式,能够依个人特点进行学习。它的出现必将为教育的普及化、终身化、现代化和个性化的发展提供一种崭新的途径。网上考试是网络教育的一
18、个重要组成部分。它打破了传统的考试模式,将传统考试过程中的试卷组织、审定印制、传送收集、登记发放、评判归档各个环节缩小到一至两个环节,几乎屏蔽了所有人工直接干预考试活动的可能性,不但能够节约大量的时日、人力、物力与财力,而且还可以大幅度提高考试成绩的客观性和公正性。在网上考试的实现过程中,题库建设以及试卷的组织是必不可少的环节。所谓题库,是“按照一定的教育测量理论,在计算机系统中实现的一个或几个学科题目的集合”。1题库有两个独特的优越性:第一是管理上的优势,体现为使用题库的高效、经济、灵活和保密;第二是测量上的优势,体现为由题库生成的试卷具有高质量、可预控等特点。以往的题库的建设中,人们主要使
19、用单机版试题库。建立题库是一个复杂的系统工程。首先要建立系统的模型,然后确定试题的属性指标以及试题的组成结构,再组织大批量的优秀学科教师编写试题。一个相对完整的题库系统,需要成千上万道试题,编写和测试这些试题的工作量无比巨大,是单机版题库所不能实现的,并且不能有效地发挥试卷统计分析的功能。网上试题库系统的出现为解决单机版题库系统运行中存在的问题提供了可能。系统在一个Web服务器上运行,通过浏览器访问,使得实现广泛的网络共享、集中的安全控制和友好的使用界面达到了完美的统一。它提供了传统单机题库系统不具备的一些特点:(1)集中管理 共享使用:由于题库对试题的质量要求较高,一般试题的增、删、改都是通
20、过专家确认后进行的。分散运行的题库,一般都无法保持一个专家群体,通过命题教师的自主修订,容易导致题库总体质量下降,故一般题库都是由统一的权威机构来进行维护和管理。而题库同时要具备广泛的使用才真正具有价值。对于单机题库来说,这是一对不可调和的矛盾,网上试题库则可以解决此问题。由权威机构建立一个Web站点,统一管理和控制试题库,经过授权的用户,可以通过浏览器自由使用,包括填充题库、组卷、测试等。(2)开放建设:通过网络,可以广泛征集试题和实施大范围的抽样测试,用户只要通过浏览器连接到Internet,便可在任何地方、任何时间方便地使用题库包括提交试题、修改试题、参加测试等操作。用户提交的试题,经专
21、家审订后,便可正式加入题库中。通过Internet来征集试题和组织抽样测试,可以大大减轻建立题库的成本、缩减建立题库的时间、提高题库的运行质量。(3)集中存储测试数据:在Internet上运行题库,进行联机测试和评价,可以集中保存测试数据,通过统计和分析,从而较正试题参数的估值错误,剔除不好的试题,保证试题质量。(4)简单易用:用户只要通过浏览器,连上网络,便可在图形用户界面的引导下,轻松使用,无需复杂的配置、安装和管理,大大降低了对题库使用者的技术要求。12 现实意义本文介绍的网上试题库系统是会计从业资格考试网上考试系统的一部分,该项目由新疆财政厅、四川财政厅、天津市财政局联合发起,委托山大
22、鲁能信息科技有限公司完成。该项目的目标是改变会计从业资格考试原有的考试模式,使会计从业资格考试实现网络化和无纸化。会计从业资格考试是一个在全国范围内进行,由各省(直辖市、自治区)财政厅(局)组织的资格认证类考试。参考人员多、地域分布广是该项考试的特点。在以往的该项考试中,从组织出卷到试卷的印制及试卷的管理等工作非常繁琐且工作量很大,传统的组织管理方式不仅工作任务繁重,而且在试卷的标准化程度、难易程度、题量大小等各方面难以控制。为了提高考试质量,规范化考试过程,尽量减少人为因素对考试的影响,使考试更具客观性、科学性,考试主办单位提出了使会计从业资格考试实现网上考试的需求。我的研究内容是网上考试系
23、统的分析、设计与实现,但是由于项目的时间与论文研究时间的限制,此论文只对网上考试系统的一部分网上试题库系统做了重点研究。网上试题库作为网上考试系统的重要组成部分,担负着为网上考试提供试题、试卷资源的任务,如何更高效的存储、管理题库中的试题、组成有效的试卷是开发网上试题库系统时应解决的主要问题。13 国内外研究状况目前国内外有许多的网上考试。例如,美国ETS组织的“计算机文化考试”、“高级就业计算机科学考试”、“专业领域考试”、“TOEFL”、 “GRE”;英国计算机学会BCS和IDPM分别组织了计算机考试,并普及到英联邦国家;日本于1969年开始设立“信息技术人员考试”,成为仅次于高考的第二大
24、考试;国内的网上考试有人事部和信息产业部组织的“中国计算机软件专业技术资格和水平考试”,教育部组织的“全国计算机等级考试”,全国电大网上考试,教育部从剑桥引进的“剑桥信息技术(CIT)证书考试”,以及CISCO认证考试、微软认证考试、NOVELL认证考试、IBM认证考试等等。在这些考试中考试中,广泛采用了试题库系统,有些试题库系统可以支持自适应考试。这些系统,有的由考试机构控制,有的作为商品出售,产生了巨大的经济与社会效益。但随着这些系统的运行,也出现了很多的的问题。在诸多的原因中,存在的主要问题是已有试题库系统的维护和更新不方便。试题库系统随着学科内容的发展变化,必须不断的更新。但现有的试题
25、库系统往往其试题数据库的开放性不够,用户对已有试题的维护不方便。而且,对要录入的试题的内容有一些限制,如图表、图片、公式、图像、乃至多媒体信息等数据,都不能很好的处理。本文介绍的网上试题库系统,采用无限级考纲树结构来管理考纲知识点,可以随学科内容的变化适时更新;使用试题拆分方案存储试题,使试题的检索更加方便,物理存储更加高效;并支持图片、声音、图像等多种格式多媒体试题。在开发过程中,采用目前流行的J2EE体系结构,部署上方便、移植灵活、易于维护和具有可伸缩性可以使试题库系统更具开放性和扩展性。14 课题的技术路线网上试题库系统将J2EE (Java2 Enterprise Edition)和M
26、VC (Model View Control)模式相结合,使界面与业务逻辑彻底分离,在系统架构中各司其职、互不干涉,具有较强的伸缩性、通用性和可操作性。在开发过程中,用统一建模语言UML (Unified ModelLanguage)对系统进行详细分析,并给出系统的具体设计,包括系统架构设计、数据库设计、各功能模块设计,其中涵盖了对设计模式的研究和使用,如DAO模式、值对象模式、业务代理模式等,并给出了实现的实例。对一些关键问题如考纲的建立和试题的存储等做出解决,提出便于使用和扩展的无限级考纲树结构和试题的拆分存储方案。在开发过程中,重点对网上试题库系统的业务逻辑层(EJB层)和Web层进行了
27、研究并对EJB、Servlet、JSP以及设计模式的使用进行了探讨。系统建模工具为Boland Together,开发的主要工具为JBuilder2005,应用服务器选用Weblogic8.1.3支持,后台采用Oracle 9数据库。15 论文的结构第一章 绪论,阐明了本项目的的产生背景、现实意义、国内外研究状况、技术路线。第二章 介绍了J2EE多层体系架构和MVC设计模式,并将J2EE架构与MVC模式结合使用。第三章 网上试题库需求分析,简述系统的功能,并用UML对系统进行建模分析。第四章 详述了网上试题库系统的设计,包括网上试题库系统的功能设计、网络结构设计、数据库设计以及主要功能模块的设
28、计。第五章 介绍网上试题库系统的实现,以系统的部分实例论述系统的实现过程。第六章 结论部分,对论文的工作做了总结,并对系统的改进提出了自己的建议与设想。第二章 J2EE与MVC模式介绍21 J2EE概述J2EE体系结构是SUN公司于1999年底主持推出的一项企业计算平台规范,它定义了包括平台角色、组件模型、标准服务等一系列规范。J2EE系统一般是由客户层、Web层、业务层和数据库层构成的多层系统。客户层由浏览器或其他一些基于网络的系统(如手机和PDA等)组成。Web层组件可以由JSP页面、Applets及Servlets组成,通过容器支持诸如客户请求和响应以及EJB查询等。业务层又经常被称为E
29、JB层,所有特定领域的相关业务代码由运行于业务层的EJB来执行。Web层和EJB层通常被封装在一个应用服务器中,它们构成了三层系统的中间层。图2-1是一个J2EE应用程序的框架。2客户层企业信息系统层业务层WEB层J2EE 服务器客户机数据库其他客户端数据库EJBEJBJSPJ2EE平台J2EE平台ServletEJBJSPJavaAppletPureHTMLEJB容器浏览器Web服务器EIS 服务器图2-1 一个J2EE应用程序EJB是J2EE体系结构的核心,在功能上分为会话Bean(Session Bean)和实体Bean(Entity Bean)。会话Bean执行商务逻辑、规则和工作流程
30、,是具有商务过程逻辑的可重用组件。实体Bean将底层数据以对象的形式映射到内存中,供其他组件使用。这种将商务逻辑与底层数据分离的作法,使得应用可以适应不同分布系统的需要,增强了系统的可移植性和可扩充性。22 MVC模式概述 MVC英文即Model-View-Controller,即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分类,分成三个层模型层、视图层、控制层。模型层:是执行某些任务的代码,而这部分代码并没有任何逻辑决定它对用户端的表示方法。模型层只有纯粹的功能性接口,也就是一系列的公开方法。通过这些公开方法,便可以取得模型层的所有功能。在这些公开
31、方法中,有些是取值方法,让系统其他部分可以得到模型层的内部状态参数,其他的改值方法则允许外部修改模型端的内部状态。视图层:数据在客户端的表现形式。比如Excel表格,一个饼图、一个棒图和一个表格均是同组数据的不同的视图端,当用户通过任何一个视图修改数据时,所有的视图都会按照新数据更新自己。 控制层:MVC模式的视图层是与MVC模式的控制层结合使用的。当用户端与相应的视图发生交互时,用户可以通过视窗更新模型的状态,而这种更新是通过控制端进行的。控制器端通过调用模式端的改值方法更改其状态值。与此同时,控制器端会通知所有的登记了的视图刷新显示给用户的表示。图2-2是典型的MVC通信方式:3图2-2
32、MVC通信方式23 MVC模式在J2EE技术中的应用MVC模式并不能自动保证一个结构设计是正确的,如何在一个系统的设计中正确得使用MVC架构模式与系统所使用的技术有密切的关系。在一个使用JSP、Java Servlet、EJB的J2EE系统中,一般采用以Servlet为中心的设计模型。其架构图如图2-3所示: 图 2-3 J2EE与MVC模式结合使用此模型将显示数据的逻辑与商务逻辑分割开来,从而使得系统的层次更加清楚。由于商务逻辑和显示数据的逻辑是分开的,因此两者可以独立演化。在这个模型里,系统的活动时序如下所示: Servlet相当于控制器 (Controller)角色,它负责接收客户端请求
33、并处理此请求。 根据请求的类型,Servlet可以选择创建一个EJB/JavaBean对象,并从请求的处理过程中取得的结果作为初始化参数传给EJB/JavaBean对象。 Servlet也可以直接存取数据库中的数据。 Servlet将请求传递给合适的JSP,而JSP则显示给用户。 JSP仅仅从EJB/JavaBean中读取数据,EJB/JavaBean直接与数据库打交道。JSP不与数据库打交道。 JSP返还给客户端。24 小结本章介绍了J2EE架构,并讨论了MVC模式,以及J2EE与MVC模式的结合使用,为开发J2EE架构的网上试题库系统做了技术准备。第三章 系统分析系统分析是软件工程中的重要
34、阶段,是所有开发的依据。在系统分析阶段,通过对系统的综合研究,对问题域进行抽象,准确的理解系统需求和系统内部运行机制,有助于准确的掌握系统的需求,从而正确定义问题域,确定软件开发的具体内容。通过系统分析,要完成确定系统需求的内容、确定所有涉及到的要素、为当前需要解决的问题建立相应的模型等工作。在对网上试题库系统进行系统分析的过程中,我们采用面向对象分析(OOA),应用可视化面向对象建模技术 UML建立系统模型。31系统的功能描述网上试题库系统是网上考试系统的一部分,开发网上试题库系统的目的是按照考试大纲需要在线实现标准化试题资源的数据库管理,提供便捷的组卷方式以及试题资源的共享和快速分发,并且
35、为用户提供在线测试功能。该系统根据管理对象和层次不同具有以下功能: 通过Web方式,进行用户管理。主要是实现试题库管理员操作用户及其操作权限的管理,完成用户的新增、注册、登录及权限设置。 通过Web方式,进行考纲管理。为试题库管理员提供考试大纲的增加、删除、查找、修改等管理功能,同时对每门课程提供课程大纲(知识点)的方便的编辑环境 通过Web方式,进行试题管理。提供标准的多媒体题库管理功能,包含对题库进行分类浏览、面向教师的题目录入、修改、删除功能,面向试题库管理员的试题审查功能;提供详细直观的题库试题统计分析工具。 通过Web方式,实现试卷的生成与管理并可在线试做试卷。包括面向教师的人工组卷
36、、自动组卷并提供完善的试卷库管理功能,可供教师浏览、修改、删除、查询等操作;面向管理员的试卷审核功能;面向所有用户的在线试做试卷功能。32系统的建模分析321统一建模语言UMLUML (Unified Model Language)是一种可视化的建模语言,是运用统一的、标准化的标记和定义来实现面向对象的软件分析和设计的一种方法,是面向对象方法用来表述系统设计的图形表示法,用来表达、叙述、构建和记录复杂软件不同方面的语言。在 UML中,从任何一个角度对系统所做的抽象都可能需要用几种模型图来描述,而这些图最终组成了系统的完整模型。4UML的模型主要通过一系列相关的图来表达。在UML中,共定义了九种
37、图,表示静态关系模型的图有用例图、类图、对象图。表示动态模型关系的图有状态图、序列图、协作图、活动图、组件图和部署图。这九种图的具体描述与讲解可以参见相关的书籍,这里就不再赘述。在对网上试题库系统进行分析过程中,我们使用UML分别从静态、动态两个方面,主要采用类图、用例图和活动图等对系统进行建模。322系统的对象模型对象模型表示静态的、结构化的系统“数据”的性质。它是对模拟客观世界实体的对象以及对象彼此间的关系的映射,它描述了系统的静态结构。在建立对象模型时,我们的目标是从客观世界中提炼出对具体应用有价值的概念。一个问题可以分解成多少个对象依赖于对问题性质的了解和判断,没有一成不变的表示。“问
38、题域”是指一个包含现实世界事务与概念的领域,这些事务和概念与所设计的系统要解决的问题有关。而建立对象模型又称为问题域建模、域建模,也就是找到代表那些事务与概念的“对象”。建立系统的对象模型典型的工作步骤如下:首先确定对象类和他们之间的关联(因为它们影响系统整体结构和解诀问题的方法),对于大型复杂问题还要进一步划分出若于个主题;然后给类和关联增添属性,以进一步描述它们;接下来利用适当的继承关系进一步合并和组织类。而对类中操作的最后确定,则需等到建立了功能模型之后,因为功能模型更准确地描述了对类中提供的服务的需求。3221确定类和对象对象存在于现实世界中,它可以是系统的任何一部分。而软件系统中的对
39、象并不直接存在于现实世界中,它可以看成是通过研究现实世界中的对象结构和行为而派生出来的,具有身份、状态和可激发行为的离散实体。类定义了一组有着相同或者相近状态和行为的对象。任何在问题域中的名词都有可能派生为对象,进而生成类。网上试题库系统中的对象有很多种,既可以是试题库管理员、教师、普通用户、试题、考纲、试卷、答卷等现实世界的实体,也可以是试题属性、试卷总体信息、组卷规则等从现实世界中抽象出来的概念。通过分析,我们大致确定出如下系统的类:试题库管理员:(编号、角色、权限)具有试题库管理员权限的用户负责管理网上试题库系统的所有用户信息、管理和维护考纲、查询和审核题库中已有试题、审核和管理试卷库中
40、已有试卷的使用权限。教师:(编号、角色、权限)具有教师权限的用户负责向题库中录入试题及维护题库中的试题、组卷及维护试卷库中已有试卷。普通用户:(编号、角色、权限)具有普通用户权限的用户允许在线试做具有试做权限的试卷,并可以在提交试卷后查看答案。考纲:(编号、名称、层次、父节点)将考试大纲以知识树的形式存储、维护。试题属性:(试题编号、类型、难度、认知分类、区分度)试题除内容外的属性,成为组卷问题的问题空间。选择题:(试题编号、类型、文字题干、文字选项、答案、多媒体题干)存放和操作选择题内容。问答题:(试题编号、类型、文字题干、多媒体材料、答案)存放和操作问答题内容。多媒体材料:(编号、文件名、
41、格式、内容、所属试题)用于存放和操作试题中的大对象材料。试卷总体信息:(试卷编号、试卷名称):存放试卷的总体属性信息。组卷规则:(试卷编号、平均难度):用于对组卷规则的设置和管理。试卷:(试卷编号、试卷题号、试题编号):存放试卷的题号与试题库中实体的对应关系。答卷:(试卷编号、考生号、试题编号、答案):存放考生的答卷。3221系统的静态视图静态图描述了系统中对象的数据结构、数据操作及其对象之间的关系。在上述基础上,给出了系统的高层静态视图,用来反映系统内部类之间的关系以及类的职责,如图3-1所示: 图3-1 系统的高层静态图323系统的用例模型在系统的分析阶段,我们建立一个反映系统行为的动态模
42、型,即用例图。用例图是参与者(系统外部用户)所能观察的系统功能的模块图,它描述参与者与系统提供的用例之间的某种联系。用例是系统中的一个功能单元,是对系统提供的功能的一种描述,是参与者与系统之间的一次交互过程。参与者是那些可能使用这些用例的人或外部系统。用例图就是从参与者的角度描述出系统中的用例和参与者,以及用例与参与者之间的关系(哪个参与者参与了哪个用例的执行)。在网上试题库系统中主要有三类用户:试题库管理员、教师和普通用户。试题库管理员负责管理网上试题库系统的所有用户信息、管理和维护考纲、查询和审核题库中已有试题、审核和管理试卷库中已有试卷的使用权限。教师负责向题库中录入试题及维护题库中的试
43、题、组卷及维护试卷库中已有试卷。普通用户允许在线试做具有试做权限的试卷,并可以在提交试卷后查看答案。下面用例图分别描述了在试题库系统的使用中,试题库管理员、教师和普通用户各自的行为。图3-2 试题库管理员用例图图3-3 教师用例图图3-4普通用户用例图用例图只是表达了用例间及用例和参与者间的关系,我们还必须文档化每个用例的具体内容,这可以用参与者与系统交互的事件流来表达,用例必须从参与者而不是系统的角度进行描述。下面介绍系统的几个主要用例描述:i 考纲管理:功能描述:本功能是提供对知识点以及考纲的管理。前置工作:用户已经正确登陆事件流:1、点击“考纲管理”。2、屏幕显示考纲管理界面,界面为框架
44、结构,提供科目下拉列表入口。3、选择已有科目,若要新建科目,则点击新建科目按钮,屏幕左侧显示树结构,根节点名称“新建节点”,屏幕右侧显示新科目属性表,科目编号自动添加,其余属性为空。4、屏幕左侧框架内显示该科目的知识树结构,为无限级树结构。右侧框架内显示获得焦点的节点的属性,默认为科目的属性,并有可进行的操作下拉列表可以对考纲树节点进行相关操作(增加节点、插入节点、删除节点、修改该节点)。5、单击科目名称,知识树将展开所有的下一级节点,同时屏幕右侧显示该科目的属性列表(科目编号、科目名称、科目描述等)。并有可进行的操作下拉列表可以对该节点属性进行修改。除了科目编号不允许更改外,其余属性均属于可
45、更改状态,修改这些属性,点击提交修改,屏幕弹出警告菜单,确认修改,屏幕显示修改成功,并显示修改后的科目属性。6、单击科目下的其中一个节点,知识树将展开该节点所有的下一级子节点,同时屏幕右侧显示该节点的属性列表(节点编号、节点名称、节点内容、节点描述),除了节点编号和所属科目不允许更改外,其余属性均属于可更改状态,修改这些属性,点击提交修改,屏幕弹出警告菜单,确认修改,屏幕显示修改成功,并显示修改后的该节点属性。7、返回6直到知识点节点维护完毕。ii 试题管理功能描述:主要是根据试题库中的内容, 按照需要完成试题的创建,同时可以进行修改,以及删除等功能。前置工作:用户正确登陆,同时试题库中具有内
46、容。事件流:1、选择“试题管理”,用户进入管理试题界面。2、屏幕显示科目题库下拉列表,包括:编号、科目题库名称、试题数量。3、选择一科目题库。4、屏幕左侧显示该科目题库知识树,右侧显示增加试题、查询试题、修改试题、删除试题、该题库中试题的统计信息和试题列表。试题列表包括:编号、试题类型、试题快照(或试题内容)、分值、难度系数、知识点、认知类型、参考答案(活动列表大小可拖动)、批改类型(自动批改和人工批改两种),列表可分页显示。1) 试题统计信息有:a) 该题库所包含的所有试题数量;b) 各种试题类型的试题数量及在试题总量中所占的比例;c) 各章节的试题数量及在试题总量中所占的比例;d) 各种难度分布的试题数量及在试题总量中所占的比例;e) 各种认知程度的试题数量及在试题总量中所占的比例;2) 可设定的查询条件有:a) 试题类型;b) 试题所属的章节;5、点击右侧查询试题。点击左侧知识树,若点击章,知识树按该章下的所有节展开。点击右侧查询试题,屏幕右侧