【毕业学位论文】(Word原稿)基于J2EE的通用考试系统的设计与实现-软件工程_第1页
【毕业学位论文】(Word原稿)基于J2EE的通用考试系统的设计与实现-软件工程_第2页
【毕业学位论文】(Word原稿)基于J2EE的通用考试系统的设计与实现-软件工程_第3页
【毕业学位论文】(Word原稿)基于J2EE的通用考试系统的设计与实现-软件工程_第4页
【毕业学位论文】(Word原稿)基于J2EE的通用考试系统的设计与实现-软件工程_第5页
已阅读5页,还剩68页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

I 硕士学位论文 (专业学位) 基于 通用考试系统的设计与实现 姓 名: 学 号: 所在院系:软件学院 职业类型:工程硕士 专业领域:软件工程 指导教师: 副 指导教师 : 二 一 三 年 九 月 A in 22013 基于J 2 E 同济大学 学位论文版权使用授权书 本人完全了解同济大学关于收集、保存、使用学位论文的规定,同意如下各项内容:按照学校要求提交学位论文的印刷本和电子版本;学校有权保存学位论文的印刷本和电子版,并采用影印、缩印、扫描、数字化或其它手段保存论文;学校有权提供目录检索以及提供本学位论文全文或者部分的阅览服务;学校有权按有关规定向国家有关部门或者机构送交论文的复印件和电子版;在不以赢利为目的的前提下,学校可以适当复制论文的部分或全部内容用于学术活动。 学位论文作者签名: 年 月 日 同济大学学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师指导下,进行研究工作所取得的成果。除文中已经注明引用的内容外,本学位论文的研究成果不包含任何他人创作的、已公开发表或者没有公开发表的作品的内容。对本论文所涉及的研究工作做出贡献的其它个人和集体,均已在文中以明确方式标明。本学位论文原创性声明的法律责任由本人承担。 学位论文作者签名: 年 月 日同济大学 硕士学位论文 摘要 i 摘 要 现在很多高校借助于校园网资源,利用数据库技术实现可以随时随地进行测试的考试系统,但是大多数考试系统都不具备通用性。基于 用考试系统正是在这种形势下应运而生的,它可以适用于不同学科专业不同课程的考试。 基于 用考试系统主要是利用 量级 架构 技术 实现的, 将应用分为表示层、业务层、持久层 。 表示 层 借助 架 来实现; 业务 层 使用 行处理; 数据持久层 使用 架来 实现, 另外 架还负责对其他两个框架的管理工作 。三个层次职责 划分 明确 ,层次之间 通过面向接口编程 进行通信 , 降低了 系统 代码之间的 耦合 性提 高 了 内聚性 ,有利于系统的 功能 扩展和维护 。为了实现考试系统的通用性,在功能设计 上 添加了对学科专业和课程的管理, 系统管理员可以根据需要添加修改 课程 。 系统采用随机算法进行自动组卷,允许教师在考前设置试卷参数,系统自动根据这些参数组成试卷。另外系统针对不同题目使用不同的阅卷技术,使得评分结果 更加科学合理。 论文 全面阐述了 基于 量级架构 的 开发 ,对通用考试系统进行详细分析和设计 , 讨论了系统的一些关键功能的实现算法 , 并以系统的主要功能模块 题库管理 为例详细论述了系统的实现 。 通用考试系统 实现了 课程管理、 题库管理 、自动 组卷、试卷 管理 、考试 管理、自动 评阅、 考试 统计分析 等 功能 ,能够对满足各个学科专业课程的考试和练习的需求 。 关键词: 通用考试系统;组卷 of is on is in a it to 2EE is is of of In to of so In a a a 2EE of of of to 硕士学位论文 目录 I 目 录 第 1 章 绪 论 . 1 究背景 . 1 内外的研究现状 . 1 外考试系统的比较研究 . 1 内考试系统的比较研究 . 2 前系统存在问题 . 2 课题的 主要工作 . 3 文的组织结构 . 4 第 2 章 系统平台介绍 . 5 2术概述 . 5 2心技术 . 5 2构 . 6 2轻量级架构 . 7 统的 构的不足 . 7 量级开发概念 . 7 量级 构 . 8 统开发工具简介 . 9 发工具 . 9 据库管理系统 . 10 务器 . 10 第 3 章 通用考试系统的分析与设计 . 11 统整体架构 . 11 统需求分析 . 13 统可行性 . 13 统性能需求 . 14 统用户需求 . 15 统功能需求 . 15 统角色划分 . 17 统功能模块 . 17 统数据库 . 20 据库需求 . 20 据库的概念设计 . 21 据库逻辑设计 . 22 第 4 章 通用考试系统的实现 . 28 同济大学 硕士学位论文 目录 统架构 . 28 统各层的实现 . 30 型层的实现 . 30 据持久层的实现 . 31 务逻辑层的实现 . 33 示层的实现 . 34 统功能模块的实现 . 37 动组卷的实现 . 37 动阅卷的实现 . 41 印报表的实现 . 44 页技术的实现 . 47 库管理的实现 . 50 第 5 章 总结与展望 . 55 结 . 55 望 . 55 致谢 . 56 参考文献 . 57 个人简 历、在读期间发表的学术论文与研究成果 . 59 第 1 章 绪论 1 第 1 章 绪 论 究背景 计算机技术已经广泛 应用到了各个领域 各个行业,代替人们完成部分日常工作。又由于网络技术和数据库技术的快速发展,基于计算机网络的考试方式 已经 成为必然的趋势,也成为计算机教育教学改革中的一个重要环节。基于网络的考试系统通常是指通过计算机对某课程进行考核评估的综合管理系统,与传统的笔试不同,它可以节约大量人力资源、安排灵活、评卷客观公正、试题保密性强、评分迅速准确客观、 分析统计方便快捷等优点。由于基于网络的考试具有这些优势,在各种考试中越来越多地采用了计算机考试。 改为 司把企业用户、厂商及技术专家聚集到 发的企业级 准,是一种利用 平台来简化企业解决方案的开发、部署和管理等复杂问题的体系结构。它不仅巩固了标准版中的许多优点,如 “ 的特性、方便存取数据库的 及能 够在 用 中保护数据的安全模式等,同时还提供了对 及 术的全面支持。同 比它具有高效的开发、支持异构环境、可伸缩性、稳定的可用性、支持厂商多等优点。本文在台基础上使用优秀框架 计开发 一个 优秀的 通用考试系统方案。 内外的研究现状 目前使用的 大多数考试系统针对性都较强,没有实现 对不同学科不同专业不同课程都适用的 考试系统,另外大多数的考试系统组卷效率较低,系统的维护较困难,不利于功能的扩展。并且伴随着时代的发展和科技的进步,基于网络的考试系统所依赖的试题库也渐渐暴露出一些问题,比如知识更新速度慢、资源不足等。 高速发展为试题库的发展和应用创造了有利的条件。人们所梦想的学习方式例如随时随地的学习、作业、考试、答疑 等 有了实现的可能。 光明日报出版社 在 1991 出版了国家教委考试中心主编题库建设理论与实践 中指出考试试题内容的有效性和试卷结构的合理性受到教学目标和学科层次的 限制,同时教学目标和学科层次也是进行试题的规划和设计的根本依据 1。 外考试系统的比较研究 同济大学 硕士学位论文 基于 通用考试系统的设计与实现 2 国外比较著名的考试系统是 育公司研发的全美测评软件系统, 育公司始终关注信息技术教育的发展, 依赖 本公司的智能化电子题库 , 利用 现代教育理念和考试技术 , 积极投身 于 信息技术教育改革 。该系统可以根据考生的不同考试情况抽取难度不同的试卷,可以完全模拟现实考场,特别是实践性的课程。 该 考试系统主要适用于电子信息类的考试,在考试管理上也需要有专业人员负责,所以在考试条件和考试内容上都有所限制,并且不利于进 行考试成绩的分析,数据库系统的维护也比较困难。 另外易方公司与英国 司共同研发的 估管理系统 也是使用比较广泛的在线测试系统,它可以让管理员灵活 安排 考试 进度和报告考试相关内容 ,该软件曾荣获英国计算机协会奖。 内考试系统的比较研究 国内比较有名的首先是北京南琼电子有限责任公司开发设计的 题库管理系统,这是一种适用于各行各业的试题库管理软件,另外本公司还对各个行业配置了标准的题库,当然使用者也可以根据自身的需求创建别具特 色的试题库。 广东迈达威科技发展有限公司所创建的通用试题管理系统也是国内比较有名的考试系统,它使用了 件和 新技术。它支持批量录入 者其他文本格式的试题,具备多种组卷方法, 系统 可以根据使用者提供的条件进行组卷,生成多个不同的试卷,并支持人工对试卷的修改和维护,另外他可以对题库进行方便的转换。 在我国目前市场占有率最高应用最广泛的通用考试系统 是 是基于 B/要连接到 过浏览器就可以随时随地的进行各种课程的学习、测试、练习和评估,而 且可以对考试成绩进行分析和统计。系统除了具备最开放题库管理和最灵活的组卷功能外,还可以生成 式的考试卷面,并且支持批量 题的导入和导出。该系统具有各种版本可供机关、公司和学校使用,特别是学校版本 可以 大量的减轻教师负担,让学生在家中就可以自己完成练习并能自动批改习题,教师可以查看成绩统计结果了解学生的学习情况以便加强教学。 我国经过近几年的发展,在考试系统建设方面已经形成了自己的理论原则和方法,国家教育部在 2000 年针对我国的实际情况,为了规范国家远程教育资源的使用,制订了现代远程教育资源 建设技术规范,该规范的制定同时也说明了考试题库的建设不仅仅是数据库技术,同时也变成了教育教学管理中的一种手段,系统建设不仅是重要的,而且也是目前竞争较为激烈的技术领域。 21 世纪远程教育资源的快速发展,教育行业 急 需一个远程教学的专用平台,而教学的基础和工具是对学员进行必要的考试,因此现在应该建立一个通用考试系统方便广大教育者使用。这种考试系统应该可以科学、准确、快速的进行试题的保存、分类和检索,高效率低成本的组卷,并为教学提供最有力的评价。 前系统存在问题 第 1 章 绪论 3 公司为了自身的商业利益,考试系统的实现技 术都是保密的,先进的技术只是被个别单位和个人所掌握。同时教育行业需要一种通用的、智能的、实用的考试系统做为一种有效教学教育手段,但是很显然目前大多数的考试系统不具备这种能力。另外考试系统还应该具备自动组卷、自动阅卷和成绩分析统计功能。 大多数考试系统往往只具备考试、阅卷、统计功能,只看重考试成绩没有或者很少对成绩进行分析和统计,极少有系统对考试成绩做出科学的评判,所以还不能作为教学的指导工具。考生自身素质、试题质量、题库指标客观程度及教学管理等都会影响学生的考试成绩 2,因此对考试成绩进行收集、整理、分析 研究,从而对试卷做出全面统计分析,促进交流、改进教学、完善题库以及为教学部门提供基本数据, 另外 成绩的统计分析也可以帮助考试更加科学规范。显而易见在考试系统中评分和成绩统计分析以及试题库的建设已经变得相当重要,是系统中一个重要的功能,应该是进行系统设计时首先考虑的问题之一。但是就目前所使用过的考试系统和题库管理系统来看,还存在很多这方面的问题。 ( 1)封闭建设,费用高维护难 当前我国已经建立了一系列实用的考试系统,但随着这些系统的运行渐渐 暴露 出很多问题,首先是缺乏开放性,考试系统的创建、维护、使用、管理等各个 环节都需要专业技术人员来完成, 而且 一般情况下这些专业人士都集中在一定的部门,所以一些中小单位无法接触到真正的 实现 技术,技术 具有 封闭性,系统的维护和使用费用较高,不适合中小单位使用,当然也就无法 在 教育教学行业发挥它的真正的作用,进而系统的进一步的科学性合理性也就受到了限制,这样造成恶性循环,不利于考试系统的建设。 ( 2)应用范围有限,通用性不强 不同的教学单位考试机构甚至同一单位不同课程之间,就可能需要使用不一样的考试和分析系统,这使得系统在创建和使用阶段都将花费很多人力和财力,并且由于教师 在不断地使用不同 的考试系统,需要不断地掌握新系统的使用方法, 也将花费很大力气。 ( 3)考试成绩分析简单,不重视测量功能 教学中通常把测试作为评价教学效果和水平的一种有效手段,因此考试系统不仅要有科学的试题管理和试卷的组织功能,但是作为教学测量工具更重要的是要对考试成绩进行统计和分析,为教学提供科学的合理的有用的数据。通过对考试成绩的分析可以发现教学中存在的问题,及时进行教学改革修正教学过程中的不足,并通过对考试成绩的统计,发现考生对知识的掌握程度,了解考生的特长及时修正教学内容和方法。 课题的主要工作 本课题将 设计一个针对高校各个学科专业的通用考试系统。 系统使用 目前比较流行B/S 模式 , 数据库采用开源代码的 据库 管理系统 ; 采用 量级架构技术进行设计与开发。论文主要阐述 系统 的总体设计与开发方案 ,系统的主要功能包括 以下几个方面 。 同济大学 硕士学位论文 基于 通用考试系统的设计与实现 4 ( 1)题库管理 实现题库的查删改、备份、导入功能。为了实现考试系统的通用性,支持对试题类型的管理和学科专业课程的添加。 ( 2)在线考试 考生参加考试、答卷、交卷、查看分数等完整过程 。对考试过程进行管理和控制,包括禁止学生复制试题,先后登录同一学号,自动交卷等。 ( 3)组卷管理 支持随机试卷和固定试卷的创建、预览、修改和删除。支持通过知识点、题型、难度等组合参数中抽取试题。 ( 4)成绩管理 允许有权限的 教师 调整考生成绩 , 提供考试成绩汇总统计报表。 ( 5)阅卷模块 客观题自动批改, 可以实现部分主管题目的自动阅卷,也 可选择性地进行主观题的人工批改。 ( 6)学生信息管理 支持学生信息以 式文件进行备份和导入,包括成绩信息的管理。 本课题完成的考试系统是南阳理工学院的一个教改项目,开发完成后可以使本学校大部分课程通过网络进行考试,极大的节省了教学资源,减轻教师负担。 文的组织结构 本文共分为 五 个章节: 第一章, 绪论 。说明了基于 通用考试 系统的研究意义、国内外发展现状,以及本课题的主要研究内容。 第二章, 系统平台 介绍。介绍了课题研究的技术支持和理论支持,其中 介绍了 第三章,系统 的分析与设计 。阐述了需求分析的概念,起到的作用,形成阶段性的里程碑成果。并将需求分析有效的应用于 通用考试 系统中,明确系统的总体需求,明确各个功能模块,确定功能性需求与非功能性需求,并对系统进行相应的可行性分析。 并 在需求的基础上,进行系统设计,包 括系统总体设计、具体的各个功能模块的设计、数据库设计、页面设计等。 第 四 章,系统实现。基于各个模块,给出系统的具体实现的部分,包括界面设计以及关键代码。 第五章,总结与展望。对整个系统进行了总结,指出系统不足以及将来需要改进的部分。第 2 章 系统平台介绍 5 第 2 章 系统平台 介绍 2术概述 台企业版( 是目前开发 用(特别是企业级 用)最流行的平台之一, 的核心技术。 一种利用 平台来简化企业应用解决方案的开发、部署和管理相关复杂问题的体系机构。 于企业来说是一套开放标准,在该标准下开发的系统可以在不同操作系统和工作环境下都可以运行,对于开发者来说 一套现成的企业级应用的解决方案,使用该方案在开发中遇到的事物处理和安全性等问题都可以迎刃而解。 器”和“组件” 的 形式提供服务,对开发者隐藏了不同平台和中间件的技术细节,实现企业级应用的“无缝集成”。 2心技术 根据不同的应用领域可以将 言分为三大平台 。 ( 1) 称 台微型版。适用于开发小型电脑、手机等移动设备的嵌入式系统; ( 2) 称 台标准版。适用于桌面系统的 平台标准版; ( 3) 称 台企业版。适用于快速设计、开发、部署和管理企业级应用。 一种利用组件和容器进行 系统开发的技术,许多公司根据自己的需要开发了自己的“中间件”。 数据库连接、邮件服务、事物处理和安全等 在许多企业级应用中都是一些通用 的 企业需求模块。为了缩短企业应用的开发周期,提高代码的利用率和可靠性,许多公司也开发了自己的通用模块,这些服务性的软件系统就是中间件。 供了基于 B/S 模式的多层企业级应用开发服务、应用程序接口和协议, 核心技术有 以下几种。 ( 1)数据库连接 访问不同数据库提供了统一的路径; ( 2) 供了用于开发、实施分布式商业逻辑的框架,有效的简化了复杂企业级应 用的开发; ( 3)寻址服务 于执行名称和目录服务,提供了一致的模型来存取和操作企业资源; ( 4) 来定义标记语言,可以实现在不同商务活动中共享数据 ; 同济大学 硕士学位论文 基于 通用考试系统的设计与实现 6 ( 5) 供了把 码嵌入到 面中的技术; ( 6)远程调用 提供了调用远程对象所具有的方法,在客户端和服务器端使用序列化传递数据 。 台还包含一些服务类型, 范要求 品提供下列标准服务 。 ( 1) 供了和面向消息的中间件相互通信的应用程序接口; ( 2) 供了事物管理器的实现接口 ; ( 3) 供了访问各种事物监控的应用程序接口; ( 4) 供了进行邮件存取的应用程序接口。 2构 系统架构是指系统各个组成部分协同工作的方式,它是软件开发中一项重要工作,对于大中型的应用来说软件设计的重心和基础就是系统架构。 用多层模型将企业级应用按照不同逻辑功能划分为许多层。多层化应用模型可以为不同服务提供一个独立的层, 型的四层结构包括:客户层、 件、业务逻辑层(运行在 务器上)和企业信息层 3;四个层次分别运行在不同的地 方,客户层运行在客户端, 运行在 务器上,业务层运行在 务器上,信息层运行在数据库服务器上。 用程序是由组件构成的,所以上述四层中除了信息层外所用的技术都可以有供,它们分别称为客户层组件、 组件、服务器层组件。在 客户层组件主要是 小应用程序 组件主要有 务器端页面 成,业务层组件主要是企业级的 图 示了 基于 企业级应用的体系结构。 W e b 应 用 的 客 户 层W e b 应 用 的 客 户 层W e b 应 用 的 客 户 层W e b 应 用 的 客 户 层W e b 应 用 的 客 户 层数 据 库客 户 层W e b 层E I S 层T C P / I 端J 2 E E 服 务 器数 据 库 服 务 器图 统的 系结构 第 2 章 系统平台介绍 7 2轻量级架构 统的 构的不足 传统的 系结构是以 范为基础和核心。 但 随着业界对传统 构使用的深入问题就渐渐 暴露 出来了,主要体现在 范上,归结起来主要有以下几个方面 。 首先 用的组件模型对系统具有很强的“侵入性”。为了享用 器提供的底层服务,业务组件必须声明 接口。使开发者无法专注于于业务逻辑本身 3。 其次由于 运行在 器中 的,导致它很难被测试。许多开发人员一提到测试 认为是一种煎熬。调试不仅复杂而且耗时,造成了开发效率 低下 。这对于当前竟争激烈的市场显然是极为不利。 再者 为事实上的 O/R 映射方案,是一个不成功的技术。它对远程对象的调用效率低下 ; 要保持数据一致性维护对运行效率会产生很大的影响 ; 它不支持继承关系,在面向对象设计方面受到了极大的牵制; 另外 它的数据查询能力也很弱小 4。 最后 不比 通 象, 有更清晰的多层体系结 构,却不得不一股脑接收 身所有的基础服务,即便系统只需要很少的几项服务,从而使得系统的性能降低、复杂度变高。 量级开发概念 基于传统 构的上述缺陷,许多专家和开源组织试图开发出一些轻量级、灵活的 架,来替代传统使用 构。轻量级开发是指一种开发方法,指简化的编程模型和更具有响应能力的容器等方面,开发旨在消除与传统 关的复杂性与限制,同时采用轻量级的方式进行开发也会缩短应用程序的开发周期与部署上的复杂性 5。 ( 1)轻量级软件开发方法 轻量级的软件开发方法包括敏 捷( 程,比如极限编程( 这种软件开发方法强调开发中测试第一,积极地调动客户参与整个开发过程。 ( 2)轻量级框架技术 轻量级软件开发不强迫业务对象遵循平台接口,可以使用 实现业务,这样提高开发效率,也使框架响应能力提高,达到了简化的目的。 ( 3) 控制反转 技术 式在轻量级的领域中起着巨大的作用,它的引入解决了对象依赖性的问题。有助于简化代码、将业务逻辑与基础架构分离, 提高了应用程序代码之间的 内聚 性降低了代码间的 耦合 性 ,从而使应用程序更易于维护。 在轻量级开发中,可以合并过程、 技术和原理,优先选择较简单的技术,在一个稳定、轻量级的基础上对软件进行构建,并尽量争取最可能的透明性。轻量级开发是不能仅仅就技术和开发方法完整定义的,它是一个包罗万象的思想。 同济大学 硕士学位论文 基于 通用考试系统的设计与实现 8 量级 构 业务需要重量级架构提供的企业服务,但是这种架构对于解决日常问题可能过于复杂,依赖性管理首先是轻量级容器要解决的问题。早期的轻量级容器使用服务定位策略来管理依赖性,现代大多数容器使用依赖注入( 理依赖性。解决 依赖性还只是问题的一部分,另一个需要解决的问题是 服务与容器中的 关联,现代的轻量级容器使用面向方面编程( 设计思想。面向方面编程可以解决企业系统中几乎所有的通用性问题,达到很好的解耦性,是轻量级容器的另一个核心的设计模式。 系统架构是软件系统中的核心元素 5,是系统中最难改变的部分,也是构建软件系统中其他部分所依赖的基础,系统的各个组成部分正是通过架构所描绘的方式协同工作共同完成系统的功能,从而表现为一个完整的系统。因此系统架构的好坏从根本上决定基于这个架构所构建的软件系统的质量。 在构建规范的 用时,用户请求的处理,业务逻辑处理及数据的持久化是必须重点考虑的问题。针对这三个方面,人们开发了很多框架,其中比较常用的框架是 三个框架的组合具备 决了传统 且 是开源的,技术文档也是免费的,这无论对开发还是学习来说都是有帮助的。基于 用的体系结构如图 示。 表 示 层A c t i o n F o r m , j s pS t

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论