




已阅读5页,还剩59页未读, 继续免费阅读
(计算机应用技术专业论文)web图形交互应用的软件体系结构参考模型的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
华中科技大学硕士学位论文 = = = ;= = = = = ;= = = 自= ;= = = = = = ;= 摘要 f 软件开发实质上是针对特定的需求从问题域到解空间的求解过程。对于特定领域的 软件,不同的应用所对应的问题域具有某种程度上的相似性,领域分析为挖掘这一相似 性提供了有效的方法。通过领域分析,提取不同应用的共性,建立领域模型,可以从更 大粒度上实现软件复用。特定领域的软件体系结构不仅从软件复用的角度为该领域的应 用提供了可参考的解决方案,而且总结了该领域相似问题的分析、推理甚至建模过程, 有助于快速建立设计良好的可复用的软件系统。) , w e b 图形交互应用是一类有着众多共性的软件应用领域,随着网络应用技术的不断 发展,其应用范围也不断扩大,目前已经渗透到计算机应用的许多领域。为了总结w e b 图形交互应用领域先进的设计思想、成熟的开发经验,从软件体系结构的粒度上实现软 件复用,通过对w e b 图形交互应用的领域分析,给出了一种w e b 图形交互应用的软件 体系结构参考模型,为需要将企业应用数据以图形方式表现出来,同时处理用户和图形 交互的应用提供了一种可复用的软件构架。 为了对参考模型进行描述,分析了当前两种典型的软件体系结构描述方法,在此基 础上给出了一种软件体系结构的u m l 描述方法,并利用此方法描述了w e b 图形交互应 用的软件体系结构参考模型。该参考模型给出了一种采用模型一视图一控制器设计模式 描述图形的方法,以及利用样式表转换技术发布图形的方法。 通过对该参考模型的非功能属性进行分析,表明该软件体系结构具有良好的可复用 性、可扩展性、互操作性和可移植性,能够在一定程度上实现软件复用,提高类似系统 的开发效率。止,一7 7厂 芦。 关键词;软件复用;j i i i 漱件体系结构;苤i 矗菇基垂董;囊三蠹i 蕈5 墓面嗵星毁 应用;图形交互、 华中科技大学硕士学位论文 a b s t r a c t s o f t w a r ed e v e l o p m e n ti sap r o c e s sw h i c hs e a r c h e sas o l u t i o nf o rs p e c i a lr e q u i r e m e n t e s s e n t i a l l y a sf o rs p e c i a ld o m a i ns o f t w a r e ,d i f f e r e n tr e q u i r e m e n t sh a v es o m es i m i l a r i t i e s ,a n d d o m a i na n a l y s i sp r o v i d e sau s e f u lm e t h o dt of i n dt h e i rs i m i l a r i t i e sa n dt or e u s et h es o f t w a r e b ym o d e l i n gt h er e q u i r e m e n t s d o m a i n - s p e c i a ls o f t w a r ea r c h i t e c t u r ep r o v i d e s ar e f e r e n c e s o l u t i o nf o rd o m a i ns o f t w a r e ,a n dh e l p st od e v e l o pw e l l d e s i g n e da n dr e u s a b l es o f t w a r e s y s t e r n s w e b - b a s e di n t e r a c t i v eg r a p h i c a la p p l i c a t i o ni sas p e c i a ld o m a i no fs o f t w a r ea p p l i c a t i o n , a n di t sa p p l i e de x t e n ti se n l a r g i n gc o n t i n u o u s l yw i t ht h ed e v e l o p m e n to fn e t w o r ka p p l i c a t i o n t e c h n o l o g y i n o r d e rt os u m m a r i z ea d v a n c e d d e s i g nt h i n k i n g a n du s e f u l d e v e l o p m e n t e x p e r i e n c eo f t h ed o m a i n ,a n d t or e u s ei t ss o f t w a r ea r c h i t e c t u r e ,ar e f e r e n c em o d e lo fs o f t w a r e a r c h i t e c t u r ef o rw e b b a s e di n t e r a c t i v eg r a p h i c a la p p l i c a t i o ni sp r e s e n t e dt h r o u g hi t sd o m a i n a n a l y s i s t h er e f e r e n c em o d e lp r o v i d e sa r e u s a b l es o f t w a r ef r a m e w o r kf o ra p p l i c a t i o n sw h i c h n e e dt or e p r e s e n td a t aw i t hg r a p h i c sa n dt op r o c e s si n t e r a c t i o nb e t w e e n u s e r sa n d g r a p h i c s ho r d e rt 0d e s c r i b et h er e f e r e n c em o d c l ,t w oc l a s s i cs o f t w a r ea r c h i t e c t u r ed e s c r i p t i o n m e t h o d sa r ea n a l y z e d ,a n dt h e nau m ld e s c r i p t i o nm e t h o do fs o f h v a r ea r c h i t e c t u r e i s p r e s e n t e dt od e s c r i b et h er e f e r e n c em o d e l + t h e r e f e r e n c em o d e l p r o v i d e sa m e t h o dt od e s c r i b e g r a p h i c sw i t hm o d e l v i e w c o n t r o l l e rd e s i g np a t t e ma n dt op u b l i s hg r a p h i c sw i t h e x t e n s i b l e 5 t y l e s h e e tl a n g u a g et r a n s f o r m a t i o nt e c h n o l o g y b ya n a l y z i n g t h en o n f u n c t i o n a l p r o p e r t i e s o ft h er e f e r e n c em o d e l ,t h e s o f t w a r e a r c h i t e c t u r eh a sb e e np r o v e dt oh a v ee x c e l l e n tr e u s a b i l i t y , e x t e n s i b i l i t y , i n t e r o p e r a b i l i t ya n d t r a n s p l a n ta b i l i t y , s oi tc a nh e l pt oi m p l e m e n t s o f t w a r er e u s ea n dt oi m p r o v et h ed e v e l o p m e n t e f f i c i e n c yo f s i m i l a rs y s t e m si ns o m e e x t e n t i i 华中科技大学硕士学位论文 = = ;= = = = ;= = = = ;= = = ;= = = = ;= = = 2 = = = = = = k e yw o r d s :s o f t w a r er e u s e ;d o m m n s p e c i f i cs o r w a r ea r c h i t e c t u r e ( d s s a ) ;a r c h i t e c t u r e d e s c r i p t i o nl a n g u a g e s ( a d l s ) ;u n i f i e dm o d e l i n gl a n g u a g e ( l 兀l ) ;w e b _ b a s e d a p p l i c a t i o n ; g r a p h i c a li n t e r a c t i o n i i i 华中科技大学硕士学位论文 = = = = = = = = = = 一= 1 绪论 1 1 课题背景 随着企业应用需求的不断扩大,软件的规模也越来越庞大,开发人员已面临着日益 增长的系统复杂度。软件系统的复杂性极大地促进了人们对软件复用技术的研究。软件 复用通过利用现有的程序模块,缩短了开发周期,减少了开发成本,增强了系统的可靠 性”1 。任何复杂软件系统的设计和构造的一个关键环节就在于它的体系结构,好的体系 结构有助于确保系统满足可靠、简洁、可扩展和互操作等关键性能指标的要求,而坏的 体系结构则会带来灾难性的后果 2 1 。特定领域的软件体系结构通过对该领域的软件系统 进行抽象描述,给出一个一般性的解决方案,为同一领域中不同应用系统提供个快速 有效、稳定可靠的开发过程,从而在较大粒度上实现软件复用( 3 1 。目前,软件复用的实 践趋势之一就是将领域分析标准化,开发支持领域分析的方法和工具【4 ,5 1 。 w e b 图形交互应用是基于w e b 的网络应用的一个特定领域,该领域的不同应用系 统之间有着相似的功能和特征。基于w e b 的图形交互应用系统的主要功能是将企业应 用数据以图形的方式表现出来,并且能够响应用户和图形的交互操作,刷新图形显示。 这类系统的主要特征是根据企业应用逻辑或用户的交互操作对应用数据进行一系列变 换后,将数据以图形方式实时地表现出来。 目前,基于w e b 的图形交互系统已经得到了广泛的应用,其应用范围包括实时监 控【6 】、系统仿真和虚拟现实等。如何从这些相似的应用系统中发现该领域的共同点,提 取出共性,建立可复用的软件构件,是特定领域软件体系结构的主要研究课题。 本课题的研究工作是建立在华中电力调度通信中心的图形系统的基础上的,图形系 统是一个典型的w e b 图形交互应用系统,用于电力行业的生产过程中,对电力设备和 线路的运行状况进行实时监控。本课题研究的目的在于,通过对w e b 图形交互应用的 领域分析,给出一种该领域通用的软件体系结构参考模型,为基于w e b 的图形交互应 用系统提供一种开放的可复用的软件构架,为类似应用系统的开发人员提供一个可参考 华中科技大学硕士学位论文 = = = = = = = = = = = = = ;= = = = = = ;= = = = = = = ;= 一 的一般性的解决方案。 1 2 国内外研究概况 1 2 1 软件体系结构 1 2 1 1 研究意义 在过去的十年,软件体系结构( s o f t w a r e a r c h i t e c t u r e ,s a ) 作为软件工程的个重要的 研究课题受到了越来越多的重视。软件开发的先驱们逐渐意识到设计一个正确的软件体 系结构是系统设计和开发取得成功的一个至关重要的因素。 总的来说软件体系结构在软件的需求和实现之间起着桥梁的作用,如图1 1 所示。 通过对系统的抽象描述,软件体系结构揭示了系统的本质属性而隐藏了实现细节,使得 软件设计人员能够把握住系统的本质,利用它构建系统蓝图,从而设计出满足具有类似 需求的系统。具体来说软件体系结构在软件开发的以下六个方面具有重要的作用: 图1 1 软件体系结构的桥梁作用 ( 1 ) 理解0 d n d e r s t a n d i n g ) 。软件体系结构通过对大型系统设计的高层次的抽象描述, 简化了系统的复杂程度,帮助我们对系统进行理解。同时,它还揭示了系统设计的高层 次的约束条件和选择特定体系结构的原则扪。 ( 2 ) 复用( r e u s e ) 。体系结构描述支持多层次的软件复用。当前软件复用的研究工作主 2 华中科技大学硕士学位论文 = ;= = = ;一= = : 要集中在构件库的复用,而体系结构的设计不仅支持大型构件的复用,而且还支持集成 了构件的框架的复用。特定领域的软件体系结构、参考框架和体系结构设计模式已经证 明了这点【9 1 。 ( 3 ) 构建( c o n s t r u c t i o n ) 。体系结构通过描述系统主要构件以及它们的相互依赖关系, 为系统开发提供了部分参考。例如体系结构的层次视图记录了系统实现的各部分之间的 抽象边界,清晰地标识了系统的主要内部接口和依赖其他构件提供服务的构件的约束条 件。 ( 4 ) 演化( e v o l u t i o n ) 。软件体系结构明确指出了系统的瓶颈,指明了系统演化的方向。 软件维护人员能够更好地理解演化的方向,精确地估计改进费用。体系结构描述通过清 晰地区分构件和允许构件之间交互的机制,将构件的功能和它们之间的交互方式分离, 这种分离允许构件更加容易改变其使用的连接机制,而连接机制决定了构件的互操作 性、原型( p r o t o t y p i n g ) 和可复用性。 ( 5 ) 分析( a n a l y s i s ) 。体系结构描述提供了新的分析手段,包括系统一致性校验分析1 0 “j ,体系结构风格的约束条件分析1 ,质量属性一致性分析、依赖分析和特定领域 的特定体系结构风格分析1 1 5 - t 7 l 。 ( 6 ) 管理( m a n a g e m e n t ) 。实践经验表明在工业化软件开发过程中成功的项目将个行 之有效的软件体系结构作为关键的里程碑。对体系结构的评估促进了对软件需求、实现 策略和潜在风险的更清晰的理解”i 。 1 2 1 2 发展方向 目前软件体系结构的研究取得了三个方面的进步:( 1 ) 体系结构描述语言 ( a r c h i t e c t u r ed e s c r i p t i o nl a n g u a g e s ,a d l s ) 和z 具的开发 19 】:( 2 ) 产品线工程和体系结构 标准的出现 2 0 】:( 3 ) 体系结构设计技术的编纂和分发( c o d i f i c a t i o na n dd i s s e m i n a t i o n ) 。 虽然软件体系结构这课题在软件工程中的地位比起十年前更加稳固了,但是它并 没有作为一门正式的课程在软件工程的教学实践中开展起来。这一方面是因为对这种新 的观念的普及需要时间,另一方面是因为体系结构设计的技术基础还不够成熟。但是软 华中科技大学硕士学位论文 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 一 件开发过程的重大改进将会对体系结构的研究产生深远的影响,软件体系结构的未来将 会朝着以下三个方向发展: ( 1 ) 促进软件体系结构的标准化。软件开发过程中的一个重要的议题就是系统中的哪 些模块需要自己开发,而哪些模块可以从别的地方得到。通过将软件的部分模块委托给 其他组织开发,可以缩短软件开发周期,提高软件产品在市场中的竞争力。如果各个组 织采用统一的标准开发模块之间的接口,就可以使各个模块更好地集成。软件子合同过 程促进了基于组件的软件开发方法( c o m 、c o r b a 或e j b ) 的形成。但是基于组件的软 件开发方法是建立在对象之间的过程调用的低层次的体系结构的基础上的,如果需要更 高的系统集成度,则需要更高层次的体系结构标准,这一趋势将会导致“基于组件”的 软件开发方法向“基于体系结构”的软件开发方法的转变,从而促进软件体系结构的标 准化。 ( 2 ) 以网络为中心( n e t w o r k c e n 砸c ) 的计算模式。以p c 为中心的计算模式向以网络 为中心的计算模式转变的趋势是不可避免的,因为后者具有明显的优势:它可以提供更 多更快的信息和服务。传统的软件被开发成一个封闭的系统,它们在系统设计者没定的 控制条件下运行。无处不在的网络服务要求软件必须被开发成开放的系统,i n t e m e t 就 是这样的一个系统,它仅用一系列标准化的协议实现站点之间的互联,单个站点独立管 理,并且各个站点的硬件和软件可能具有相当大的差别,对于这样的系统就需要有足够 灵活的体系结构来满足分布式的网络计算能力。 ( 3 ) 无处不在的( p e r v a s i v e ) 计算模式。未来的计算可能由一些异构的计算设备完成, 如烤面包机、音响系统、智能卡等等。这些设备可能需要根据其物理特性和计算能力进 行特殊的考虑,也可能会以不可预知的方式来参与计算,因此,需要一种更加灵活的体 系结构来处理这些设备的动态配置问题,以便能够保证它们协调一致地工作。 1 2 1 3 特定领域软件体系结构 特定领域软件体系结构( d o m a i n - s p e c i f i cs o f t w a r ea r c h i t e c t u r e ,d s s a ) 是将软件体系 结构理论应用到具体领域的过程f 引1 。鉴于特定领域的应用系统具有相似的特征,通过领 4 华中科技大学硕士学位论文 = = = = = = = = = = = = ;= = = = = = = = = = = = = = = = = 一一 域分析提取系统共性,建立领域通用的软件构件,可以有效地实现复用。 特定领域软件体系结构研究的意义不仅在于软件复用水平的提高,而且对软件方法 学的发展产生了一些本质性的影响。基于d s s a 的软件开发应采用新的软件生命周期的 观点,研究符合其特定的软件开发过程2 2 1 。特定领域应用系统的开发主要是分析和解决 具体系统中的特定问题。由于系统的总体构架已经确定,并且有大量的可复用构件,所 以一个应用系统的开发不再是一切从零开始的分析、设计、编程与测试,也不是在以往 的开发过程基础上局部地使用一些可复用构件,这种条件下的系统开发可以看成一个以 组装为主的软件开发过程【2 3 】。 h a y e s - r o t h 和t r a c z 分别对特定领域软件体系结构给出了不同的定义。h a y e s r o t h 侧重于d s s a 的特征,强调系统由构件组成,适用于特定领域,有利于开发成功应用程 序的标准结构;t r a c z 则更侧重于d s s a 的组成要素,指出d s s a 应该包括领域模型、 参考需求、参考体系结构、相应的支持环境或设施、实例化、细化或评估的方法与过程 2 4 1 。两种d s s a 定义都强调了参考体系结构的重要性。 d s s a 作为软件工程目前的一个研究热点,许多研究工作正在进行。由美国国防部 支持的s t a r s 项目提出的双生命周期模型是这一研究方向的重要成果 2 ”。常见的d s s a 有军事领域软件体系结构、测试环境的体系结构【2 7 】、电信领域软件体系结构【2 8 】、c a s e 体系结构、c a d 软件的参考模型、信号处理d s s a 等。 1 2 1 4 体系结构描述语言 用非形式化的框线图( b o x 1 i n e ) 描述体系结构设计导致了很多问题:设计的意图可能 表达得不是很清晰,非形式化的图表不能用于形式化的一致性、完整性和正确性分析。 为了解决这些问题,许多研究人员提出了用于表达和分析体系结构设计的形式化符号, 即体系结构描述语言( a r c h i t e c t u r ed e s c r i p t i o nl a n g u a g e s ,a d l s ) 。这些符号通常提供了概 念框架和具体语法用来描述软件体系结构的特征,一般也提供了用于分析、显示、编辑 或模拟体系结构特征的工具。 a d l s 比较典型的例子有c 2 2 ”,d a r w i n l 3 0 1 和w r i g h t 【3 1 j 。c 2 是一种基于构件和消息 华中科技大学硕士学位论文 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = e = = = 一: 的a d l ,适用于大型频繁交互的层次型图形用户界面的软件的体系结构描述:d a r w i n 和w r i g h t 分别将霄演算和c s p 作为其数学基础,适用于分布、并发类型的体系结构描 述。国内的一些学者则相应地提出了几种比较有特色的体系结构描述语言,如基于框架 和角色模型的软件体系结构规约f r a d l 3 2 1 ,多智能体系统体系结构描述语言 a a d l 3 3 1 ,可视化体系结构描述语言x y t _ d a d l t 3 4 1 ,基于主动连接件的体系结构描述语 言t r a c e r ( 3 5 1 等。 每种a d l 都提供了不同的方法来描述体系结构的设计,而且各有千秋,这也产 生了一个问题:各种语言描述的体系结构之间不便于交流。于是产生了一种体系结构交 换语言a c m e ,它提供了一个描述体系结构的简单框架和一种灵活地在体系结构上添加 语义注解来扩展框架的机制,支持从一种a d l 向另一种a d l 规格说明的转换i 3 6 1 。 s h a w 和g a r l a n 倡导将连接件作为a d l 中的第一类实体,同时还提出一个好的a d l 框架应具备几个方面的特点,即组装性、抽象性、重用性、可配置、异构性和可分析。 在此基础上,m e d v i d o v i e 提出了一种a d l 的分类和比较框架【3 7 】,详细分析了多种典型 的a d l 的优点与不足。m e d v i d o v i e 的工作应该算是对当前a d l 研究的最全面的总结, 并为将来的a d l 的开发提供了很有价值的参考建议。 1 2 2 统一建模语言 1 2 2 1 发展简史 面向对象的建模语言出现在2 0 世纪7 0 年代中期至8 0 年代后期之间,随着面向对 象编程技术的出现和日趋复杂的应用,一些研究人员开始用分析和设计的新方法进行实 践。通过从实践中进行总结,一些方法脱颖而出,其中最著名的有b o o c h 方法 3 8 1 , j a c o b s o n 的o o s e ( 面向对象的软件工程) 方法【3 9 】和r u m b a u g h 的o m t ( 对象建模技术) 方法【“。这 些方法中的每一种都是完整的,但是又都被认为各有优缺点。简单来说,b o o c h 方法在 项目的设计和构造阶段的表达能力特别强;o o s e 对以用况作为一种途径来驱动需求捕 获、分析和高层设计提供了极好的支持:而o m t - 2 对于分析数据密集型信息系统非常 华中科技大学硕士学位论文 = ;= = = = = = 目一= 有用。 2 0 世纪9 0 年代中期,b o o c h 、j a c o b s o n 和r u m b a u g h 开始彼此从对方的方法中吸纳 思想,借鉴经验,致力于创建统一建模语言( u n i 丘e qm o d e l i n gl a n g u a g e ,u m l ) 的工作。 在这期间,有很多软件组织加入到u m l 的创建工作中来,成立了一个u m l 伙伴组织, 这些合作伙伴协作产生的u m l i 0 版本是一个定义明确的、富有表现力的、强大的、可 用于广泛问题域的建模语言。 为了对u m l 规格说明进行形式化,并把u m l 与其它的标准化成果结合起来,成 立了一支由m c is y s t e m h o u s e 的c r i sk o b r y n 领导并由r a t i o n a l 的e de y k h o l t 管理的语 义专门组织。在1 9 9 7 年7 月,把u m l i 1 版本提交给o m g ,申请进行标准化审查。1 9 9 7 年1 1 月,u m l l 1 版本被o m g 采纳。u m l 的维护工作由o m g 的修订专门组织( r e v i s i o n t a s k f o r c e ,r t f ) 接管,现在最新的版本是2 0 0 3 年3 月发布的u m l l 5 ,在该版本中增加 了动作语义( a c t i o ns e m a n t i c s ) 描述,并更正了以前版本中的一些问题。 1 2 2 2 用u m l 描述软件体系结构 采用精确的语言并不是描述软件体系结构的唯一途径。许多研究人员开始采用通用 工具来为体系结构建模,最近研究人员提出了如何将a d l s 中的术语直接映射到u m l 中面向对象概念的方法1 4 “3 】。采用a d l 与u m l 的描述方法之间的关系如图1 2 所示。 图1 2 采用a d l 与u m l 的描述方法之间的关系 路径a - - d 用a d l 作为软件体系结构描述语言,路径b - - e 用u m l 作为软件体系 华中科技大学硕士学位论文 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 结构描述语言,而路径a c e 先用a d l 描述软件体系结构,然后在实现之前将其转 换为u m l 描述。 使用u m l 这样的通用建模语言作为描述软件体系结构的工具至少有以下三个优 点: ( 1 ) 便于软件开发人员进行交流。用a d l s 描述软件体系结构使用的概念术语各不相 同,相互之间又不兼容,往往使软件开发人员交流起来觉得很困难。而u m l 足一种统 一的、标准化的建模语言,采用标准化的术语描述软件体系结构可以方便软件开发人员 进行交流。 ( 2 ) 便于软件开发人员尽快地理解软件体系结构。由于u m l 在软件开发组织中应用 非常广泛,目前已经成为工业界事实上的标准。软件开发人员对u m l 的术语都比较熟 悉,用u m l 描述的软件体系结构可以使软件开发人员更容易理解。 ( 3 ) 在软件体系结构的描述与面向对象的软件开发之间提供了一个更为直接的联系。 在u m l 中采用面向对象的术语对软件体系结构建模,而这些术语可以直接映射到面向 对象的软件开发中,便于软件开发人员对软件进行编程实现。 但是使用u m l 作为体系结构的描述语言也有缺点,它不能完全表达体系结构的概 念,也缺乏对体系结构风格、约束条件等建模的直接支持。 1 2 3w e b 图形交互技术 随着网络通信技术的不断发展和基于w e b 的网络应用需求的日益增长,许多专家 学者对这一领域进行了深入研究,基于网络的仿真( w e b - b a s e ds i m u l a t i o n ) 就是其中一个 具有广阔发展前景的研究方向【“。基于网络的应用技术的研究极大地推动了w e b 图形 交互技术的发展,自1 9 9 6 年以来,w e b 图形交互技术的研究已经取得了重大进展,其 中最令人注目的是可缩放矢量图形( s c a l a b l ev e c t o rg r a p h i c s ,s v g ) 和虚拟现实建模语言 ( v i r t u a lr e a l i t ym o d e l i n gl a n g u a g e ,v r m l ) 。 华中科技大学硕士学位论文 = = 2 = = = = = = = ;= = ;= = = = = = 2 = = 2 = ;= = = : 1 2 3 1 可缩放矢量图形 近年来,h t m l 作为一种在i n t e m e t i n t r a n e t 上进行数据浏览和数据交换的主要文件 格式,为网络技术的蓬勃发展发挥了不可磨灭的作用。但随着其应用的不断深入,它的 不足之处也逐渐暴露出来,主要有以下两点:一是采用固定、有限的若干个标记来描述 数据,而且不能表达数据的语义:二是不支持矢量图形。这两大缺陷越来越成为限制 w e b 应用的障碍。作为一种改进,w 3 c 组织于1 9 9 8 年发布了x m l l 0 规范,x m l 以 其可扩展性解决了h t m l 在标记上的不足,使得i n t e r n e t 技术向前迈进了一大步,但它 仍不支持矢量图形。与此同时,各大软件厂商和组织纷纷推出自己的矢量图形规范,其 主要代表有a d o b e 制定的p g m l ( p r e c i s i o ng r a p h i c sm a r k u pl a n g u a g e ) 、a u t o d e s k 和微软 等提出的v m l ( v e c t o rm a r k u pl a n g u a g e ) 。此外,m a c r o m e d i a 和a p p l e 分别推出了f l a s h 和q u i c k t i m e 文件格式来支持w e b 矢量图形,但这些文件格式由于缺乏开放的标准和 跨平台的支持,依然无法满足应用的需要。正是在这种情况下,为了统一标准,结束各 种文件格式竞争的混乱局面,w 3 c 组织专门成立了s v g 工作组,致力于图形标准的制 定工作,并于1 9 9 9 年发布了第一个讨论草案,后几经修订,于2 0 0 1 年9 月发布了最终 的推荐标准。 目前,s v g 以其简单高效的绘图指令、丰富的表现能力、跨平台的显示和打印效果、 功能强大的交互性和良好的可读性 4 5 1 ,已经得到了广泛的应用,许多著名的平面设计软 件厂商纷纷推出了支持s v g 的浏览插件和编辑工具。鉴于s v g 的众多优点,采用s v g 技术的w e b 图形交互应用必定会成为网络应用的一个新的热点。 1 2 3 2 虚拟现实建模语言 虚拟现实建模语言是虚拟现实技术和i n t e m e t i n t r a n e t 技术结合的产物。1 9 9 4 年1 0 月,在第二届w w w 国际会议上公布了v r m l i 0 的草案,它是由s g i 的g a v i n b e l l 在 o p e ni n v e n t o r 文件格式的基础上,增加了必要的w w w 特征后制定出的a 1 9 9 5 年5 月 发布了v r m l l 0 规范,1 9 9 6 年8 月在s g i 提案基础上形成了v r m l 2 0 ,1 9 9 7 年1 2 月 v r m l 2 0 由国际标准化组织定义成国际标准,称为v r m l 9 7 。v r m l 9 7 是在网络上传 华中科技大学硕士学位论文 = = ;= = = = = = = ;= = = = = = = = = = = = = = = = = = = = 输交互式三维图形和建立共享虚拟世界的一项重要的创新性技术,但随着w e b 技术的 迅速发展和v r m l 应用领域的扩展,v r m l 9 7 逐渐暴露出了它的缺点,如属性过多难 于实现、与其它应用集成困难、稳定性和一致性不能满足用户要求等问题,这些问题严 重阻碍了w e b 交互式三维图形技术的发展,以及交互式三维图形技术在w e b 上的大规 模应用【4 6 1 。 新一代面向w e b 的交互式三维图形规范x 3 d 0 1 x t e n s i b l e3 d ) 就是在这样的背景下诞 生的。1 9 9 8 年1 2 月,在原v r m l 组织基础上成立了w e b 3 d 联盟,致力于v r m l n g ( v r m l n e x t g e n e r a t i o n ) 标准和x 3 d 网络三维标准的制定。x 3 d 是针对v r m l 9 7 规 范的不足,为解决交互式三维图形技术在网络上的大规模应用问题,而提出的新一代的 三维图形规范。x 3 d 规范向后兼容v r m l 9 7 规范,与x m l 集成,采用构件化的设计 思想,具有很强的可扩展性,在电子商务、可视化仿真、数据库可视化、娱乐、教育等 领域都有很好的应用前景。美国海军研究生院( n a v yp o s t g r a d u a t es c h o o l ,n p s ) 是从事大 规模共享虚拟环境的研究的国际著名机构,现在正准备将x 3 d 技术应用于n p s n e t v 的设计和实现中【4 7 1 。 目前国外对v r m l 的研究除了开发v r m l 制作工具( 如3 d sm a x ) 以及各类v r m l 支持软件( 女n - - 维文件格式与v r m l 文件的转换) 之外,对v r m l 浏览器的研究也有不 少的科研工作者投身其中。v r m l 在科学界也有广泛的应用,如化学分子模型的模拟, 生物学中d n a 模型,物种群落行为的仿真以及人工生命模拟等等。由于x 3 d 本身的平 台无关性、易扩展性、实现的灵活性,尤其是与x m l 集成的特点,基于x 3 d 技术的分 布式交互仿真( d i s t r i b u t e di n t e r a c t i v es i m u l a t i o n ,d i s ) i 4 8 1 将会是w e b 图形交互应用领域的 一个具有广阔应用前景的发展方向。 1 3 课题主要研究工作 为了对现有的w e b 图形交互应用系统的软件体系结构进行复用,以便提高类似系 统的开发效率,本文的研究设想是通过给出一个w e b 图形交互应用的软件体系结构参 考模型,为该领域系统的开发人员提供一个被证明良好的一般性的解决方案。为此,首 1 0 华中科技大学硕士学位论文 = = = = = = = = = = = ;= = = = = = = = = = = = = = = = = = = = 一= = 一 先研究软件体系结构的描述方法,针对目前软件体系结构描述方法的缺点,给出一种用 u m l 表达的通用的软件体系结构描述方法,并利用此方法描述w e b 图形交互应用的软 件体系结构参考模型。 本课题的研究工作主要包括以下几个方面: ( 1 ) 对两种典型的软件体系结构描述方法( 即4 + 1 视图模型和b o o c h 描述方法) 进行分 析,指出它们各自的优缺点,并对它们进行对比分析,总结它们的相同点和不同点。 ( 2 ) 在对两种方法分析的基础上,给出一种用u m l 描述软件体系结构的方法,对此 方法所包含的具体内容及其描述的软件体系结构的构件、连接件及其关系的确定准则进 行详细地阐述。 ( 3 ) 利用上面给出的软件体系结构的u m l 描述方法,描述w e b 图形交互应用的软件 体系结构,给出一个w e b 图形交互应用的软件体系结构参考模型。 ( 4 ) 给出一种采用模型一视图一控制器( m o d e l v i e w c o n t r o l l e r , m v c ) 设计模式的图 形描述方法,以及利用样式表转换( e x t e n s i b l es t y l e s h e e tl a n g u a g et r a n s f o r m a t i o n , x s l t l 技术发布图形的方法。 ( 5 ) 介绍w e b 图形交互应用的软件体系结构参考模型的一个具体应用实例,并结合 此实例对该参考模型进行分析和评价。 本文所给出的w e b 图形交互应用的软件体系结构参考模型是国内外众多优秀软件 开发人员在基于网络的应用领域实践过程中的一个最新的研究成果,它是集体智慧的结 晶。鉴于用u m l 描述软件体系结构所具有的优点,可以预见利用该方法描述的w e b 图 形交互应用的软件体系结构参考模型对该领域的软件开发人员具有较高的参考价值。 华中科技大学硕士学位论文 = = ;= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 一 2 软件体系结构的描述方法 在软件体系结构的描述方法中,k r u c h t e n 提出的4 + 1 视图模型4 9 1 是当前软件体系结 构描述的一个典型范例,而b o o c h 则从u m l 的角度给出了一种由五个视图构成的软件 体系结构描述方法( 以下简称b o o c h 描述方法) ( 5 0 , 5 1 l 。本章简要介绍这两种软件体系结构 描述方法,分析它们各自的优缺点,通过对它们进行对比分析,指出其相同点和不同点。 2 14 + 1 视图模型 2 1 1 模型概述 为了理解系统的软件体系结构,可能需要从多个角度来进行描述。使用多个视图描 述软件体系结构,可以使最终用户、开发人员、系统工程师、项目经理等各自独立地对 待所关注的问题,从而避免在单个视图中表达过于密集的内容导致体系结构描述不清 晰。4 + 1 视图模型就是一个采用五个相互关联的视图对软件体系结构进行描述的经典模 型。 4 + 1 视图模型由以下五个视图组成,如图2 1 所示: ( 1 ) 逻辑视l g l ( 1 0 9 i c a lv i e w ) 。当采用面向对象的设计方法时,逻辑视图描述了设计的 对象模型;当采用数据驱动的设计方法时,可以用其它形式的逻辑视图( 如e r 图) 来代 替。 ( 2 ) 进程视图( p r o c e s sv i e w ) 。进程视图描述了系统设计的并发和同步方面的机制。 ( 3 ) y p 发视图( d e v e l o p m e n tv i e w ) 。开发视图描述了软件在其开发环境中的静态组织结 构。 ( 4 ) n 视 ( p h y s i c a lv i e w ) 。物理视图描述了软件与运行它的硬件之间的映射关系, 反映了软件在硬件上的物理分布。 华中科技大学硕士学位论文 = = = = = = = = = = = = 一= ( 5 ) 场景( s c e n a r i o s ) 。场景反映了系统关键的功能需求,它将以上四个视图有机地结 合起来,比较细致地描述了需求和体系结构之间的关系。 图2 14 + 1 视图模型描述的软件体系结构 采用4 + 1 视图模型的软件开发过程是一个基于场景驱动方法f s c e n 耐。一d r i v e n a p p r o a c h ) 的迭代过程( i t e r a t i v e p r o c e s s ) 。系统设计人员首先捕获对系统的体系结构最为重 要的几个场景,然后分别利用上述四种视图进行描述,经过多次迭代开发过程后,得到 一个稳定的体系结构描述。 2 1 2 模型分析 4 + 1 视图模型采用五个相互关联、协作一致的视图对软件体系结构进行描述。每个 视图可能都描述了系统静态或动态方面的一些内容,但侧重点不同,每个视图只描述那 些对某些开发人员感兴趣的概念集合,而这些视图起从整体上描绘了软件的蓝图。这 样就可以使不同的人尽快地找到他们所关注的部分,如系统工程师可能会从物理视图开 始,然后是进程视图:最终用户可能只关心逻辑视图;而项目经理和软件配置管理人员 可能更关心开发视图。 在4 + 1 视图模型中,每个视图都使用自己特定的术语来描述软件体系结构的蓝图。 体系结构设计师也可以为每个视图应用不同的体系结构风格,因此允许同一个系统中存 在多种不同的体系结构风格。系统设计人员也可以采用其它的术语、工具和设计方法来 华中科技大学硕士学位论文 = = = = = = = = = ;= = = = = ;= = = = = = = = = = = = = = 一 = : 描述视图。 用4 十l 视图模型描述软件体系结构由于概念术语尚不统一,描述规范还不能达成一 致认识,描述方法也没有图形化描述方法简单直观,因此在软件开发过程中还没有发挥 重要作用。 2 2b o o c h 描述方法 2 2 1 方法概述 开发人员以相同的语言进行交流是软件项目取得成功的一个基本条件。不同的成员 以不同的视图来观察系统的设计和实现,以统一的词汇和语言表达开发过程的各个活 动,这正是统一建模语言u - m l 充当的角色。u t v l 是一种可视化、详述、构造和文档化 软件密集型系统的图形语言。 b o o c h 描述方法利用u m l 对软件体系结构建模,从以下五个方面描述了软件体系 结构f 如图2 2 所示) : ( 1 ) 用况视图( u s ec a s ev i e w ) f l j 专门描述可被最终用户、分析人员和测试人员看到的 系统f 亍为的用况组成。它捕获了系统最重要的需求,描述了形成软件体系结构的动力。 该视图的静态方面由用况图表现,动态方面由交互图、状态图和活动图表现。 ( 2 ) 设计视图( d e s
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 解析卷人教版(五四制)6年级数学下册期末试题附完整答案详解(名师系列)
- 骨科护理学选择题试题与答案
- 2025年新能源汽车二手车市场评估与流通政策法规解读与应对策略报告
- 2025年在线教育平台教学资源库建设与教学效果评估策略报告
- 解析卷福建省永安市七年级上册有理数及其运算章节训练试题
- 养老服务协议范本
- 威海市编导岗位国企招聘笔试题
- 2025地形图保密承诺合同涉及国家重要交通线路规划
- 2025版智慧城市照明系统日常维护及升级合同
- 2025版智慧农业管理系统软件销售与技术服务协议
- 可视喉镜培训课件
- 《怎样听课评课》课件
- DB64+1841-2022+养老机构分级护理服务规范
- 《茶文化与茶健康》第一讲
- OBE理念下的小学音乐教学设计反向思路初探
- GB 24541-2022手部防护机械危害防护手套
- 智慧产业园综合管理平台解决方案
- 国王的恩赐-传奇-任务全书
- 资产负债表(个体工商户)
- 植物生产与环境单元一PPT
- 水浒人物介绍-鲁智深
评论
0/150
提交评论