文档简介
2 0 1 0 年0 1 月 _, 广 r 囔j 0 , 独创性( 或创新性) 声明 本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或其他 教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名:圣堑盘日期:蒸 Q ;! :2 关于论文使用授权的说明 本人完全了解北京邮电大学有关保留和使用学位论文的规定,即:研究生在 校攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权保留并向国 家有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅和借阅;学校 可以公布学位论文的全部或部分内容,可以允许采用影印、缩印或其它复制手段 保存、汇编学位论文。 本学位论文不属于保密范围,适用本授权书。 本人签名:至丝丝日期: x r 。 导师签名: 羞墨堡璋日期:型l Q 二s 二3 备j 步 纸化考试,取代传统的手工考试方式,是近年来计算机技术应用的一 个非常活跃的研究领域。基于J a v aE E 平台的在线考试系统正是在这 种形势下应运而生的。它是伴随着网络技术和数据库技术而逐渐发展 起来的。它可以利用网络,随时随地对学生进行考试,是传统考场的延 伸;另外,借助于它可以有效利用校园网的资源,更好地为学校的教学 管理服务。所以,研究和开发一个具有强大功能,且可扩充、易维护 的在线考试系统有着十分重要的现实意义。 本文主要论述在线考试系统的设计思想、工作原理、体系结构、 主要技术手段及其实现方法。论文首先介绍了考试系统的发展过程、 研究现状;然后详细阐述了在线考试系统的相关理论及研制在线考试 系统所涉及到的各种技术,软件开发工具及选用原因。针对系统的功 能特点,使用了J a v aE E 技术,采用了面向对象的开发方法和流行的 三层体系结构,对题库设计理论和组卷算法进行了探讨;接下来对在 线考试系统进行了需求分析,包括系统的体系结构、系统的功能,并 利用统一建模语言建模语言完成了系统的用例模型、顺序图和活动图 等工作。然后完成了在线考试系统的设计,包括功能模块的设计和数 据库的设计。功能模块的设计依据了前面的系统分析,将系统划分为 系统管理、试题管理、试卷管理、在线考试、阅卷评估和成绩查询等 模块。数据库的设计依据数据库设计原则,采用S Q LS e r v e r2 0 0 0 数 据库管理系统,并给出了各个表的结构。最后完成基于J a v aE E 平台 的在线考试系统设计方案,构造了基于J a v aE E 企业W e b 体系结构的 分布式系统,使其成为一个分布式的跨平台系统。本系统以J a v aE E 体系结构为基础,充分利用J S P 、J a v a B e a n 、S e r v l e t 、S t u r t s 框架和 M V C 三层模式的灵活性来简化开发过程,优化系统性能,从而提高 了系统的开发价值。 本文从理论及实践的角度证明利用无纸化考试能大大提高考试 过程中的自动化和科学化,切实减轻老师组织一场考试全过程的繁重 负担。 关键词t 在线考试系统题库自动阅卷统一建模语言 , 一 D E S I G NA N DI M P L E M E N T A T I O NO FO N L I N E E X A M I N A T l 0 NS Y S T E MB A S E D0 NJ A V AE E A B S T R A C T W i t ht h ei n n o v a t i o no fe d u c a t i o n a lt h o u g h ta n dt h ed e v e l o p m e n to f s c i e n c ea n dt e c h n o l o g y , i nr e c e n ty e a r s ,t h ec o n s t r u c t i o no ft h eI n t e r n e t p l a t f o r mh a sd e v e l o p e dv e r yr a p i d l y , a n da sar e s u l t ,p e o p l eh a v ep a i d m o r ea n dm o r ea t t e n t i o nt ot h ew e b b a s e da p p l i c a t i o n s T h a ti s w h y p e o p l eh a v em a d eg r e a te f f o r t st od e v e l o pt h eJ a v aE E - b a s e do n l i n e e x a m i n a t i o ns y s t e m ,w h i c hi sb e i n gi m p r o v e dw i t ht h ed e v e l o p m e n to f N e t w o r kt e c h n o l o g ya n dd a t a b a s et e c h n o l o g y I te x p a n d sa n de x t e n d st h e t r a d i t i o n a le x a m i n a t i o na n dt h e r e f o r eC a l lt e s tt h es t u d e n t sa n y t i m ea n d a n y w h e r e B e s i d e s ,i tC a l lu s et h er e s o u r c e so nc a m p u sn e t w o r ka n dS O C a nh e l pm a n a g et h et e a c h i n gb e t t e r T h e r e f o r e ,s t u d y i n ga n dd e v e l o p i n g o fap o w e r f u la n ds c a l a b l ea n de a s yt om a i n t a i no nl i n ee x a m i n a t i o n s y s t e mh a sav e r yi m p o r t a n tp r a c t i c a ls i g n i f i c a n c e T h ep a p e rm a i n l yd i s c u s s e st h ed e s i g ni d e aw o r k i n gp r i n c i p l es y s t e m s t r u c t u r ep r i m a r yt e c h n i q u em e a n sa n dt h er e a l i z a t i o nm e t h o do fo n l i n e e x a m i n a t i o ns y s t e m T h i sd i s s e r t a t i o nf i r s t l yi n t r o d u c e st h ep r o c e s so f e x a m i n a t i o ns y s t e m Sd e v e l o p m e n ta n dt h ep r e s e n ts i t u a t i o no fi t s r e s e a r c h T h i st h e s i si n t r o d u c e ss o m er e l a t i v et h e o r i e sb a c k g r o u n do f o n l i n ee x a m i n a t i o ns y s t e ma n de x p o u n d si nd e t a i le a c ht e c h n i q u e 、 J a v a B e a n 、S e r v l e t 、s t r u t sf r a m e w o r k ,f l e x i b i l i t yo fM V Ct h r e e - t i e rm o d e l t oo p t i m i z et h es y s t e mp e r f o r m a n c ea n dt oe n h a n c e ,t h ed e v e l o p m e n t v a l u e 飞 T h e p a p e rp r o v e df r o mt h e o r e t i ca n dp r a c t i c a lt h a tu s i n gn o n p a p e r t e s ts y s t e mi tc a ni m p r o v ea u t o m a t i o na n dm a k es c i e n t i f i cg r e a t l yd u r i n g t e s tc o u r s e ,a n dl i g h t e nh e a v yb u r d e no f o r g a n i z i n ga ne x a m i n a t i o n 4 小 K E YW O R D S :O n l i n eE x a m i n a t i o nS y s t e m ,Q u e s t i o nD a t a b a s e , R a t eP a p e ra u t o m a t i c a l l y , U M L , 、 广 目录 第一章引言1 1 1 课题背景l 1 1 1 开发在线考试系统的意义l 1 1 2 计算机考试系统的发展历程1 1 2 课题任务3 1 3 论文结构4 第二章考试系统基础理论5 2 1 考试理论基础5 2 2 试题库7 2 2 1 建立试题库的原则7 2 2 2 建立试题库应该考虑到的因素8 2 2 3 建立试题库的步骤8 2 3 组卷理论9 2 3 1 衡量试卷质量的指标9 2 3 2 命题要求1 1 2 3 3 组卷原则1 1 2 3 4 组卷方法1 l 2 3 5 组卷约束条件1 2 2 3 6 组卷策略分析1 3 2 3 7 组卷步骤1 4 2 4 本章小结1 4 第三章系统开发相关技术介绍1 5 3 1 软件工程思想的应用1 5 3 2J A V A E E 框架1 6 3 3M V C 模式1 7 3 4S T R U T S 简介1 8 3 5 统一建模语言1 9 3 6W E B 服务器A P A C H ET O M C A T 简介2 l 3 7 本章小结2 2 第四章系统的分析设计2 3 4 1 系统需求分析2 3 4 1 1 性能需求分析2 3 4 1 2 功能需求分析2 4 4 2 总体设计方案2 4 4 2 1 系统设计模型2 5 4 2 2 系统用例图2 5 4 2 3 系统时序图2 7 4 2 4 开发平台及工具2 9 4 2 5 运行环境2 9 4 2 6 系统安全3 0 4 2 7 功能设计3 0 4 3 在线考试系统业务流程3 l 4 3 1 在线考试系统数据流程3 l 4 3 2 数据库设计3 2 4 4 程序设计界面3 7 4 5 本章小结3 7 第五章系统实现及测试3 8 5 1 系统实现3 8 5 1 1 登录功能3 8 5 1 2 试题管理3 9 5 1 3 试卷管理4 0 5 1 4 考生考试4 3 5 1 5 试卷评分4 4 5 1 6 试题分析4 5 5 2 系统测试4 6 5 2 1 测试的目的4 6 5 2 2 测试的方法4 6 5 2 3 测试原则4 8 5 2 4 本系统的测试方案4 8 5 2 5 测试结果4 9 5 3 本章小结4 9 第六章结束语5 0 6 1 论文工作总结5 0 6 2 问题和展望5 l 参考文献5 2 致谢5 4 北京l | | l j I U 人学软件丁程顺I j 论义 1 1 课题背景 第一章引言 1 1 1 开发在线考试系统的意义 传统的考试方式分为人工出卷、考生考试、人工阅卷、成绩评估和试卷分析 五个步骤。随着考生的增加、考试要求不断提高,教师的工作量越来越大。这样, 考试工作将是一件烦琐且容易出错的事情。这种考试方式越来越不能适应现代教 学的需求。对于在线考试系统,其功能目标是实现将现有的纸张答题式考试向基 于I n t c m c t 的无纸张考试系统的转变。采用网络无纸化考试代替传统的考试,必 须实现整个考试流程,实现试题的数字化管理、提高出卷效率、具有操作性和交 互性,能自动判卷并有效保存数据、自动生成成绩单、提供考生成绩的统计分析 功能等。 随着计算机技术与网络技术的发展,网络考试已日益成为一种主要的考试方 式。在线考试系统是基于B S 模式的全新的网络考试系统。服务器端对数据库进 行管理,客户端通过浏览器登录网络考场。与传统的基于C S 模式的网络考场相 比,它更加稳定,更适宜于互联网上的考试。计算机的大存贮能力和快速、准确 的处理功能,将把考试业务中大量数据变为电子信息存贮起来,使老师可以根据 课程的变化不断更新题库中的题目,客观题目的评阅也交给计算机来完成,学生 可以从题库里每次随机抽取不同的题目。对有些实际应用的题目还可以在具体的 环境里测试。在线考试能真正做到考试的严谨和公正,并且由于它是基于题库的 操作的,可以实现智能组卷、自动评判、智能分析等功能,从而大大缩短考试周 期,因此它是未来考试的一种重要方式。因此,开发适应新形势需要的在线考试 系统是很有必要的。 1 1 2 计算机考试系统的发展历程 传统的“纸+ 笔 考试模式拥有悠久的历史,这一考试模式在相当长的时间 里一直被人们理所当然的认为是最有效的考试方式之一,并被广泛的应用于各类 考试。以这种方式组织一次考试存在以下弊病:一是工作量大,教师到处找试题、 拼试卷、印刷、评分、算成绩,整个过程不仅工作量很大,而且效率不高,花费 北京邮I U 人学软件下程顾l j 论文 了教师大量的时I 日J 和精力。二是周期长,从组织考试丌始到公布考试成绩需要持 续很长时间。三是反馈能力弱,试题选择随意性大,对成绩的分析停留在平均分、 及格率等表面层次上,难以统计出学生对各个知识点的掌握程度。随着计算机信 息处理技术的飞速发展,传统的考试方式的繁琐而低效,及其在安全、效率、成 本等诸多方面所表现出来的弊端也逐渐突出,并且越来越不能为人们所接受。可 以说传统的考试方式已经不能适应现代考试的需要。随着计算机技术的发展,计 算机在各行各业的应用越来越广泛,人们迫切需要利用计算机来进行考试,以减 轻教师的工作负担、提高工作效率,同时也提高考试质量,计算机化考试系统便 应运而生了。 在计算机考试系统发展初期,其操作平台多为D O S 平台,其支持的考试、 评分处理也是处理基于D O S 下的各种应用程序和数据。随着操作系统平台由 D O S 转向W I N D O W S 平台,对计算机考试系统也提出了新的要求,即计算机考 试系统应支持W I N D O W S 平台下的考试、评分处理。此外,对计算机考试系统 的整体功能也提出了更高的要求,要求计算机考试系统对考试的全过程实行全部 的管理与控制,即从考前的数据处理如考生的数据录入、考号生成、编排考场、 到考试的实施与评分,直到最后的分数处理,全部由计算机管理与控制,从而实 现计算机考试的无纸化及全计算机化【。 随着网络应用不断扩大,计算机考试的不断延伸和变革,国内外相继出现了 各种计算机辅助测试软件。利用计算机辅助测试软件进行考试,题目的生成、试 卷的提交、成绩的批阅等都可以在网络上自动完成,只要形成一套成熟的题库就 可以实现考试的自动化。这样可以充分利用网络无限广阔的空间,使得考试不受 时间与空间的限制,大大地简化了考试的过程,减轻了繁重的考试管理工作,避 免了考试过程中的人为因素,提高了考试考核水平和管理水平。目前许多国际著 名的计算机公司所举办的各种认证考试绝大部分采用这种方式。 从6 0 年代初计算机辅助考试在美国诞生到目前为止,历经4 0 多年的发展, 目前,网络考试系统在国外已经有了较为广泛的应用并且相应的技术业也已经逐 步趋于成熟,但是在国内目前网络考试方式还不是主流,它还仅仅是传统考试方 式的一种补充。当前,我国人才培养工作的深入以及教育模式的彻底改革,催促 着以”自主式”教学形式为特色的现代远程职业培训的快速向前发展,接受网络教 育和考试认证的人越来越多。这使得对网络考试需求也越来越高。网络考试作为 网上教育和学习的评估手段,成为当前教育测量界中的一个重要的热点问题。 I N T E R N E T 的开放性、分布性的特点和基于I N T E R N E T 的巨大计算能力使得网 络考试得以迅速发展。许多软件企业和高校都在致力于研究和开发网络考试系 统。此外,许多面向社会的高级别考试也开始采用网络在线考试的形式,如全国 2 北京I | | l f f U 人学软件T 程坝I j 论文 计算机等级考试、托福、G R E 等等。 1 2 课题任务 本课题所研究的系统采用J a v aE E 技术,运用软件工程思想,基于多层体系 结构进行开发。系统设计分为数据层设计、业务逻辑层设计和表示层设计等。数 据层设计包括数据库的建立和视图及存储过程的建立等。介于数据层和应用程序 逻辑层的接口将由J D B C 来完成。应用程序逻辑层设计主要运用面向对象的事件 触发机制,对系统中的对象进行状态变迁设计和数据流导向设计。表示层设计主 要是选择数据的表示方式和友好界面设计。本系统由在线考试系统前台管理和在 线考试系统后台管理两个子系统所组成。在“在线考试系统前台管理中,考生 可以进行登录、参加考试、查询成绩、修改个人信息等操作;而“在线考试后台 管理 则是提供给系统的管理员和教师进行操作的,在这部分可以进行考生信息 管理、教师账户管理、系统基本信息维护、题库管理、试卷管理等操作。用户分 学生,教师,管理员三级授权。 课题研究的思路是:首先,运用面向对象的建模语言统一建模语言,进行基 于J a v aE E 的在线考试系统的建模,通过分析系统的功能需求,建立系统的用户 模型;通过分析并设计这些用例,得出系统的静态模型和动态模型;基于对系统 的需求分析、总体设计、详细设计,完成程序代码编写,最终实现基于J a v aE E 的在线考试系统的建立和调试,以验证方案的可行性和正确性。 在课题研究的过程中,要完成的主要工作如下: 第一,通过调研和查阅大量相关资料,确定系统的总体需求,包括系统的体 系结构、系统平台和软件开发方法。 第二,根据需求分析的结果,确定在线考试系统的总体结构以及各子系统的 功能模块,并设计系统的数据流图、数据库模型。 第三,使用统一建模语言工具进行在线考试系统的框架设计,详细阐述基于 统一建模语言的面向对象技术的在系统分析与设计中的应用,包括系统的用例 图、静态结构模型、动态行为模型和物理模型。 第四,根据统一建模语言建模和分析的结果,对基于J a v aE E 的在线考试系 统部分模块的进行具体实现。 第五,对基于J a v aE E 的在线考试系统进行运行测试,并调试以增强系统的 实用性。 北京邮也人学软件:程坝I :论文 1 3 论文结构 本文共分六章,内容安排如下: 第一章引言,主要阐述了课题研究的意义、国内外研究现状以及研究的内 容,主要工作任务、预期目标等。阐述了传统的考试方式已经不能 适应现代考试的需要,人们迫切要求利用计算机技术来进行在线考 试。 第二章考试系统理论基础,主要论述与考试相关的基础理论,重点对题库 建设和组卷的相关理论进行论述,为系统的实现提供理论依据。 第三章系统开发相关技术介绍,介绍了系统开发中涉及的一些开发思想和 开发技术,主要是对软件工程思想、J a v aE E 框架、M V C 模式、S t r u t s 技术做了简要的介绍。 第四章系统分析设计,分析系统的需求和功能,在此基础上给出了系统用 例模型和部分用例的时序图和类图,介绍了系统的设计思想、体系 结构、开发机运行环境、功能需求,确定系统总体功能结构模式, 业务流程图和数据流程图,完成数据库的设计。 第五章系统实现及测试,主要对系统涉及的题库维护、组卷方案、在线考 试、考试阅卷等主要功能模块进行了实现,说明了各自模块的使用 流程和功能,并对系统的主要功能模块进行测试分析,尽可地发现 系统中存在的缺陷和不足。 第六章结束语,对本文工作进行全面总结,给出本文所取得的成果,指出 存在的不足和改进方向。 4 1 r ( 这 不 信 够 考 较 试 简要的介绍【2 1 。 ( 1 ) 难度:指试题的难易程度,换句话说是指测试者完成题目或项目任务 时所遇到的困难程度。它可分为绝对难度和相对难度两种,绝对难度又称认知难 度,是指项目本身固有的难度;相对难度又称统计难度,是考生实际测试后,经 计算得到的难度指标。考生作答一个题目所遇到的困难程度的量数,就叫题目的 难度系数,也常称为难度值。确定试题难度的方法有多种,常用的一种方法可用 如公式2 1 表示: 只= 卜u 编 ( 2 1 ) 其中tP i 第i 题的难度; S i 一考生第i 题的平均分值; F i 第i 题的满分分值; 若有n 个学生参加考试,则第i 题的难度可以表示为公式2 - 2 : 。善( 2 - 2 ) 鼻叫1 屈 其中:确第J 个学生第i 题的得分值; 北京l i l l g l L 人学软件T 程影! I j 论义 其它同上; 假设第i 题的满分值为l ,即F i - l ,则若考生答对则得分记为1 ,答错则记 为0 ,则公式2 2 可以化简为: 只:卜( 2 - 3 ) 其中:C i 答对第i 题的考生人数; 由上面的分析可以看出,一道题的难易程度可以由答对该题的考生人数来反 映。难度越大,则答对的人数就越少;难度越小,则答对的人数越多。采用极值 分析法也就是,当P i = l 时表示难度最大,此时无一人答对该题;当P i _ O 时表示 难度最小,此时所有考生都答对该题。因此在编制试题的时候,应该权衡各方面 因素,设置适宜的题目难度。 不管是经典测试理论还是项目反应理论,测得的难度系数都取决于全体测试 者的得分率。试题的得分率越高,难度系数就越低;试题的得分率越低,难度系 数就越高。这样就说明一个问题,即所得的试题难度与测试对象有关。 ( 2 ) 区分度:表示该题对能力高的考生和能力低的考生的区分能力,衡量 某试题对于不同水平应考者的鉴别能力程度的指标,是区别被试能力的量度。区 分度高的题目能有效地区分水平不同的学生,区分度低的题目则不能有效地区分 水平不同的考生。具有良好区分度的试题,对应考者有较强的鉴别能力,在这些 试题上,水平高的得高分,水平差的得低分。反之,区分度低的试题,对应考者 的鉴别能力差,水平高的应考者与水平差的应考者在这些试题中的得分没有多大 区别或没有什么规律。 试题的难度和区分度也有密切的关系。调整试题的难度是提高试题区分度的 重要方法。一般地说,试题具有中等程度的难度( O 4 5 0 7 5 ) ,试题的区分度较大。 试题的难度不仅影响着试题的区分度,影响考生成绩的相对分布,还直接决定着 考生成绩的绝对值,决定全体考生平均分数的高低。有时为了满足不同的考试目 的,对试卷的难度与区分度要做适当的选择。因此,在编制试题时,还需要考虑 试题的区分度,使得测试结果能够客观反映测试者的能力层次。第i 题的区分度 通过公式2 4 计算得到: D :里矗 ” F ( 2 - 4 ) 其中:Q i 第i 题的试题区分度; H i 能力高的考生第i 题得分的平均值; L i 能力低的考生第i 题得分的平均值; F i 第i 题的满分分值; 由上面的公式可以看出,如果H i = L i ,则Q i = O ,也就是说该题未能够区分 6 一 , 北京邮f U 人学软件下程坝l j 论文 考生能力;如果H i E l ,则Q i O ,这表示该题能够区分出考生的能力层次来,并 且Q i 越大表示区分度越高,反之则区分度越小;如果H i L i ,则Q i R e s p o n s e 方式,在W E B 项目中有效地降低前后台的藕合度,提高了前 台展示的灵活性、降低前台开发的技术难度,有利于提高试卷展现的灵活性。 S t r u t s 的工作原理,如3 4 图所示。 E v e n t H 丁T P R e q L k e s t C on t r o l l e r S e r 培t D is p a t c h a i e n s e r t I嗍甜a l s 4 T u I s - c o n f i g x m I U p d a t e H 了了p R e s p o n s e 3 5 统一建模语言 V i e w 。 0 S p 图3 - 4S t r u t s 工作原理图 B u s i n e s sL o g i c A e i i o n M o d e l A p p l i c a i mS t 龟缝 面向对象的分析与设计( O O A & D ) 方法的发展在8 0 年代末至9 0 年代中出现 了一个高潮,统一建模语言( O n i f i e dM o d e l i n gL a n g u a g e ) 是这个高潮的产物。它是 一种定义良好、易于表达、功能强大且普遍适用的建模语言,用于描述、构造软 件系统以及商业建模,综合了在大型、复杂系统的建模领域得到认可的优秀的软 件工程方法。统一建模语言是大多数公司采用的标准,是A N S I 和O M G 等部门 采用的标准。 统一建模语言溶入了软件工程领域的新思想、新方法和新技术。它的作用域 不限于支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过 程。统一建模语言的各个模型可以帮助人员更好地理解业务流程,建立更可靠、 更完善的系统模型,使用户和开发人员对问题的描述能够达到相同理解,以减少 语义差异,保障分析的正确性【l5 1 。 统一建模语言的定义包括统一建模语言语义和统一建模语言表示法两个部 分。 ( 1 ) 统一建模语言语义 基于统一建模语言的精确元模型定义为统一建模语言的所有元素在语法和 语义上提供了简单、一致、通用的定义性说明,使开发者能在语义上取得一致, 消除了因人而异的最佳表达方法所造成的影响。此外统一建模语言还支持对元模 型的扩展定义。 1 9 北京邮I U 人学软件T 程硕I j 论文 ( 2 ) 统一建模语言表示法 定义统一建模语言符号的表示法,为开发者或开发工具使用这些图形符号和 文本语法进行系统建模提供了标准。这些图形符号和文字所表达的是应用级的模 型,在语义上它是统一建模语言元模型的实例。 标准建模语言统一建模语言的重要内容可以由下列五类图来定义: 第一类是用例图,从用户角度描述系统功能,并指出各功能的操作者。 第二类是静态图,包括类图、对象图、包图。其中类图描述系统中类的静态 结构,不仅定义系统中的类,类之间的联系( 如关联、依赖和聚合等) ,也包括类 的属性和操作。类图描述的是一种静态关系,在系统的整个生命周期中都是有效 的。对象图是类图的实例,使用与类图几乎完全相同的标识。它们的不同点在于 对象图显示类的多个对象实例,而不是实际的类,一个对象图是类图的一个实例。 由于对象存在生命周期,因此对象图只能在系统某一时间段内存在。包由包或类 组成,表示包与包之间的关系。包图用于描述系统的分层结构。 第三类是行为图,描述系统的动态模型和组成对象间的交互关系,包括状态 图和活动图。其中状态图描述类的对象所有可能的状态以及事件发生时状态的转 移条件。通常,状态图是对类图的补充。在实际上并不需要为所有的类画状态图, 只需为那些有多个状态且行为受外界环境的影响并且发生改变的类画状态图。而 活动图描述满足用例要求所要进行的活动发及活动间的约束关系,有利于识别并 行活动。 第四类是交互图,描述对象间的交互关系,包括时序图和协作图。其中,时 序图显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显示 对象之间的交互;协作图描述对象间的协作关系,协作图跟时序图相似,显示 对象间的动态合作关系,除显示信息交换外,作图还显示对象以及它们之间的关 系。如果强调时间和顺序,则使用时序图;如果强调上下级关系,则选择协作图。 这两种图合称为交互图。 第五类是实现图,包括组件图和配置图。其中组件图描述代码部件的物理结 构及各组件之间的依赖关系。一个组件可能是一个资源代码组件、一个二进制组 件或一个可执行组件。它包含逻辑类或实现类的有关信息。组件图有助于分析和 理解部件之间的相互影响程度。配置图定义系统中软硬件的物理体系结构。它可 以显示实际的计算机和设备的( 用节点表示) 以及它们之间的连接关系,也可显示 连接的类型及部件之间的依赖性。在节点内部,放置可执行部件和对象,以显示 节点与可执行软件单元的对应关系。 从应用的角度看,当采用面向对象技术设计系统时,首先是描述需求;其次 根据需求建立系统的静态模型,以构造系统的结构;第3 步是描述系统的行为。 2 0 北京I I | I j I U 人学软件T 程f 哆! l j 论文 因此,运用统一建模语言进行面向对象的系统分析设计,通常都要经过如下三个 步骤。 1 ) 识别系统的用例和角色 首先要对项目进行需求调研,分析项目的业务流程和数据流程,以及项目中 涉及的各级操作人员,识别出系统中所有用例和角色;接着分析系统中各个角色 和用例间的关系,使用统一建模语言建模工具画出系统的用例图;最后,勾画系 统的概念层模型,借助统一建模语言建模工具描述概念层的类图和活动图。 2 ) 进行系统分析并抽象出类 系统分析的任务是找出系统的所有需求并加以描述,同时建立特定领域模 型,建立域模型有助于开发人员考察用例。从实际需求中抽象出类,并描述各个 类之间的关系。 、 3 ) 设计系统,并设计系统中的类及其行为 设计阶段由结构设计和详细设计组成。结构设计是高层设计,其任务是定义 包( 子系统) 、包间的依赖关系和主要通信机制。包有利于描述系统的逻辑组成部 分以及各部分之间的依赖关系。详细设计主要用来细化包的内容,清晰描述所有 的类,同时使用统一建模语言的动态模型描述在特定环境下这些类的实例的行 为。 其中在第1 ) 步与第2 ) 步中所建立的模型都是静态的,包括用例图、类图( 包 含包) 、对象图、组件图和配置图等5 个图形,是标准建模语言统一建模语言的 静态建模机制。其中第3 ) 步中所建立的模型或者可以执行,或者表示执行时的 时序状态或交互关系。它包括状态图、活动图、时序图和协作图等4 个图形,是 标准建模语言统一建模语言的动态建模机制。因此,标准建模语言统一建模语言 的主要内容也可以归纳为静态建模机制和动态建模机制两大类。 以统一建模语言建模应该是以R a t i o n a l 公司的R o s e 工具为最好。V I S l 0 2 0 0 3 中提供了统一建模语言套件工具,且具有O F F I C E 的操作特点,使用方便,所以 本文选用V I S l 0 2 0 0 3 作为统一建模语言建模工具【1 岳1 7 1 。 3 6W E B 服务器A p a c h eT o m c a t 简介 T o m c a t 是A p a c h eJ a k a r t a 软件组织的一个子项目,T o m c a t 是一个J S P S e r v l e t 容器,它是在S U N 公司的J S W D K ( J a v aS e r v e rW e bD e v e l o p m e n tK i t ) 基础上发 展起来的一个J S P 和S e r v l e t 规范的标准实现,使用T o m c a t 可以体验J S P 和S e r v l e t 的最新规范。经过多年的发展,T o m c a t 不仅是J S P 和S e r v l e t 规范的标准实现, 而且具备了很多商业J a v aS e r v l e t 容器的特性,并被一些企业用于商业用途。 S e r v l e t 是一种运行在支持J a v a 语言的服务器上的组件,它与普通J a v a 类的 2 l 北京I | l j I 【1 人学软件T 程顾l :论文 区别就是它运行在服务器上。使用S e r v l e t 可以很轻松地扩展J a v a 网络服务器的 功能,为网络客户提供安全可靠的、易于移植的动态网页。由于J a v a 语言本身 的平台无关性,加之S e r v l e t 运行在服务器端,所以S e r v l e t 的运行对用户是完全 透明的。 S e r v l e t 容器的作用是负责处理客户请求。当客户请求来到时,S e r v l e t 容器 获取请求,然后调用某个S e r v l e t ,并把S e r v l e t 的执行结果返回给客户。T o m c a t 就是起这样的作用( 与其他的S e r v l e t 容器如R e s i n 等功能相似) 。 当客户请求某个资源时,S e r v l e t 容器使用S e r v l e t R e q u e s t 对象把客户的请求 信息封装起来,然后调用J a v aS e r v l e t A P I 中定义的S e r v l e t 的一些生命周期方法, 完成S e r v l e t 的执行,接着把S e r v l e t 执行的要返回给客户的结果封装到 S e r v l e t R e s p o n s e 对象中,最后S e r v l e t 容器把客户的请求发送给客户,完成为客 户的一次服务过程【1 8 2 0 】。 3 7 本章小结 开发工具的选择对一个系统来说很重要,既决定了开发人员的工作效率,也 决定了能否给用户提供一个友好的界面,以及今后是否能方便地对系统进行维 护,改善及扩充。本章详细阐述了研制在线考试系统的过程中涉及到的各种技术, 包括软件工程思想、J a v aE E 体系、M V C 设计模式、S t r u t s 框架以及统一建模语 言和T o m c a t 服务器等等。首先对J a v aE E 框架进行了介绍,并且对M V C 模式的 体系结构及其实现形式S t r u t s 的运作机理进行了介绍。接下来研究了运用统一建 模语言进行面向对象的系统分析的步骤和方法。在本章中还对T o m c a t 的特点以 及其作为S e v l e t 容器的工作原理作了介绍。为后面开发在线考试系统奠定了技术 基础。 北京邮I 【1 人学软件T 程颂I j 论艾 4 1 系统需求分析 第四章系统的分析设计 采用软件工程的思想对在线考试系统进行需求分析,分析系统功能、性能两 个方面的要求;在需求分析的基础上进行系统总体设计。 4 1 1 性能需求分析 为保证系统能够长期、安全、稳定、可靠、高效的运行,系统应该满足以下 的性能需求: ( 1 ) 容错性和健壮性:作为网络考试系统,在考试过程中意外死机、停电、 网络故障等突发事件在所难免,如何保证在出现故障时能有效的保存考生的现场 数据以备故障排除后恢复考试现场,是系统容错处理中要重点考虑的问题;另外, 还要充分考虑到用户在使用系统的过程中可能进行不当操作,必须保证系统在收 到非法操作时能进行相应的错误处理,给予用户提示或警告,而不能影响系统的 正常运行。 ( 2 ) 准确性:在考试、计时、判断、评分等方面应该确保准确无误,否则 会影响评价结果的客观公正性,也会丧失使用者对系统的信任; ( 3 ) 及时性:在系统设计和开发过程中,要充分考虑系统当前和将来可能 承受的工作量,使系统的信息处理能力和响应时间能够满足用户的需求。 ( 4 ) 可扩展性:可扩展性是指系统能保证可持续增长以满足用户需求和业 务复杂性要求。系统在开发过程中,应该充分考虑以后的可扩充性。例如系统应 用规模会不断扩大、考试题型会随应用需求而扩展、用户的查询需求也会不断更 新和完善等。所有这些,都要求系统提供足够的手段进行功能的调整和扩充。对 于考试系统而言,这种扩展性就显得尤为重要,因为考试系统的功能完善是一个 渐进的过程,我们目前开发的这个系统需要随着考生的要求和技术的发展和需要 不断改进。所以可扩展性是非常必要的。 ( 5 ) 安全性:安全性是指系统能够保护数据或基础结构避免受恶意攻击或 者盗用。安全性是通过为信息的机密性,完整性和可靠性提供充分的保护来预防 风险,保障系统安全,是任何系统成功的基本要素。 ( 6 ) 可管理性t 可管理性是指可以很方便地对系统进行管理,确保系统的 北京I I l f l l Z 人学软件下程硕l :论文 工F 常运行管理和运作涉及以下几个因素:维护系统服务及其服务正常工作所需的 基础结构,工具以及管理员和技术人员。在线考试系统要求所有操作基本上都能 在线完成,即通过I E 浏览器实现对考试系统的维护和运行管理。 ( 7 ) 系统的数据要求:数据录入和处理的准确性和实时性。数据的一 致性与完整性。数据的共享与独立性。 ( 8 ) 便捷性和易维护性:要实现这一点,就要求系统应该尽量使用用户熟 悉的术语和中文信息的界面;针对用户可能出现的使用问题,要提供足够的在线 帮助,缩短用户对系统熟悉的过程。 4 1 2 功能需求分析 开发本系统的目的就是帮提高考试工作效率,实现考试信息化管理以及考试 流程的系统化、规范化和自动化。经过对实际考试业务过程的分析,最终提炼出 如下基本功能要求: ( 1 ) 系统可允许教师或学生在服务器端或在客户端使用浏览器通过I n t e r a c t 访问该系统数据库。 ( 2 ) 系统可同时对多个数据库进行操作,具有操作方便、易于维护的考试 题目数据库。不同的科目有各自的数据库,系统根据用户的要求自动选择相应的 数据库,并可以对其进行访问和维护。 ( 3 ) 系统为考试而设计,因此应可对试卷进行维护、管理。可按教师要求 自动生成一份或多份同等水平而题目不同的试卷; ( 4 ) 系统允许教师设置考场属性和组卷参数,并能够根据组卷参数随机抽 题生成试卷; ( 5 ) 系统应能实现考试控制功能。可在服务器端以及通过网络接受学生的 应考要求,接受并处理考生的答案,控制考生考试的答题时间。 ( 6 ) 系统可实现自动成绩管理。可自动对考生的答卷进行评分,并记录成 绩;系统还能够通过人工阅卷功能对考生试卷进行人工阅,以保证考生主观题的 成绩更加准确和合理; ( 7 ) 系统可提供查询的功能,包括查询成绩,查询考试科目,查询考试试 卷等。 4 2 总体设计方案 系统的总体设计即建立系统的对象模型,系统的对象模型包括静态模型和动 态模型。静态模型主要用类图,包图及对象图进行描述:动态模型主要用顺序图和 协作图来描述。赖、聚合等。也包括类的内部结构( 类的属性和操作) 。由于类图 2 4 北京邮I 【1 人学软件丁程f 哦l j 论文 描述的是一种静态关系,所以在系统的整个生命周期都是有效的。建立系统类图, 主要找出系统中的类与对象以及它们之问的关系。 4 2 1 系统设计模型 ( 1 ) 系统静态模型 系统静态模型主要是对系统静态结构的描述,其中类图尤其重要,是面向对 象方法的核心技术,它是对一类具有相同特征的对象的描述。它定义了系统中的 类以及类之间的联系,如关联、依赖、聚合等。也包括类的内部结构( 类的属性和 操作) 。由于类图描述的是一种静态关系,所以在系统的整个生命周期都是有效 的。建立系统类
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年校长职级校长述职评议题含答案
- 科举制的创立说课稿王天培市公开课金奖市赛课一等奖课件
- 儿科护理技能与关爱之道
- 肝移植术后早期细菌感染及危险因素
- 胸部疾病患者的护理与呼吸支持
- 2025年医务科医疗质量考核表
- 急性肾损伤的概念及早期诊断标准
- 《机电一体化综合实训》电子课件(项目2-任务1-子任务2)
- 《碎花系列模板》课件
- 《电控汽油喷射系统》课件
- 2026莫斯科贵金属交易行业市场现状供需分析及投资评估规划分析研究报告
- 2026秋统编版一年级语文上册第一次月考试卷(含答案)
- 《人体结构与功能》课件-骨关节炎
- COX 痛经症状评分量表(CMSS)
- T-CHAS 10-2-2-2024 中国医院质量安全管理 第2-2部分:患者服务 院前急救
- 2026年人教版小学数学三年级上册全册教案
- 2026-2030中国仲钨酸铵行业供需态势及投资策略分析研究报告
- 2026年中国超高性能轮胎市场数据研究及竞争策略分析报告
- 村卫生室安全输液制度
- 厦门大学介绍
- 手术安全核查制度课件
评论
0/150
提交评论