(计算机应用技术专业论文)基于构件化软件的动态演化研究与应用.pdf_第1页
(计算机应用技术专业论文)基于构件化软件的动态演化研究与应用.pdf_第2页
(计算机应用技术专业论文)基于构件化软件的动态演化研究与应用.pdf_第3页
(计算机应用技术专业论文)基于构件化软件的动态演化研究与应用.pdf_第4页
(计算机应用技术专业论文)基于构件化软件的动态演化研究与应用.pdf_第5页
已阅读5页,还剩70页未读 继续免费阅读

(计算机应用技术专业论文)基于构件化软件的动态演化研究与应用.pdf.pdf 免费下载

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

文档简介

ad i s s e r t a t i o ns u b m i t t e dt og u a n g d o n gu n i v e r s i t yo ft e c h n o l o g yf o rt h ed e g r e eo fm a s t e ro fe n g i n e e r i n gs c i e n c es t u d ya n da p p l i c a t i o no nc o m p o n e n t - b a s e ds o f t w a r ed y n a m i ce v o l u t i o nm a s t e rc a n d i d a t e :g u a nx i a n c h u ns u p e r v i s o r :a s s o c i a t ep r o f x uh a i s h u im a y2 0 1 0f a c u l t yo fc o m p u t e rg u a n g d o n gu n i v e r s i t yo ft e c h n o l o g yg u a n g z h o u ,g u a n g d o n g ,p r c h i n a ,5 10 0 9 03洲8舢0洲64舢7n川i-y摘要摘要由于用户需求和运行环境会不断的变化,软件系统在运行过程要不断地更新,这导致了软件演化性的不断增强,因而演化性也成为了软件的本质属性。目前软件演化主要分为两类:静态演化和动态演化。传统的静态演化的主要做法是根据用户新的需求,开发新的功能模块或更新已存在的功能模块,编译后生成新的应用程序,然后再部署更新后的系统。然而,对于某些领域的软件系统来说,它要求以7 * 2 4 小时不间断地工作,如空中交通管制系统、金融交易系统、网络服务系统等,如果以静态演化的方式来更新系统,将会带来巨大的损失,这就要求软件具有动态更新的能力。正是由于动态演化具有不问断提供服务的优点。目前已成为软件工程研究的热点。由于基于构件的软件开发提高了软件的可重用性,缩短了软件的开发周期,减低了软件的开发成本,提高了软件的质量和软件的互操作性,因而被越来越多的人所接受,同时也被认为是一种具有很好前景的开发技术。目前,基于构件的软件开发已经软件开发的主流,而基于构件开发的软件能够更好的支持软件的动态演化。使用传统语言( 如c 语言) 开发的软件,由于其各功能模块是紧密耦合的,很难对功能模块进行动态演化,通常演化的粒度是整个应用程序。在面向对象的丌发技术出现之后,由于其具有良好的封装性,不仅提高了软件的复用性,也为软件演化提供了良好的软件结构,但是其缺少对动态演化的支持和管理机制,因而也难于实现。而基于构件化的软件不仅具有良好的、支持动态演化的结构,而且构件运行的支撑平台可以对构件的生命周期进行管理,增强构件演化的灵活性和对构件动态演化进行有效管理。本文首先对构件技术和软件动态演化技术进行了研究,对基于过程、面向对象和基于构件系统的动态演化进行了分析和研究。然后介绍了支持动态演化的类装载机制,j a v a 反射机制以及动态演化过程中要解决的主要问题。本文根据e j b 构件的生命周期的不同状态,给出了构件的动态演化方案( 策略) 。保证了处于不同生命周期状态的构件的演化工作能够正确、安全地进行即不会导致构件状态的丢失和系统的不一致性。本文还给出了构件的动态演化框架,该框架的设计采用集中式管理方式,方便对演化过程的整体控制和管理。最后将软件动态演化技术和构件动态演化方案应用到教育采购系统中,实现对采购系统中的业务构件( e 旧构件) 进行动态演化,并通过一个权限广东工业大学硕士学位论文管理中的角色管理构件( 无状态会话b e a n 构件) 为例来验证构件演化方案的可行性。关键词:软件演化,e j b 构件,构件状态迁移,演化策略i la b s t r a c ta b s t r a c ta st h es o f t w a r es y s t e mc o n s t a n t l yu p g r a d i n gv a r i e sw i t ht h er e q u i r e m e n t sa n dt h eo p e r a t i n ga m b i e n t ,w h i c hl e a dt ot h ec o n t i n u o u se n h a n c e m e n to fs o f t w a r ee v o l u t i o n f o rt h i sr e a s o n , e v o l u t i o nb e c o m e st h es o f t w a r en a t u r a lp r o p e r t y n o w a d a y s ,s o f t w a r ee v o l u t i o ni sd i v i d e di n t ot w oc a t e g o r i e s :s t a t i ce v o l u t i o na n dd y n a m i ce v o l u t i o n d e v e l o pn e wm o d u l eo ru p g r a d ee x i s t e dm o d u l ei na c c o r d i n gw i t hn e wu s e rr e q u i r e m e n t ,g e n e r a t et h ea p p l i c a t i o np r o g r a mt h r o u g hc o m p i l i n g ,t h e nd e p l o yt h eu p g r a d i n gs y s t e m , t h e s ea r et h em a i na p p r o a c ho ft r a d i t i o n a ls t a t i ce v o l u t i o n h o w e v e r , s o n i cs o f t w a r en e e d su n i n t e r r u p t e dr u ni n7 2 4 一h 0 us u c ha sa i rt r a f f i cc o n t r o ls y s t e m s ,f m a n c i a lt r a n s a c t i o ns y s t e m , n e t w o r ks e r v i c es y s t e me t c i tw o u l db r i n gh u g el o s s e sw h e nt h es o f t w a r eu s e ss t a t i ce v o l u t i o nt ou p g r a d e ,b u tt h ed y n a m i ci sn o t t h e r e f o r e ,i tr e q u i r e st h es o f t w a r eh a st h ed y n a m i cu p g r a d i n ga b i l i t y t h ed y n a m i ce v o l u t i o nh a sb e c o m eah o tr e s e a r c hi ns o f t w a r ee n g i n e e r i n gb e c a u s eo ft h eu n i n t e r r u p t e ds e r v i c ea d v a n t a g e a sc o m p o n e n t - b a s e ds o f t w a r ed e v e l o p m e n tt oi m p r o v es o f t w a r er e u s a b i l i t y , r e d u c et h es o f t w a r ed e v e l o p m e n tc y c l e ,d e c r e a s ed e v e l o p m e n tc o s t s ,i m p r o v es o f t w a r e sq u a l i t ya n di n t e r a c t i o n , t h e r e f o r e ,m o r ea n dm o r ep e o p l ea c c e p ti t a tt h es a m et i m e ,i t sc o n s i d e r e dt ob eag o o dp r o s p e c to fd e v e l o p m e n to ft e c h n o l o g y c u r r e n t l y , i t sp o p u l a rt ou s ec o m p o n e n t - b a s e ds o f t w a r ed e v e l o p m e n tt od e v e l o ps o f t w a r e t h es o f t w a r ew h i c hw e r ed e v e l o p e db yt r a d i t i o n a ll a n g u a g e s ( s u c ha sc ) ,i ti sd i f f i c u l tt os u p p o r td y n a m i ce v o l u t i o no fm o d u l e sb e c a u s eo fi t sf u n c t i o n a lm o d u l e sa r et i g h t l yc o u p l e d ,s o ,u s u a l l ye n t i r ea p p l i c a t i o nn e e dt oh ee v o l v e d i no b j e c t o r i e n t e dd e v e l o p m e n tt e c h n o l o g ya p p e a r s ,b e c a u s eo fi t sg o o de n c a p s u l a t i o n , n o to n l yt oi m p r o v et h es o f t w a r er e u s e ,b u ta l s ot op r o v i d eag o o ds o f t w a r es t r u c t u r ef o rs o f t w a r ee v o l u t i o n , h o w e v e r , i t sd i f f i c u l tt oa c h i e v er e s u l tf o r mi t sl a c ko fs u p p o r tf o rd y n a m i ce v o l u t i o na n dm a n a g e m e n tm e c h a n i s m t h ec o m p o n e n t b a s e ds o f t w a r ei sn o to n l yg o o dt os u p p o r tt h ed y n a m i ce v o l u t i o no ft h es t r u c t u r e ,b u ta l s oi t ss u p p o r tp l a t f o r mc a nm a n a g et h el i f ec y c l eo fc o m p o n e n t s ,i m p r o v et h ef l e x i b i l i t yo fc o m p o n e n te v o l u t i o na n dm a n a g ed y n a m i ce v o l u t i o no f c o m p o n e n t se f f e c t i v e l y i i i广东工业大学硕士学位论文i nt h i sp a p e r , r e s e a r c ht h ed y n a m i ce v o l u t i o no fs o f t w a r et e c h n o l o g ya n dc o m p o n e n tt e c h n o l o g y , d e e p e n i n ga n a l y z ea n ds t u d yp r o c e s s - b a s e d ,o b j e c t - o r i e n t e da n dc o m p o n e n t b a s e ds y s t e mo fd y n a m i ce v o l u t i o na tf i s t t h e ni n t r o d u c et h ec l a s sl o a d i n gm e c h a n i s mw h i c hs u p p o r t st h ed y n a m i ce v o l u t i o na n dj a v ar e f l e c t i o n a c c o r d i n gt ot h ed i f f e r e n ts t a t e si ne j bc o m p o n e n t sl i f ec y c l e ,w eg o tt h ed y n a m i ce v o l u t i o no ft h ec o m p o n e n ts c h e m e ( s t r a t e g y ) w h i c he n s u r e st h ed y n a m i cw o r kc o r r e c t l ya n ds a f e l y , t h a tw i l ln o tl e a dt ol o s so fc o m p o n e n ta n ds y s t e ms t a t u si n c o n s i s t e n c y t h ed y n a m i ce v o l u t i o n仔a m e w o r ko fc o m p o n e n ti sg i v e n , w h i c hi sd e s i g nw i t hc e n t r a l i z e dm a n a g e m e n tm o d e la n df a c i l i t a t et h ee v o l u t i o no ft h eo v e r a l lc o n t r o la n dm a n a g e m e n t f i n a l l y , i ne d u c a t i o np u r c h a s es y s t e mw a sa p p l i e dt h ed y n a m i ce v o l u t i o no fs o f t w a r et e c h n o l o g ya n dc o m p o n e n tt e c h n o l o g yt oi m p l e m e n td y n a m i ce v o l u t i o ni nb u s i n e s sc o m p o n e n t ( e j bc o m p o n e n t ) o ft h ep r o c u r e m e n ts y s t e m , a n dt h r o u g har i g h t sm a n a g e m e n tc o m p o n e n to ft h er o l em a n a g e m e n t( s t a t e l e s ss e s s i o nb e a nc o m p o n e n t ) a sa ne x a m p l et ov e r i f yt h ec o m p o n e n te v o l u t i o nf e a s i b i l i t y k e yw o r d s :s o f t w a r ee v o l u t i o n , e j bc o m p o n e n t ,e x c h a n g eo fc o m p o n e n ts t a t u s ,e v o l u t i o ns t r a t e g y i v目录目录j 商要ia b s t r a c t i i i目录vc o n t e n t s v i i i第一章绪论l1 1 研究背景及意义11 2 构件技术的研究现状l1 2 1 构件的概念21 2 2 构件技术的研究方向31 2 3 当前主要构件规范标准一31 3 软件演化的研究成果51 4 本文的主要工作71 5 本文的结构7第二章软件演化技术82 1 软件演化的概念和分类82 1 1 软件演化的定义82 1 2 软件演化分类一92 2 软件演化的粒度1 02 2 1 函数层次的演化1 02 2 2 类层次的演化l o2 2 3 构件层次的演化1 12 2 4 体系结构层次的演化1 12 3 软件系统的动态演化1 22 3 1 基于过程的系统的动态演化1 22 3 2 面向对象系统的动态演化1 42 3 3 基于构件系统的动态演化1 6v广东工业大学硕士学位论文2 4 支持动态演化的技术1 62 4 1 j a v a 类装载机制1 62 4 2 j a v a 反射机制。l82 5 本章小结1 9第三章构件动态演化方案2 03 1 软件动态演化存在的问题2 03 1 1 动态演化要解决的主要问题。2 03 1 2 系统的一致性2 l3 2 拦截器2 23 2 1 拦截器定义2 23 2 2 拦截器原理2 23 2 3 拦截器使用2 33 3 构件替换算法。2 33 3 1 静止状态理论2 33 3 2 替换算法2 43 4 e j b 构件的生命周期状态2 53 4 1 无状态会话b e a n 的生命周期状态2 63 4 2 有状态会话b e a n 的生命周期状态2 73 4 3 实体b e a n 的生命周期状态2 93 5 动态演化方案3l3 5 1 无状态会话b e a n 演化方案3l3 5 2 有状态会话b e a n 演化方案3 43 5 3 实体b e a n 演化方案3 63 6 本章小结3 6第四章采购系统构件演化3 74 1 构件运行支撑平台3 74 1 1 e j b 容器的功能3 84 1 2 e j b 容器的体系结构3 84 2 构件演化子系统4 lv i目录4 2 1 构件动态演化框架4 l4 2 2 构件状态迁移4 24 2 3 类装载器的设计与实现4 44 2 4 构件演化策略设计4 74 2 5 请求拦截器设计4 84 3 应用案例4 94 4 本章小结5 3总结5 4参考文献5 6攻读学位期间发表的论文6 0独创性声明6 l致 射6 2v i l广东工业大学硕士学位论文c o i n t e n t sc h i n e s ea b s t r a c t ie n g l i s ha b s t r a c t i i ic h i n e s ec o n t e n t s 。ve n g l i s hc o n t e n t s v i i ic h a p t e r1i n t r o d u c t i o n 11 1 r e s e a r c hb a c k g r o u n da n ds i g n i f i c a t i o n 11 2 c u r r e n tr e s e a r c ho f c o m p o n e n tt e c h n o l o g y 11 2 i t h ec o n c e p to f c o m p o n e n t 21 2 2 t h et r e n do f c o m p o n e n tt e c h n o l o g ys t u d y 31 2 3 t h em a i ns t a n d a r d so f c u r r e n tc o m p o n e n t 31 3 d o m e s t i ca n df o r e i g ns t u d y 51 4 t h em a i nw o r k s 71 5 p a p e rs t r u c t u r e 7c h a p t e r2s o f t w a r ee v o l u t i o nt e c h n o l o g y 82 1 t h ec o n c e p ta n dc l a s s f i c a t i o no f s o f t w a r ee v o l u t i o n 82 1 1 t h ed e f i n i t i o no f s o f t w a r ee v o l u t i o n 82 1 2 t h ec l a s s f i c a t i o no fs o f t w a r ee v o l u t i o n 92 2 t h eg r a n u l a r i t yo f s o f t w a r ee v o l u t i o n 1 02 2 1 f u n c t i o n 1 e v e le v o l u t i o n 1 02 2 2 c l a s s 1 e v e le v o l u t i o n 102 2 3 c o m p o n e n t - l e v e le v o l u t i o n 112 2 4 a r c h i t e c t u r e 1 e v e le v o l u t i o n 112 3 t h ed y n a m i ce v o l u t i o no f s o f t w a r es y s t e m s 1 22 3 1 t h ed y n a m i ce v o l u t i o no f p r o c e s s - b a s e ds y s t e m s 1 22 3 2 t h ed y n a m i ce v o l u t i o no f o b j e c t o r i e n t e ds y s t e m s 1 42 3 3 t h ed y n a m i ce v o l u t i o no f c o m p o n e n t - b a s e ds y s t e m s 1 6v ! i ic o n t e n t s2 4 s u p p o r td y n a m i ce v o l u t i o nt e c h n 0 1 0 9 y 1 62 4 1 j a v ac l a s sl o a d e rm e c h a n i s m 162 4 2 j a v ar e f l e c t i o n 182 5 s u m m a r y 1 9c h a p t e r3d y n a m i ce v o l u t i o ns c h e m eo nc o m p o n e n t 2 03 1 p r o b l e m so f s o t t w a r ed y n a m i ce v o l u t i o n 2 03 1 1 p r o b l e m ss h o u l db es o l v e di nd y n a m i ce v o l u t i o n 2 03 1 2 s y s t e mc o n s i s t e n c y 2 13 2 i n t e r c e p t o r 2 23 2 1 t h ed e f i n i t i o no f i n t e r c e p t o r 2 23 2 2 t h ep r i n c i p l eo f i n t e r c e p t o r 2 23 2 3 t h eu s eo f i n t e r c e p t o r 2 33 3 c o m p o n e n tr e p l a c e m e n ta l g o r i t h m 2 33 3 1 s t a t i o n a r ys t a t et h e o r y 2 33 3 2 r e p l a c e m e n ta l g o r i t h m 2 43 4 e j bc o m p o n e n t sl i f ec y c l es t a t u s 一2 53 4 1 l i f ec y c l es t a t u so f s t a t e l e s ss e s s i o nb e a n 2 6 一、3 4 2 l i f ec y c l es t a t u so fs t a t e f u ls e s s i o nb e a n 2 73 4 3 l i f ec y c l es t a t u so f e n t i t yb e a n 2 93 5 d y n a m i ce v o l u t i o ns c h e m eo nc o m p o n e n t 313 5 1 d y n a m i ce v o l u t i o ns c h e m eo ns t a t e l e s ss e s s i o nb e a n 313 5 2 d y n a m i ce v o l u t i o ns c h e m eo ns t a t e f u ls e s s i o nb e a n 3 43 5 3 d y n a m i ce v o l u t i o ns c h e m eo ne n t i t ys e s s i o nb e a n 3 63 6 s u m m a r y 3 6c h a p t e r4c o m p o n e n te v o l u t i o no f t h ep u r c h a s es y s t e m 3 74 1 r u ns u p p o r tp l a t f o r mo f c o m p o n e n t 3 74 1 1 e j bc o n t a i n e rf e a t u r e s 3 84 1 2 e j bc o n t a i n e ra r c h i t e c t u r e 3 84 2 s u b s y s t e mo f c o m p o n e n te v o l u t i o n 4 1i x广东工业大学硕士学位论文4 2 1 f r a m e w o r ko f c o m p o n e n td y n a m i ce v o l u t i o n 4 14 2 2 c o m p o n e n ts t a t et r a n s i t i o n 4 24 2 3 d e s i g n a n di m p l e m e n t a t i o no f c l a s sl o a d e r 4 44 2 4 d e s i g no f c o m p o n e n te v o l u t i o ns t r a t e g i e s 4 74 2 5 d e s i g no f r e q u e s ti n t e r c e p t o r 4 84 3 a p p l i c a t i o n 4 94 4 s u m m a r y 5 3c o n c l u s i o n 5 4r e f e r e n c e s 5 6p u b l i c a t i o n sd u d n gm a s t e r ss t u d y 6 0a n n o u n c e m e n to fo r i g i n a lc r e a t i o n 6 1a c k n o w l e d g e m e n t 6 2x第一章绪论1 1 研究背景及意义第一章绪论弟一早三百t 匕随着软件工业的发展、成熟以及软件生产要求的不断提高,基于构件的软件开发( c o m p o n e n t b a s e ds o f t w a r ed e v e l o p m e n t ,简称c b s d ,有时也称为基于构件的软件工程c b s e ) 作为一种新的软件开发方法被提了出来。目前,构件和基于构件的软件工程已成为软件工程领域的研究热点。在基于构件的软件开发方法下,程序开发模式也随着发生了根本性变化,软件开发不再是算法+ 数据结构,即程序= 算法+ 数据结构,而是构件开发+ 基于体系结构的构件组装“,。c b s d 是一种基于分布对象技术、强调通过可复用构件设计与构造软件系统的软件复用途径。它是在一定构件模型的支持下,利用复用构件库中的一个或多个构件,通过组合手段高效率、高质量地构造应用软件系统的过程心- 。构件化软件开发是基于对已有构件的组装,以更快地构造软件系统,减轻用来支持和升级大型系统所需要的维护负担,从而降低软件开发的费用。目前,许多的软件系统都需要不断地升级,而人们对软件升级提出了更高的要求,要求软件在升级的同时能够继续为用户提供服务,因而在这种情况下,软件动态演化技术已成为了当前软件维护领域的一个重要的研究方面,而能否为客户不间断地提供服务已开始成为衡量软件系统的一项重要指标。因此对基于构件开发的软件系统进行动态演化研究具有一定的意义。本课题主要从构件化软件系统的构件的生命周期出发,研究系统构件在不同的生命周期阶段的动态演化。解决采购系统中e j b 构件的在线演化问题( 在线更新) 。这为基于构件化软件系统的动态演化( 在线升级) 具有一定的借鉴意义。1 2 构件技术的研究现状在软件工程中,基于构件的软件开发越来越被更多的人所接受,由于其提高了软件的可重用性,缩短了软件的开发周期,减低了软件的丌发成本,提高了软件的质量和软件的互操作性,因而被认为是一种具有很好前景的开发技术。下面广东工业大学硕士学位论文将介绍对构件的概念、发展方向及当前主流构件模型进行介绍。1 2 1 构件的概念到目前为止,还没有一个正式组织或权威机构对软件构件给出一个统一定义。其根本原因在于构件被看作是复用的基本单位,而不同时期以及不同的研究人员所关注的复用类型是不同的,因此对构件的认识和理解也不同。早期研究人员主要关注源程序代码的复用,将构件理解为某种可复用的程序代码片断。后来研究人员认识到复用的范围并不局限于编码阶段而是可以贯穿于整个软件开发过程,因而对构件的概念有了很大的扩充。9 0 年代以后随着分布对象、w e b 等技术的发展和软件复用实践的深入,国际学术界对构件概念又有了新的认识。9 0 年代中期以后随着分布对象、i n t e r n e t ,j a v a ,c l i e n t s e r v e r 计算,4 g l 和可视化丌发工具等技术以及基于构件组装的软件开发方式( c b s u ) 的发展,国际学术界对构件的认识逐渐又有了新的变化。研究人员相继提出了若干新的构件定义。其中有代表性的包括:19 9 6 年e c o o p ( e u r o p e a nc o n f e r e n c eo no b j e c t o r i e n t e dp r o g r a m m i n g ) 会议上提出的定义口,:软件构件是一个具有规范接口和确定的上下文依赖的组装单元。软件构件能够被独立地部署和被第三方组装。s z y p e r s k i 在19 9 8 年给出的定义是1 4 1 :软件构件是可单独生产、获取、部署的二进制单元,它们之间可以互相作用构成一个功能系统( f u n c t i o n i n gs y s t e m ) 。c m u s e i 的f e l i xb a c h m a n 等人在2 0 0 0 年5 月的一份关于基于构件的软件工程的报告中给出如下定义忙,:构件:1 是一个不透明的功能实现;2 能够被第三方组装;3 符合一个构件模型。综上所述,这些定义包含以下几个共同的因素:构件是二进制功能单元、符合构件模型( 或具有规范接口) 、允许对不同构件开发商开发的构件进行组装。2第一章绪论1 2 2 构件技术的研究方向目前,构件技术的研究方向主要是面向构件软件工程方法的概念模型和过程模型拍i 。其具体研究方向如下:( 1 ) 构件模型:研究构件的本质特征及构件间的关系;( 2 ) 构件获取:有目的构件生产和从己有系统中挖掘提取构件;( 3 ) 构件描述语言:以构件模型为基础,解决构件的精确描述、理解及组装问题;( 4 ) 构件库( 构件分类与检索) :研究构件分类策略、组织模式及检索策略,建立构件库系统,支持构件的有效管理;( 5 ) 构件集成组装:在构件模型的基础上研究构件组装机制,包括源代码级的组装和面向构件对象互操作性的运行级组装;( 6 ) 构件演化:主要研究构件的更新。对外表现为构件的功能和行为发生变化。架构演化研究整个系统构件组织结构改变,可以看作构件演化的扩展;( 7 ) 标准化:构件模型的标准化和构件库的标准化;( 8 ) 构件系统的安全性问题和实时( r e a l t i m e ) p 3 题;( 9 ) 非技术因素对c b d 的影响:法律法规、商业实践、组织结构等方面的挑战和策略。1 2 3 当前主要构件规范标准目前,工业界主流的构件技术和模型包括以下三种:1 j 2 e e e j b i 州1 9 9 9 年底s u n 公司推出了j a v a 2 技术和面向企业应用的j 2 e e 规范,j 2 e e 的目标是提供平台无关的、可移植的、支持并发访问和安全的、完全基于j a v a 的开发服务器端构件的标准。j 2 e e 是一系列标准,而非一个产品,它简化企业解决方案的开发,部署和管理等,其最终目标是成为支持企业级应用开发的体系结构。在分布式互操作协议方面,j 2 e e 规范同时支持j a v a 远程消息交换协议瓜m p ( j a v ar e m o t em e s s a g i n gp r o t o c 0 1 ) 和互联网内部对象请求代理协议i i o p ( i n t e m e ti n t e r - o r bp r o t o c o l ,主要目的是实现与c o r b a 协议的兼容) ;同时还提供了对j a v a s e r v l e ta p i 、j s p ( j a v as e r v e rp a g e ) 、e j b ( e n t e r p r i s ej a v a b e a n ) 等多种技术的支持。3广东x - j k 大学硕士学位论文e j b 是s u n 推出的基于j a v a 的服务器端构件规范,是j 2 e e 的一部分,是在j a v ab e a n技术的本地构件的基础上发展的面向服务器端分布式应用技术。e j b 是一个软件构件模型,用于开发和部署企业级应用程序。该模型包含一个开放的规范,所有开发者必须遵循这套规范以实现构件的兼容性和可移植性等。针对不同的业务需求,定义了三种构件类型:会话构件、实体构件和消息驱动构件。e j b 接口分为远程和本地接口,通过不同方式进行访问以提高访问效率。在e j b 3 0 中,可以通过为程序加注释来指定e j b 的构件类型以及访问类型。e j b 构件运行的环境称为e j b 容器,e j b 容器提供了生命周期管理、访问、安全和持久等服务,从而使开发人员可以集中精力开发与业务有关的核心功能。目前市场上有很多实现j 2 e e 的产品,如b e a w e b l o g i c ,i b mw e b s p h e r e 和开源的j b o s s 等。2 c o r b a c c m e 7 0c o r b a ( c o m m o no b j e c tr e q u e s tb r o k e ra r c h i t e c t u r e ) 标准是对象管理组织o m g ( o b j e c tm a n a g e m e n tg r o u p ) 锘j j 定的分布式异构系统互操作的工业标准。c o r b a 标准由三层组成:对象请求代理、公共对象服务和公共设施。最上层的公共设施定义了构件框架,规定业务对象协作所需的规则,为业务对象提供可直接使用的服务。中间层的公共对象服务提供诸如并发服务、名字服务、事务服务和安全服务等各种服务。最底层的对象请求代理o r b 规定了分布对象的接口定义和语言映射,实现了不同语言对象间的通讯和互操作。c o r b a 3 0 规范中的核心是c o r b a 构件模型c c m ( c o r b ac o m p o n e n tm o d e l ) 。c c m 建立在e j - b 规范的基础上,但是和e j b 不同,c c m 的底层对象互操作体系结构是c o r b a 对象模型,因此它不依赖于特定编程语言。由于这两种技术非常相似,对于e j b客户,c c m 构件可以看作是个e j b 构件,e j b 构件也可以看作是c c m 构件。并且e j b 支持c o r b a i i o p 作为它的通信框架。因此c c m 和e j b 是互补的。c o i m a 对象模型作为跨平台、跨语言的分布式对象计算模型的工业标准受到越来越多的认可。c c m 继承了e 肥的构件编程模型而保持了c o r b a 的互操作性和语言无关性。但是c c m 规范太庞大、太复杂,目前正在研制的实现c c m 规范的项目包括:法国l i l l e 大学的o p e n c c m m 、阿尔卡特资助f p x 负责开发的m i c o c c m ”、d o c 组织和华盛顿大学的c i a o l - 们以及国内的国防科技大学的s t a r c c m t “,等。3 c o m 厂d c o m “鄙4第一章绪论最初m i c r o s o r 公司为支持复合文档而使用o l e 技术,c o m 技术由此发展。在c o m的发展中,微软公司推出 d i s t r i b u t e dc o m ( d c o m ) 、c o m + 、m i c r o s o f tm e s s a g eq u e u i n g ( m s m q ) 、m i c r o s o rt r a n s a c t i o ns e r v e r ( m t s ) 以及a c t i v e xc o n t r o l s 等相关技术m s m q 和m t s 力n 入后,c o m + 己是使用构件进行计算的一个比较完整的平台。c o m平台开发效率比较高,还有得到了底层操作系统和开发工具的强大支持。但是c o m 技术依赖于w i n d o w s 操作系统,无法在其它操作系统平台上使用,如u n i x 和l i n u x 操作系统。1 3 软件演化的研究成果目前,国内外在软件演化的研究和实现方面取得了不少成果,其中最具有代表性的研究成果有k - c o m p o n e n t 框架n 3 的元模型、a r c h s t u d i o 开发运行环境、北京大学p k u a s 系统“引以及南京大学提出了一种内置的运行时体系结构对象动态协同框架l - 引等。k - c o m p o n e n t 框架的元模型是d o w l i n g 等人为满足环境和需求变化而设计的动态自适应系统模型。在k - c o m p o n e n t 元模型中,一个有类型的有向配置图被用来表示应用系统的软件体系结构,其中图节点表示构件接口类型,标签表示构件有向边连接件,一个反射机制被设计用来在这个有类型的有向配置图和目标系统问建立因果连接使得配置图可以反映系统的真实软件体系结构。根据关注分离( s e p a r a t i o no f c o n c e r n s ) 这一软件工程基本原则,尽量使适配逻辑与计算逻辑解耦,k c o m p o n e n t 元模型提供一个专门的机制自适应约束( a d a p t a t i o nc o n t r a c t s ) 来显式地表达适配逻辑,而不将其固化于程序语言或支撑平台之中。自适应约束是由自适应约束描述语言( a d a p t a t i o nc o n t r a c t sd e s c r i p t i o nl a n g u a g e 简称a c d l ) 来定义的,从而使得适配逻辑可编程和动态的修改配置管理器提供自适应约束的部署和运行环境,允许自适应约束动态的装载、修改和卸载,一旦需要动态调整系统,适配事件产生,配置管理器是依据自适应约束调用重配置操作,而重配置操作的结果将导致系统配置图的修改和迁移,进而更改系统本身。k - c o m p o n e n t 元模型的缺陷是配置图虽然直观,但并不能严格和全面地表达软件体系结构的行为语义和结构语义。a r c h s t u d i o 是基于软件体系结构的丌发和运行环境,支持c 2 体系结构风格软件的动态修改。a r c h s t u d i o 所定义的系统动态演化方法是如何在体系结构层面表达动态调整问题在具体系统中得以实施的一个典型代表。目前a r c h s t u d i o 包含三种体系结构变更5广东工业大学硕士学位论文源工具,a r g o ,a r c h s h e l l 和扩展向导( e x t e n s i o nw i z a r d ) 。a r g o 为体系结构模型提供了图形绘制界面,这些体系结构模型可以直接进行操作;a r c h s h e l l 提供一个文本的、命令驱动的接口用来具体化动态修改,提供了新增、删除构件和连接件、配置体系结构以及展示体系结构的文本命令;扩展向导提供

温馨提示

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

评论

0/150

提交评论