




已阅读5页,还剩60页未读, 继续免费阅读
(计算机科学与技术专业论文)基于esb的应用系统开发方法的研究与应用.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
独创性声明 i i i ii ii lli l ll ll lii iiii 18 7 9 917 本人声明,所呈交的论文是本人在导师指导下进行的研究工作及 取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外, 论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得 武汉理工大学或其他教育机构的学位或证书而使用过的材料。与我一 同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说 明并表示了谢意。 签名:这l 盔i 叁日期:堂! ! :竺 学位论文使用授权书 本人完全了解武汉理工大学有关保留、使用学位论文的规定, 即学校有权保留并向国家有关部门或机构送交论文的复印件和电子 版,允许论文被查阅和借阅。本人授权武汉理工大学可以将本学位 论文的全部内容编入有关数据库进行检索,可以采用影印、缩印或 其他复制手段保存或汇编本学位论文。同时授权经武汉理工大学认 可的国家有关机构或论文数据库使用或收录本学位论文,并向社会 公众提供信息服务。 ( 保密的论文在解密后应遵守此规定) 研究生( 签名) :间幻收导师( 签名) :硌龟友日期曲,垆 武汉理工大学硕士学位论文 摘要 随着经济的全球化、信息化和服务化,i t 建设逐渐由技术转向业务,而业 务交付不及时、缺少统一规划、应用间共享困难、功能个性化不足、开发低成 本和高要求的矛盾导致企业应用系统建设进入困境。因此,面向服务体系架构 模型及其相关实现技术应运而生。 本文通过分析软件体系结构的发展,将面向服务的体系结构作为研究课题, 深入研究s o a 的概念、架构模型及其实现关键技术。众所周知,w e bs e r v i c e s 作为基于w c b 的服务,因其良好的跨平台性被广泛应用于s o a 系统,它将服务 发布成a p i 供网络中的其他服务使用,并将实现细节封装其中。而业务的实现, 需要服务之间通过消息中间件来进行相互通信,e s b 的总线模式使得消息能够 灵活地在不同应用系统间流动,克服了紊乱的点对点结构模式不利于管理和服 务扩展的缺陷。 本文通过探讨基于企业服务总线e s b 的相关技术,了解比较e s b 的开源产 品,深入研究m u l ee s b 的消息框架和架构。了解如何在n e t 中进行w e bs e r v i c e 的开发及发布,如何通过m u l ee s b 对w e b 服务进行调用与整合,以及m u l ee s b 如何对不同环境下的系统进行集成及其消息传递方式。在研究基于e s b 的应用 系统开发方法基础之上,以湖北省中小学信息技术课教学系统作为应用背景, 采用基于s o a 的架构,通过提取系统中相应业务逻辑来创建w 曲s e r v i c e s ,将 其发布后连接到e s b 总线上,运用e s b 总线中的消息传输机制使应用系统与 w e bs e r v i c e s 进行通信完成业务功能调用的开发方法,对基于m u l ee s b 的教学 共享平台进行开发。 在本文最后对该开发方法进行验证,通过逐步实现w e b 服务创建及发布、 m u l ew e bc l i e n t 的生成和m u l e 配置文件的编写,完成了教学共享平台系统,并 达到预期效果。验证了本文提出的基于e s b 开发方法的可行性。 本文在创建w e b 服务的过程中,通过使用原有系统功能模块,增加了代码 复用率,提高了教学共享平台的健壮性和稳定性,缩短了开发时间;又通过运 用m u l ee s b 对w e b 服务进行整合,使用户拥有良好的用户体验。使得企业应 用软件开发低成本、高质量、快速交付成为可能。 关键词:s o a 架构,w e bs e r v i c e s ,企业服务总线,应用软件开发方法 武汉理工大学硕士学位论文 a b s t r a c t w i t ht h eg l o b a l i z a t i o n , i n f o r m a t i z a t i o na n ds e r v i c e s a t i o no fe c o n o m y ,i t c o n s t r u c t i o ni sg r a d u a l l yt u r n i n gt e c h n o l o g yi n t ob u s i n e s s b u tt h ec h a l l e n g eo f u n t i m e l yd e l i v e r yo fb u s i n e s s ,l a c ko fi n t e g r a t e dp l a n , d i f f i c u l to fs h a r eb e t w e e n a p p l i c a t i o n ,i n s u f f i c i e n to fp e r s o n a l i z e df u n c t i o n ,r e q u e s to fl o wc o s ta n dh i g hq u a l i t y l e a de n t e r p r i s ea p p l i c a t i o nc o n s t r u c t i o ni n t op r e d i c a m e n t t h e r e f o r e , s e r v i c eo r i e n t e d a r c h i t e c t u r em o d e la n di t sc o r r e l a t i o nr e a l i z a t i o nt e c h n o l o g ya r i s e sa tt h i sh i s t o r i c m o m e n t b ya n a l y z i n gt h ed e v e l o p m e n to f s o f t w a r es y s t e ms t r u c t u r e , t h i st h e s i sw i l lt a k e s e r v i c eo r i e n t e da r c h i t e c t u r e 够r e s e a r c hs u b j e c t , d e e p l yl e a r n i n gt h ec o n c e p t , a r c h i t e c t u r e ,c o r r e l a t i o nt e c h n i q u eo fs o a a sa l lw ek n o w ,鹪as e r v i c eb a s e do n w e b ,w e bs e r v i c e sa r ew i d e l yu s e di ns o as y s t e mb e c a u s eo fi t sg l o s s - p l a t f o r m c h a r a c t e r w e bs e r v i c er e l e a s et h es e r v i c ei n t oa p im a k ei tc a nb eu s e db yo t h e r s e r 、,i c e s ,a n de n c a p s u l a t et h ei m p l e m e n t a t i o nd e t a i l s a n dt oi m p l e m e n tb u s i n e s sw e n e e dt h ec o m m u n i c a t i o nb e t w e e ns e r v i c e st h r o u g hm e s s a g em i d d l e w a r e t oa v o i dt h e l a c k n e s so fe x t e n s i o na n dm a n a g r n e n to f p o i n t - p o i n ts t r u c t u r e ,t h eb u so fe s b a l l o w s m e s s a g et ob ef l e x i b l et r a n s f e r r e di nd i f f e r e n ta p p l i c a t i o ns y s t e m i nt h i st h e s i ss e v e r a lo p e ns o u r c ep r o d u c to fe s bw a sc o m p a r e dt h r o u g h l e a r n i n gr e l a t e dt e c h n o l o g yb a s e do ne s b ,a n dm u l ee s bb e c a u s eo fi t sm e s s a g e f r a m e w o r ka n da r c h i t e c t u r ew a sc h o o s e d b e s i d ee s b ,h o wt od e v e l o pa n dr e l e a s e t h ew e bs e r v i c eu n d e rt h e n e te n v i r o n m e n t , h o wt oc a l la n di n t e g r a t et h e s ew c b s e r v i c ei nm u l e ,a n dh o wt ot r a n s f e rt h e s em e s s a g eb e t w e e nd i f f e r e n ts y s t e m e n v i r o n m e n ti sa l s ob e e nr e s e a r c h e d w i t ht h er e s e a r c ha b o v e , t h i st h e s i st a k e i n f o r m a t i o nt e c h n o l o g yt e a c h i n gs y s t e mo fh u b e ip r o v i n c em i d d l ea n dp r i m a r y s c h o o l 鹪b a c k g r o u n d ,t h o u r g hu s i n gs o aa r c h i t e c t u r e ,p i e kr e l a t e db u s i n e s sl o g i c c r e a t e di n t ow e bs e r v i c e sa n dl i n k e dt ot h eb u so fe s b ,w i t l li t st r a n s m i s s i o n m e c h a n i s mt of u l f i l lf u n c t i o nc a l la n di n v o k e ,t oa c c o m p l i s ht h ed e v e l o p m e n to f t e a c h i n gs h a r ep l a t f o r mb a s e dm u l e i nt h ef i n a lo ft h i st h e s i s ,t h ec o n f i r m a t i o nt ot h i sm e t h o dw a sc o n f i r m e dt h r o u g h c r e a t ea n dr e l e a s et h ew e bs e r v i c e s ,p r o e u d et h em u l ew e bc l i e n ta n dc o m p l i et h e 武汉理工大学硕士学位论文 c o n f i g u r a t i o nf i l e so fm u l e ,c o m p l e t e dt h et e a c h i n gs h a r ep l a t f o r ma n da c h i e v e dt h e e x p e c t a t i o ne f f e c t i nt h ep r o c e s so fc r e a t i n gw e bs e r v i c e ,t h i st h e s i sb y u s i n gt h ef u n c t i o nm o d u l e o fo r i g i n a ls y s t e m ,i n c r e a s e dt h ec o d er e u s a b i l i t y , i m p r o v e dt h er o b u s m e s sa n d s t a b i l i t yo ft h et e a c h i n gs h a r ep l a t f o r ma n dr e d u c et h ed e v e l o p m e n tt i m e m e a n w h i l e , b yu s i n gm u l ee s bt oi n t e r g r a t et h ew e bs e r v i c e ,t h eu s e rw i l lh a v eab e t t e ru s e r e x p e r i e n c e s o ,i ti sp o s s i b l et om a k et h ed e v e l o p m e n to fe n t e r p r i s ea p p l i c a t i o n s o f t w a r el o w - c o s t , h i g h - q u a l i t ya n df a s t d e l i v e r y k e yw o r d s :s o a ,w e bs e r v i c e s ,e s b ,a p p l i c a t i o nd e v e l o p m e n tm e t h o d 1 i i 第1 第2 2 2 1s o a 的概念8 2 2 2s o a 的架构模型9 2 2 3 实现s o a 的关键技术。10 2 :;1 嘞s e r v i c e s 12 2 3 1w e bs e r v i c 懿概! 述12 2 3 2w e bs e r v i c 髓体系架构模型1 2 2 3 3w 曲s e r v i c 鹪协议栈l3 2 3 4w e bs e r v i c e s 基本元素。1 4 2 4 企业服务总线e s b 1 7 2 4 1e s b 概述。17 2 4 2e s b 的功能1 8 第3 章基于e s b 的软件开发模型构建研究2 1 3 1 企业服务总线构建2 1 3 1 1 开源e s b 2 1 3 1 2m u l ee s b 2 2 3 1 3e s b 的消息框架2 4 i v 武汉理工大学硕士学位论文 3 1 4 企业服务总线架构模型2 4 3 2w r e bs e r v i c e s 构建2 7 3 2 1 服务提供者构建2 7 3 2 2 服务请求者构建2 7 第4 章基于e s b 的教学共享平台系统分析3 0 4 1 湖北省中小学信息技术课教学系统3 0 4 2 教学共享平台业务需求分析3 1 4 3 教学共享平台总体架构设计3 2 4 4 基于e s b 的教学共享平台实现步骤3 3 4 4 1w 曲服务的编写与发布3 3 4 4 2 在m u l e 中开发客户端3 4 4 4 3 编写m u l e 配置文件3 4 第5 章基于e s b 的教学共享平台系统实现3 6 5 1 数据库设计。3 6 5 2w 曲服务的实现3 8 5 3 企业服务总线的构建。4 2 第6 章总结与展望5 l 6 1 全文总结5 l 6 2 后续展望。5 l 致 射5 3 参考文献5 4 攻读硕士学位期间发表的论文和参加科研项目情况5 7 附录。5 8 v 武汉理工大学硕士学位论文 1 1 引言 第1 章绪论 全球金融危机后重新整合的下一代经济大概会呈现三大特点:全球化、信 息化、服务化【l 】。全球化是指下一代经济的范畴和规模将不留死角地覆盖任何经 济体,资本将更加顺畅地在全球任何角落配置资源;信息化是全球化的技术保 障和演进结果;服务化是通过信息技术( i te n a b l e d ) 对生产过程产生的信息进 行加工,按合同提供第三方的产生附加值的经济活动。当世界上绝大多数人日 复一日地创造着信息附加值的时候,我们不得不问,是什么架构和核心系统平 台能够有效地保障几十亿劳动大军的无缝连接和信息流动? 是什么技术可以最 有效地整合资源、利用资源? 是什么技术可以低成本地满足中小企业信息化、 服务化r r 建设? 答案就是s o a ( s e r v i c e , - o r i c n t e da r c h i t e c t u r e ,面向服务的体系 结构) 。 1 1 1 企业应用软件建设的困境 企业应用软件建设的目的是支撑企业业务运营,进而推动企业的业务创新, r r 部门作为企业应用软件建设的主体面临着巨大的考验和挑战。传统i t 建设对 投资回报率的考量更多的是如何提高效率,随着业务与技术的发展,1 1 r 建设越 来越具备业务价值,成为企业的战略投资。这种转变意味着企业会更多地从业 务价值的角度考虑n 建设的投资回报率,这也相应使得软件从业者需要从业务 的角度思考技术而不是技术本身。但是,实现这一目标还面临着很多挑战。 ( 1 ) 业务交付不及时,低于业务发展的要求。这是一个现实的、老生常谈的、 无解的问题,人们一直在面对并试图解决,但人们无力也无法彻底解决,但是 只要能提高一点点,就可以带来巨大的商业价值。 ( 2 ) 缺少统一规划,难以适应以客户为中心的运营模式。以往的企业更多的 是以产品为中心的运营模式,以产品为出发点,以生产者为导向,通过扩大生 产、提供新产品来加强营销,扩大销售或者降低成本。而以客户为中心是企业 为应对市场竞争而采用的新的营销模式,它将顾客需求作为出发点,以市场为 导向,通过满足需求,建立整体市场营销手段,它是一个企业观念的转变。为 了适应这一变化,首先需要进行统一的规划,改变企业应用建设还是以单一系 武汉理工大学硕士学位论文 统为中心的思考模式,加强统一的规划与架构,才是适应从产品为中心向以客 户为中心转变的关键。 ( 3 ) 应用越来越多,维护量大,应用间共享困难。首先,随着业务的发展, 应用间关联性越来越强,为了实现应用间的共享,需要数据、协议、服务等多 个层面的标准化;其次,早期应用间的连接采用了点对点的方式,导致应用间 的耦合度比较高,管理维护都比较困难;最后,应用系统建设往往由不同的开 发团队完成,使用了不尽相同的技术架构和开发模式,最后造成企业中存在由 多种架构和技术标准建设的应用。总之,业务的快速发展导致经常不得不使用 “先建设后整合 的方式,如何对这些应用建设进行统一的规划并保证这些规 划可以落实,需要在新应用系统开发中,使用心得方法和手段。 ( 4 ) 系统功能个性化不足,影响业务使用。企业r r 建设的过程中,如何在集 约化管理的同时满足个性化需求,始终是一对矛盾统一体。如何在系统建设中 提供个性化能力,并保证个性化业务的快速实施,对1 1 r 从业者来说确实是一个 比较困难的问题。目前服务虚拟化、s a a s 、云计算等理论和平台的推出,都是 希望在集约化管理和个性化需求之间找到平衡。 ( 5 ) 企业应用软件建设缺乏弹性,影响企业业务扩张。企业应用软件的规划、 设计和实施必须支持业务规则的变化和业务的扩张,业务变化引起的企业应用 软件改变必须快速得到实施,这就要求企业应用软件建设需要具备支持不可预 知业务扩张的能力。为应对变化,企业应用软件的架构设计需要以标准化、兼 容性方式支持不可预测的市场机遇,充分考虑扩展性支持合作伙伴,以灵活的 架构支持新服务的投放。 ( 6 ) 不一致、不友好的使用体验,降低了用户的主观满意度。在企业应用软 件已经成为业务支撑的今天,很多人的主要工作就是和不同的r r 系统交互,那 些不具备良好交互能力的系统往往降低了工作效率。在交互性方面存在的问题 包括:用户体验不统一,不同的技术手段为使用者提供的操作方式差异很大; 表现能力弱,易用性差,开发也比较复杂;缺少企业信息整合的平台;企业自 身门户的建设还是以功能为导向的,使用者需要的功能或信息依然淹没在众多 的功能模块中。 ( 7 ) 应用软件低成本与高要求的矛盾。国内的企业应用软件建设比国际的同 等水平要难,在中国同等应用的建设,对系统容量和性能的要求是国际同类系 统的几倍、几十倍。而同样的软件,在国内的投资远低于国外的水平,同时国 内的个性化需求也比较多,必须在低成本的前提下,快速构建高质量的应用。 2 武汉理工大学硕士学位论文 中国信息化建设起步晚,任务重、需求多,具有国外不可比的庞大市场规模, 中国的i t 建设明显要难于国外同等企业,因此国外的方式不能解决中国1 1 r 系统 建设的主要问题。 1 1 2 企业应用软件建设的出路 为了应对上述挑战,建立以业务为中心的低成本、高质量、快速交付的企 业应用软件,就需要采用s o a 的架构、理论和方法来指导。s o a 基于服务的特 性使其能通过服务的松耦合来统一规划层次式的企业架构,更快速地搭建应用 和组合新的业务,实现企业集约化管理,加强企业软件的可管控能力。 s o a 架构使得企业能以n 建设与业务对齐的方式进行应用软件建设。s o a 架构中服务的松耦合特性使企业应用架构更加灵活,它能将业务部门和支撑性 职能部门有效地组织起来协同工作,实现共同的企业目标,并能在实现基础化 服务业务的基础之上,灵活、敏捷、快速地应对业务变化和重构。因此,s o a 使企业能够缩短开发时间,通过创建服务的方式提高代码复用率和系统质量, 能更快地推出新的产品和服务,使业务获得持续性进展,不断得到改进和创新, 从而推动企业的集约化经营,大大提高工作效率。 e s b ( e n t e r p d s es e r v i c eb u s ,企业服务总线) 作为由中间件技术实现并支 持s o a 的一组基础架构功能,因其只需花费较少资源即可解决实际中的问题 而成为实现s o a 架构的首选,它提供一个统一接口,连接不同的应用服务使其 相互通信并得以整合【z j 。 1 2 国内外研究现状 1 2 1国外研究现状 s o a 的概念是由g a r t n e r 公司在1 9 9 6 年首次提出来的,但当时的技术与环 境还无法使s o a 走向应用【3 】。直到2 l 世纪,随着x m l ( e x t e n s i b l em a r k u p l a n g u a g e ,扩展性标识语言) 与w e bs e r v i c e 等技术的发展,s o a 才得以从概 念逐渐转向于应用,逐渐走入人们的视野。最初,m m 和b e a 是其主要推动者, 后来越来越多的企业开始声称支持s o a ,包括s a p 、o r a c l e 等,这些主流厂商 纷纷提出各自的s o a 实施方法和应用案例。 但直到目前,国际上s o a 标准的整体局势仍较混乱。国际上积极推动s o a 3 武汉理工大学硕士学位论文 相关标准规范制定的主要是万维网联盟( w 3 c ) 、w e b 服务互操作组织( w s i ) 和结构化信息标准促进组织( o a s i s ) 等协会组织以及i b m 、微软、b e a 等跨 国企业。但这些规范及标准仅仅在各个标准化协会或企业内形成初步的体系, 不同组织之间发布的规范及标准存在重复甚至冲突的现象。因此,国际上统一 的s o a 标准体系在短时间内还不能成型。 而对于s o a 架构的实现研究,i b m 认为e s b 是s o a 的核心和基础。它的 概念由s o n i c 公司于2 0 0 2 年提出,将其定义为“集成了消息机制、w e bs e r v i c e s 、 消息转换和智能路由的基于标准的集成主干 4 1 。2 0 0 3 年,g a r t n e r 公司在面向 服务体系架构基础上提出了事件驱动的体系架构( e d a ,e v e n t d r i v e n a r c h i t e c t u r e ) 结合e d a 的应用,使得e s b 技术上升到了新的高度,得 到了更好的发展。 1 2 2 国内研究现状 在国内,2 0 0 5 年至今,s o a 已经逐渐成为中国r r 架构的主导思想,众多应 用软件厂商、基础平台厂商和系统集成商纷纷推出了各自基于s o a 的软件产品 及行业解决方案。在各个行业和领域中,包括军事、金融、通讯、烟草、电子 政务、医疗卫生、钢铁制造等,均纷纷在其信息化建设中越来越广泛地应用基 于s o a 的架构方法,以此来解决信息系统中的信息孤岛、资源难于共享、系统 协作能力弱以及难以支撑业务变化等难题。 我国s o a 的起步较国外晚,但发展迅速,且遗留问题与国外相比规模较小。 在我国着手实施s o a 需深刻了解我国自身业务实情,不可盲目对国外技术照搬 照抄。对于e s b 技术的应用还需更深入的实践和研究探索,目前国内针对s o a 架构的实现主要体现在中间件产品上,对于e s b 的整体解决方案非常缺乏。e s b 若想在我国得以更大规模的推广,需要更多企业用户的参与和认知,来构建完 整的、企业级的、具有相当规模的解决方案。 1 3 论文研究内容及目的 本课题研究的项目背景源自湖北省中小学信息技术课教学系统。该教学系 统是一个基于b s 模式的,应用网络和多媒体等技术,为开展中小学信息技术 课教学提供一个灵活可扩展的,适合于多种层面、多种对象及多种网络环境的 交互式教学支撑平台。该项目集教师、学生和管理员用户功能为一体,教师能 4 武汉理工大学硕士学位论文 够创建教学活动分配给学生,学生在接收到教学活动后进行学习,并提交学习 结果,对选择题、判断题、答案唯一的填空题和w o r d 、e x c e l 、p o w c r p o i n t 操作 题进行自动评分,其他主观题提交给教师修改,教师在接收到学生提交的作业 后进行评分。完成这样一个完整的教学活动交互后,教师学生均可以看到活动 成绩以及详细的对错情况,教师和管理员还可以查看活动的错误率统计。当然, 该系统还包括其他的基本功能,用户信息管理、留言板功能、学生求助以及教 师的回复功能、教学活动的添加和管理功能、密码修改功能等,在保障教师的 日常教学任务基础上,也帮助教师大大地提高了工作效率。 该教学平台被安装到每个学校的信息技术课教学机房中,在局域网环境内 供教师上课使用,也就是说各个学校在安装了该教学系统后使它变成了一个自 治系统,无法与外界进行信息交互。湖北省电教馆无法查看到每个学校学生的 学习情况,不同学校之间的老师无法智能共享新创建的活动,无法将本校学生 学习情况与其它学校学生进行对比等等情况将随之出现。 为增加该教学平台的信息交互能力,利用每个学校个性化数据库信息,本 文深入学习面向服务的体系架构理论知识,对s o a 的相关技术进行研究和讨论, 并对企业服务总线进行着重研究,提出基于e s b 的应用系统开发方案,并将其 运用到具体实施过程中,希望能够达到以下目的: 基于湖北省中小学信息技术课教学系统,根据教学共享平台需求分析其 可重用性,构造松耦合的w e b 服务; 合理地划分、整合和调用w c b 服务; 按照e s b 技术相关规范对系统架构进行合理规划; 通过对相应理论的研究,针对教学共享平台提出基于e s b 的应用软件开 发方法,并验证研究方案的可行性。 1 4 论文组织结构 本文根据课题研究需要分为六个部分,分别介绍如下: 第一章为绪论部分。首先介绍了企业信息化和服务化发展的现状,并引出 s o a 作为目前最佳的解决方案;接着详细分析了企业应用软件建设的困境和出 路,并介绍了当前s o a 的国内外研究现状;最后对论文的研究内容及目的进行 阐述。 第二章为对面向服务体系架构的理论研究。研究内容包括:软件体系结构 5 武汉理工大学硕士学位论文 的发展、s o a 架构研究、w e bs e r v i c e s 研究和企业服务总线e s b 的研究。 第三章为基于e s b 软件开发方式的相关核心技术研究。首先对目前开源 e s b 实现进行了分析,然后选择一种适合本文开发方式的e s b 开发工具,并深 入研究该e s b 的实现架构;接着研究了n e t 以及c x f 对w e b 服务的支持。 第四章为基于e s b 的教学共享平台系统设计。对湖北省中小学信息技术课 教学系统进行简要介绍,分析教学共享平台的系统需求,提出总体架构和实现 步骤。 第五章为基于e s b 的教学共享平台系统实现。通过对数据库的分析提出数 据调用方案,实现w e b 服务并发布,然后在m u l ee s b 生成m u l e 客户端,编写 配置文件对w e b 服务进行调用,最后搭建出完整的教学共享平台系统。 第六章为总结与展望。对本文研究工作进行总结,针对本文提出的开发方 法进行认定,并对该方法的继续研究提出自己的观点。 6 武汉理工大学硕士学位论文 第2 章面向服务体系架构 面向服务体系架构的提出使软件开发的低成本、高质量和快速交付成为可 能,而s o a 并不是一种新兴的技术,它仅仅是一个理念、方法学、一种模型, 是一种架构和组织r r 基础结构及业务功能的方法【1 2 1 。它的实现技术除了s o a 之外,还包括w e bs e r v i c e s 和e s b 等,下面通过对软件体系结构发展的分析, 展开对s o a 、w c bs e r v i c e s 、e s b 技术的概要介绍。 2 1 软件体系结构的发展 软件体系结构【5 】是具有一定形式的结构化元素,即构件的集合,包括处理构 件、数据构件和连接构件。处理构件负责对数据进行加工,数据构件是被加工 的信息,连接构件把体系结构的不同部分组合连接起来。体系结构较为通用的 定义是:它由软件的粗粒度结构组成,描述了系统的构件和构件间在高层次的 相互作用【6 1 。 二十世纪六十年代的软件危机使得人们开始重视软件工程的研究。最初人 们把软件设计的重点放在数据结构和算法的选择上,但随着软件系统规模的大 型化和复杂化,整个系统的结构显得越发重要。对于大规模的复杂软件系统来 说,对总体的系统结构设计比算法和数据结构的选择重要得多。在此种背景下, 软件体系结构的工程将成为新一代的软件工程。而在这种演变历史中,软件体 系结构经历了四个阶段:无结构软件体系结构、面向对象的软件体系结构、面 向组件的软件体系结构、面向服务的软件体系结构,如表2 1 。 表2 1 四个阶段的软件体系结构 彩笏移搿鳓嬲锄鳓獭 缈群影够4 7 移形鹗搿警雾孵荔? 谬豫獠” 萝。粤。”j 特点: : :凌澈件体系结构 ? 结构维成 趁酝 缀兹貔;i 貔勰蟛翻:a 荔自磊施自廖镢磐,7 够j 誓瘳:o 磁学;0 磺蕊囊 ”:孙知蕴j 群 磬:巧强。4 0 t 。扎l 毛每i 。j 噍溅l 。矗;,l 缪鼍囊缓 以语句为基本单位,组未过多考虑系统结构,不存在 合成为模块,再由模块建模工作;数据、用户接口和 无结构 语句聚集和嵌套调用组成应所有逻辑业务的处理都混杂在 软件体系结构 用程序一起,导致重用性低、可维护 性差、系统集成性差 将数据和对数据的操作通过对象间消息传递等机制使 面向对象 对象组合在一起,形成一个软件开发者可以将现实问题模 软件体系结构 相互依存、不可分开的拟为对象和行为,从而简化复 7 武汉理工大学硕士学位论文 整体,这个整体就是对杂业务的分析,同时为了降低 象,对象之间通过消息复杂性,面向对象的分析和设 机制实现功能方法的调计方式还能将重要的或必不可 用【8 】少的业务进行抽象,使其能够 被引用 最为核心的概念“接口”从对象的思维模式中自然进化 用来发布事件、属性和而来;一旦组织达到了基于明 面向组件方法,以非源码形式存显功能分离的组件的更高成熟 软件体系结构 组件 在的组件每个都是一个架构水平,那么支撑业务的应 独立的物理单元,从而用程序就会变成一组基于组件 达到粗粒度的复用的持续增长的集合 将应用程序中不同的功服务之间通过通信来完成某一 能单元( 称为服务) 通业务,通信可能是简单的数据 过定义良好的接口和契传送,也可能是两个或更多的 约联系起来,服务之间服务协同通信共同完成某一业 面向服务 服务能够相互进行交互,并务;这种面向服务的、与构建 软件体系结构 且每种服务都能提供对方式无关的松耦合系统,使得 该定义功能集的访问业务应用程序能够灵活地根据 业务变更而变动,适应不断变 化的环境 2 2s o a 概述 2 2 1s o a 的概念 s o a 的概念是由g a r t n c r 公司在1 9 9 6 年首次提出来的,g a r t n e r 将s o a 描 述为“客户端服务器的软件设计方法,一项应用由软件服务和软件服务使用者 组成s o a 与大多数通用的客户端服务器模型的不同之处在于它着重强调软 件组件的松散耦合,并使用独立的标准接口。 1 0 1 到目前为止,关于s o a 还没有一个统一的、被广泛认可的定义,这是因为 s o a 中的业务领域和技术领域之间存在着重叠,因此不同的厂商或个人根据自 身的需求对s o a 进行了不同的诠释。但总体上仍可大致分为两类:狭义的s o a 定义和广义的s o a 定义。 狭义的s o a 定义认为s o a 主要是一种架构风格,是以业务为驱动、面 向服务为原则的n 架构方式; 广义的s o a 定义则认为s o a 是包含架构风格、编程模型、运行环境和 相关方法论等在内的一整套企业应用架构方法和企业环境,涵盖建模、 武汉理工大学硕士学位论文 开发、整合、部署、管理等整个企业应用软件建设的生命周期。 关于s o a 的概念可以从以下4 个方面来理解。 面向业务的应用。从业务分析人员的角度来看,s o a 是基于标准的业务 应用服务,具有明确的业务含义。s o a 是专注于“以业务为中心 而不 是“以技术为中心的业务构件,因此使得在进行业务构件设计时不需 要过度关注技术上的实现,而以业务为驱动,根据企业自身的业务需求 来设计和优化业务模式,完全从业务层面来设计业务功能。 架构模式。从架构设计师的角度来看,s o a 是一种架构设计模式,用来 解决多系统、多应用环境下的企业架构问题,能够有效结合业务战略和 r r 战略,更加适合设计n 层架构。s o a 提供了一个完整的架构蓝图, 包括数据、业务、应用和技术架构等不同的维度,围绕无状态、粗粒度、 松耦合以及服务化重用来实现系统间的服务共享和不同方式的交互。 方法学。从概念的角度来看,s o a 是一种规划企业应用的方法,它包含 一系列的方法帮助企业从业务战略的角度出发,规划企业的业务功能, 并将这些业务功能以服务的形式提供给其他服务或最终用户,达到业务 服用的目的。这些方法包括业务规划、服务规划、流程规划等。 编程模型。从技术开发人员的角度来看,s o a 是一种新的编程模型,这 种编程模型以类似于面向对象编程基于接口的方式来开发模块化的应 用,强调服务组装和流程编排。 2 2 2s o a 的架构模型 s o a 架构中包括三个重要组成,分别为:服务、动态发现和消剧1 1 】。 服务是一个可以通过网络访问的可调用软件模块,由服务提供者对服务行 为和处理消息的接口进行公开;被公开的接口被发布到公共注册中心或目录中, 并根据相关规则进行分类,服务消费者就可以根据分类特征在注册中心或目录 中查找特定服务了,这个过程被称为服务的动态发现;而服务消费者使用服务 的过程中则需要通过消息进行通信来完成此服务的功能,这些消息都是遵循 x m l 模式的x m l 文档。 这种通过服务公开业务供其他应用程序使用的架构,需要三个基本角色对 其进行描述,它们分别为服务提供者( s e r v i c ep r o v i d e r ) 、服务请求者( s o r v i c e r c q u e s t o r ) 和服务注册中一t ) , ( s e r v i c or e g i s t r y ) ,这三个角色各自承担着不同的任务, 9 武汉理工大学硕士学位论文 交互过程中产生发布( p u b l i s h ) 、查找( f i n d ) 、绑定( b i n d ) - - - 个操作,它们之间的关 系如图2 1 所示。 图2 1s o a 架构 其中,服务提供者是一个可以通过网络寻址的实体,它通过将自己的服务 描述和接口发布在服务注册中心进行配置和发布,使服务请求者可以发现和访 问该服务,并接受和执行来自服务请求者的请求;服务注册中心相当于一个存 储服务信息的数据库,并允许需要相应服务的服务请求者对服务提供者接口进 行查找;服务请求者是一个软件模块、应用程序或另一个服务,它对服务注册 中心中的服务进行查询,并对服务进行绑定和执行。 所以针对上述三个角色的交互,就产生了三种操作。发布操作是为了使服 务可以被访问,而对服务提供者中对应的服务描述等信息进行暴露和注册,方 便服务请求者查找;发现操作是在服务请求者需要某服务时对服务进行检索和 查找;绑定操作是当服务请求者查找到所需服务时,使用服务描述中的细节对 服务进行定位、联系和调用,从而在运行时得以调用或启动与服务的交互。 2 2 3 实现s o a 的关键技术 目前实现s o a 的技术很多,这些技术都具有一个很重要的共同点,那就是 支持在不同平台上、以不同语言编写的各种模块都能以基于标准的方式进行相 互通信。下面就几种主流技术进行介绍。 ( 1 ) x m l 语言 x m l 是目前全球范围内用于描述数据和交换数据的一种标准方式,它使得 系统或数据之间的通讯变得非常简单。企业可以运用x m l 文档在几种( 不兼容 的) 硬件或软件平台甚至是应用程序之间交换大量的数据。 l o 武汉理工大学硕士学位论文 ( 2 ) w e bs e r v i c e s w e bs e r v i c e s 是微软提出的基于互联网的开发模型,一经提出即得到业界的 广泛推崇。w e bs e r v i c e s 应用由一组基于w e b 的服务组成,是为了使原本孤立 的站点之间能够相互通信、共享而提出的一种接口。它的设计目标就是简单性 和扩展性,大量增加异构程序和平台间的互操作性,使应用程序能够被不同用 户访问。它是面向对象分析与设计的一种合理发展,能够对服务进行封装、消 息传递、动态绑定、服务描述和查询,在w e bs e r v i c e s 中一切都可以是服务, 这些服务发布一个a p i ( a p p l i c a t i o np r o g r a m m i n gi n t e r f a c e ,应用程序接口) 供 网络中的其他服务使用,并且封装了实现细节。w e bs e r v i c e s 的相关技术有 s o a p ( s i m p l eo b j e c ta c c e s sp r o t o c o l ,简单对象访问协议) 、w s d l ( w e bs e r v i c e d e s c r i p t i o nl a n g u a g e ,网络服务描述语言) 和u d d i ( u n i v e r s a ld e s c r i p t i o n , d i s c o v e r ya n di n t e g r a t i o n ,通用描述、发现和集成服务) 等。 ( 3 ) 消息代理 消息代理( m e s s a g eb r o k e r ) 是一种在数据源与目的地之间移动数据使信息 处理流畅的软件技术,应用程序、文件、数据库、对象( 如c o r b a 、c o m ) 及 w
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 美妆品牌线上营销计划
- 环境监测行业智能化转型关键技术研究与应用2025年数据质量控制报告
- 农产品冷链物流标准化建设与可持续发展研究报告
- 文明行为培训题目及答案
- 海洋安全知识题库及答案
- 编译大赛日语题目及答案
- 2025年陕西省人民法院聘用书记员考试试题及答案
- 2024-2025学年广东省湛江二十一中高一(上)期中语文试卷
- 2025年电气防爆考试题目及答案
- 小学信息试卷及答案
- 部编版六年级道德与法治上册第2课《宪法是根本法》精品课件【带视频】
- 建筑施工过程中成品保护施工方案
- 西师版三年级上册数学全册教案(完整)
- 整理版第三届宁波国际海报双年展2004获奖作品选
- 关键过程(工序)和特殊过程(工序)管理办法
- 火力发电厂运煤设计规程
- 武术校本课程武术基本功
- 机械制造及自动化专业讲座
- 第十章DNA、RNA的生物合成ppt课件
- 3250变压器综合测试仪(共85页)
- 医用耗材分类目录 (低值 ╱ 高值)
评论
0/150
提交评论