您好,欢迎访问三七文档
SOA术语概述:第1部分,服务、体系结构、治理和业务术语级别:初级BertrandPortier(bportier@ca.ibm.com),IT架构师,IBM2007年3月15日通过本系列的第1部分了解一些基本的SOA术语。BertrandPortier将定义包括服务、体系结构、面向服务的体系结构、治理和业务流程在内的多个术语,并说明为何它们是SOA成功的基础。他还介绍了IBMSOAFoundation中的主要情况。引言在任何领域中,语义都非常重要,而在面向服务的体系结构(Service-orientedarchitecture,SOA)中更是如此。由于SOA涉及多个团队和组织,因此就相关术语达成一致至关重要。本系列将带着您开始SOA之旅,为您定义基础术语和主要概念。您将了解SOA领域中所使用的各个词汇。对于每个术语,将说明其为何对SOA重要、其在这种情况下的含义、相关的标准有哪些以及与其他术语的区别如何。关于组织方式的说明以下列出的术语并不是按照字母顺序排列的,也不是按照其重要性进行排列。我们将按照构建块的方式对其进行排列。首先讨论的是“服务”,因为这个术语可能是理解SOA框架的最基本概念。我们将以服务为基础形成“体系结构”、“治理”和“业务”概念的定义。在很多情况下,我们都将较大的术语分解为较小的组成部分进行讨论。服务服务显然是面向服务的体系结构的核心,术语服务的使用非常广泛。不过,这个术语对于不同的人有不同的含义,“什么是服务?”这个问题经常会引发激烈的争论。我听到过人们讨论业务任务、业务服务、应用程序功能、技术服务或基础设施服务。我将基于IBMRational®MethodComposerPlug-inforSOAGovernance和IBMRational®UnifiedProcessforService-OrientedArchitecture给出一个定义。(有关更多信息,请参见参考资料部分。)“服务是执行可重复任务的可发现资源,由外部化的服务规范进行描述。”由于存在多种不同的定义,通过定义“服务”来开始本文的讨论比较困难。例如,您可能会认为上述定义过于偏重于技术。请记住,一定不要过于依赖于服务的正式定义,而要将重点放在服务背后的主要概念上,包括:业务一致性:服务并不基于IT功能,而是基于业务的需求。服务业务一致性由服务分析和设计技术提供支持。规范:服务是自包含的,采用接口、操作、语义、动态行为、策略和服务质量进行描述。可重用性:服务可重用性由服务粒度设计决策予以支持。协议:服务协议是实体(即服务提供者和使用者)之间就相关事项达成的一致意见。这些协议基于服务规范,而不是实现。承载和可发现性:随着生命周期的进展,将承载服务,并可以对其进行发现;这由服务元数据、注册中心和存储库提供支持。聚合:松散耦合的服务聚合为企业内部或企业间的业务流程或组合应用程序。这些组合特征表明SOA并不仅与“技术”相关,而且也与业务要求和需求相关。还要务必注意,并非所有东西都是服务。例如,有些IT功能不应该作为服务公开。可以使用IBM的面向服务的建模和体系结构(Service-OrientedModelingandArchitecture,SOMA)等分析技术基于上面列出的概念标识恰当的服务列表。我们将在本文中详细讨论这些方面的内容(包括本部分中所有以粗体显示的术语)。体系结构和服务类似,很难得到一个大家一致认可的体系结构的定义。不过,与服务不同的是,人们在谈论SOA时有时候会忘记体系结构,而显然不应将其忘记!事实上,企业体系结构和面向服务的体系结构具有相同的目标,即通过集成的IT策略支持业务。例如,企业架构师是SOA成功的关键,因为他们将根据不断发展的业务需求和要求确定企业的IT系统的策略发展方向。OpenGroupArchitectureForum(TOGAF)根据上下文提供了两个体系结构定义:1.“系统的正式描述,或用于指导其实现的组件级别的系统详细计划。2.组件的结构、它们相互间的关系以及控制其设计及将来发展的原则和指导方针。”这两个定义都与理解SOA中的“A”相关。对其进行进一步细分,我们会发现体系结构对于进行以下工作必不可少:在不同的抽象级别进行设计和建模将规范与实现分离构建灵活的系统确保满足业务需求分析需求更改的影响确保遵循相关原则企业体系结构以下是维基百科(Wikipedia)中的定义:“企业体系结构是这样一种做法,即应用描述组织的流程、信息系统、个人和组织子单元的全面而严格的方法,从而使其与组织的核心目标和策略方向保持一致。创建企业体系结构的主要目的是为了确保业务策略与IT投资保持一致。通过这样,企业体系结构可支持从业务策略一直到基础技术的可跟踪性。”可以将项目级别的“体系结构”和组织级别的“企业体系结构”与此进行比对。请注意对流程、信息系统、人员、目标、策略和业务IT一致性的参考信息。面向服务的体系结构面向服务正如IBMSOAFoundation白皮书中所述“...面向服务是将业务作为一组有联系的服务集成的方法。”有关IBMSOAFoundation的更多信息,请参见参考资料。此处的关键词是“业务”。例如,面向服务可提供非常有用的灵活性,能使用来自一个业务部门(LineOfBusiness,LOB)、多个业务部门以及业务合作伙伴的服务灵活地实现业务流程。SOAFoundation参考模型IBMSOAFoundation中提供了一个SOA参考模型,如图1中所示,此模型说明了为了支持面向服务的体系结构所需的主要功能。由于这个模型基于面向服务的概念,因此它允许从小项目做起,逐渐扩展在企业内的集成,从而在出现新业务需求时以增量的方式采用SOA。有关SOAFoundation的更多信息,请参见参考资料。图1.SOAFoundation参考模型面向服务的体系结构IBMSOAFoundation对SOA的定义如下:“面向服务的体系结构(SOA)是一种用于创建企业IT体系结构的体系结构样式,利用了面向服务的原则来实现业务和支持业务的信息系统之间更为紧密的关系。”SOA具有以下特征:它加强了企业体系结构和业务之间的联系。它允许将组合应用程序作为一组集成服务进行构建。它提供了灵活的业务流程。面向服务的体系结构是全新(与“革新”相对)的事物,意味着新的企业人员角色、新的协作方式、新的支持框架以及新的软件构件。SOA解决方案堆栈如图2中所示,SOA解决方案堆栈是一个SOA参考模型,描述SOA解决方案的运行时概念视图。有时也将其称为“SOA分层体系结构”,其中介绍了各个层次和概念(如业务流程、服务或服务组件)及其相互间的关系。它不依赖于实现所使用的技术。这个分离非常重要,具体请参见本系列的第2部分中的模型驱动的体系结构(Model-DrivenArchitecture,MDA)的相关内容。图2.SOA解决方案堆栈5个层次分别如下(按照从下到上的顺序):可操作系统:表示现有IT资产,说明IT投资非常宝贵,应该在SOA加以利用。服务组件:实现服务,可能通过使用“可操作系统”层中的一个或多个应用程序来进行。如模型中所示,使用者和业务流程并不能直接访问组件,而仅能访问服务。现有组件可以在内部重用,或在合适的情况下在SOA中使用。服务:表示已部署到环境中的服务。这些服务由可发现实体进行治理。业务流程:表示将业务流程作为服务编排实现的操作构件。使用者:表示用于访问业务流程、服务和应用程序的通道。治理因为SOA具有跨组织的特征,其中的服务投资者、设计人员、实现人员、维护人员或客户并不位于相同的组织、业务部门、IT部门、LOB、分支机构或企业中,因此治理对于以增量的方式成功采用SOA非常必要。此部分包含IBMRationalMethodComposerPlug-inforSOAGovernance中的相关定义。它定义了治理、IT治理、SOA治理及其与管理或遵从性之间的差别。它还描述了SOA治理所处理的各项挑战。有关RationalMethodeComposer的更多信息,请参见参考资料部分。治理治理是关于以下方面的概念:建立责任、授权和通信链,以对人员进行权利分配(决策权)。建立度量、策略和控制机制,以支持各个人员执行各自的角色任务和履行相关职责。治理处理的是分配决策权力,并决定使用何种措施以及遵循哪些策略来进行这些决策。决策权分配给角色,而不是个人。另一方面,管理则包括为角色分配人员以及监视策略的执行情况。任何治理解决方案中都包含要符合组织的遵从性要求的目的。遵从性是记录并证明治理已就位并得到了执行:会记录决策,并遵循有关决策的策略。”IT治理“IT治理指属于组织的信息技术流程以及这些流程支持业务目标的方式的治理方面的内容。”IT治理可以通过分配IT流程的决策权和措施进行描述。SOA治理“SOA治理是IT治理的扩展,具体关注服务和其他SOA构件的生命周期。”具体来说,SOA治理关注的是有关服务标识、资金投入、设计、实现、部署、重用、发现、访问、监视、管理和退役的方法和流程。“SOA治理处理以下这些类型的挑战:哪些新组织角色和结构可促进服务标识、设计和共享?哪些标准支持服务的投资、维护、使用和共享?业务部门如何决定在服务创建和维护方面进行投资?企业的面向服务的成熟度如何?需要进行哪些训练、培训或指导?生命周期服务生命周期服务生命周期由服务可能处于的状态以及触发状态间转换的事件组成。在其生命过程中,服务将度过很多阶段(和我们一样:))。将服务的生命周期视为具有状态(位置)和转换的业务状态机;服务可能处于其中的某个状态,而转换使其从一个状态发展到另一个状态。SOA治理考虑的是有关服务生命周期的计划、定义、启用和测定。SOA治理定义服务状态的含义、从一个状态发展到另一个状态需要发生的操作(转换)、如何进行(流程和方法)以及由谁进行(角色)。例如,SOA治理可以将服务状态定义为标识、投入资金、指定、实现、审批、操作、发布、弃用和退役。基础SOA框架则将需要通过生命周期支持服务,并确保遵循了配备的流程。例如,服务注册中心和存储库需要允许用户进行相应的操作,以便服务在生命周期中逐渐发展。协作和投资组合管理工具需要能够允许用户(仅限于具有权限的用户)作出将使得服务从一个状态过渡到另一状态的决策,并在需要进行操作时通知用户。SOA生命周期IBMSOAFoundation在其SOA生命周期的定义中使用了四个阶段:建模包括业务分析与设计(要求、流程、目标和主要性能指标)及IT分析与设计(服务标识和规范)。组装包括服务实现和组合应用程序的构建。部署包括应用程序和运行时(如企业服务总线——EnterpriseServiceBuses,ESB)的部署。管理包括操作环境维护、服务性能监视和服务策略执行。正如上面定义的,SOA治理和流程为这四个阶段提供支持。此情况如图3中所示。图3.SOA生命周期业务现在的企业需要能够识别更改,并快速对其作出反应,而且还要同时维护其由雇员、合作伙伴、客户组成的生态系统。正如IBMOnDemandBusiness所述,需要全面利用先进技术,以实现此目标。有关IBMOnDemandBusiness的信息,请参见参考资料部分。由于客户和法律法规遵从之类的外部要求和竞争与市场之类的变化,业务必须具有灵活性和敏捷性。面向服务的体系结构可帮助实现此目标,允许业务根据变化快速调整。业务一致性SOA成功的关键在于,对遗留应用程序等现有IT资产的重用。不过,SOA允许企业将其技术工作的重点放在将支持其业务功能或流程的服务上——例如,能够与业务任务对应的服务操作——而不是基于竖井(silo)式信息体系的服务。业务一致性涵盖范围更全面,且能促进业务和IT之间更好地进行沟通。在本系列后面的部分中,我们将讨论SOA分析和设计的自顶向下、自底向上及中间相遇方法,从而了解如何将业务模型细化为IT模型,以及可以如何利用主要的现有功能。不过,与业务保持一致并不意味着让业务功能和IT实现紧密耦合。关键的SOA概念之一
本文标题:SOA 术语概述
链接地址:https://www.777doc.com/doc-12334 .html