IBM 在 SOA 参考架构标准中的优势

IBM SOA 标准

本文介绍 IBM 如何开发和使用 SOA 参考架构,帮助客户增加业务灵活性和 IT 灵活性。SOA RA 参考架构被用于帮助组织通过业务集成(特别是符合其独特 SOA 服务目标的服务集成)来实现高级业务敏捷性和 IT 灵活性。IBM 还结合使用 SOA 参考架构和 Cloud 参考架构来帮助组织定义其云解决方案。

Heather Kreger, 杰出工程师,国际标准首席技术官, IBM

Heather Kreger 是 IBM Software Group 的国际标准的首席技术官,也是 SOA 标准首席架构师,拥有 15 年标准设计经验。她领导了 Web services、Management and Java in W3C、OASIS、DMTF 和 The Open Group 标准的开发。Heather 撰写了很多文章和规范,并编写了图书 “Java and JMX, Building Manageable Systems”。最近,她担任了 “Navigating the SOA Open Standards Landscape Around Architecture” 一书的编辑。



Vince Brunssen, 高级软件工程师, IBM

Vince Brunssen 是 IBM Standards Organization 的一名高级软件工程师。目前,他在 OASIS 负责 SOA Repository Artifact Model and Protocol (S-RAMP)标准化工作。他也是 The Open Group 中的 SOA 标准工作的一名贡献者。



Robert Sawyer, SOA 市场主管, IBM

Robert Sawyer 是 IBM WebSphere 的一名产品市场经理,致力于 SOA 解决方案,在此之前他主要致力于事件处理空间,帮助定义 IBM 业务事件处理 (BEP) 目录级别消息以及入市策略。之前工作也包括各种 IBM 团队和产品的软件工程责任,其中有 ECM、电子媒体管理系统 (EMMS) 和医疗和生命科学行业解决方案 IBM SCORE (Solution for Compliance in a Regulated Environment)。



Ali Arsanjani, Ph.D., IBM 杰出工程师,SOA 新兴技术首席技术官, IBM

Ali Arsanjani 博士是 IBM Global Services 的 SOA Emerging Technologies 的首席技术官。他领导的团队负责推动 SOA 的全球竞争力,同时提高 SOA 解决方案(使用 IBM 和非 IBM 工具)和 SOA 产品(他参与了多数 SOA 产品的研发)的交付性能。他负责实现 IBM 在 SOA 领域中新兴技术和 SOA 产品方面的愿景、战略和执行。他是一位实践经验丰富、备受 IBM 大客户追捧的 IBM 架构师。Arsanjani 博士和 IBM Software Group、IBM Software Research 以及 IBM Global Business Services 的其他部门通力合作,为使用 IBM 工具、IBM 技术和最新 SOA 产品的客户提供 SOA 解决方案。作为 IBM Global Services 的 SOA and Web Services Center of Excellence 的首席架构师,他和他的团队擅长总结和研发 SOA 和 Web Services 的建模、分析、设计和实现的最佳实践。他领导内部 IBM worldwide SOA and Web Services Community of Practice(超过 6,000 会员),是 SOA 的 SOMA(Service-oriented Modeling and Architecture,面向服务的建模和架构)方法和围绕 SOA 的其他资产、产品和工具的主要创建者。他一直关注 SOA 工具,包含了针对 Rational Software Architect 的称为 SOMA Modeling 环境 (SOMA-ME) 的扩展和插件(用于为 IBM 的 SOA Methods 和 SOA Solution 开发提供工具支持)。2008 年 8 月的 IBM Systems Journal 对此进行了介绍。Arsanjani 博士在全世界多个行业和国家中推动 SOA 竞争力,他不仅组建团队支持 SOA 领域中的 IBM 工具和资产的部署,而且为 IBM 的大客户提供日常服务。Arsanjani 博士不仅致力于执行一个 GBS 全球战略,还致力于评估和研发支持 IBM 产品的工具。他在 The Open Group 等标准机构中代表 IBM,参与领导该机构中的 SOA Reference Architecture 和 SOA Maturity Model 标准。在 IBM 内部,他领导对新兴技术、工具和咨询产品的研究工作,致力于将服务和特定软件结合起来,这种软件用于以一种可伸缩和可重复的方式将服务成功交付给全球 6,000 多位专业人员。



Rob High, IBM 院士,BPO Foundation 副总裁, IBM

Rob High 身兼数职,其中包括 SOA Foundation 总架构师、IBM 院士、副总裁和 IBM 技术学院成员。他负责确保从开放式行业架构的角度定义融合原则,利用 SOA 和业务流程优化实现业务与 IT 融合,同时确保 IBM 的软件与服务组合以架构为基础,打造高效的 SOA 解决方案。除此之外,他还负责开发 IBM 软件组合,包括 WebSphere、Rational、Tivoli、Lotus 以及用于支持 SOA 的信息管理产品。



2012 年 3 月 08 日

简介

面向服务架构 (Service Oriented Architecture, SOA) 促进灵活的、可重用资产的创造,实现端到端的业务解决方案。随着公司逐渐接受世界各地不同行业不同类型项目的 SOA 原则以及与 SOA 相关的技术时,参考架构的需求就会越来越明显。SOA 参考架构的使用是 SOA 价值主张实现的一个关键因素。

新 Open Group SOA Reference Architecture (SOA RA) 标准为面向服务解决方案架构(包括云解决方案架构)中的架构、设计和实现决策提供了方针指南和选择。SOA 参考架构标准的目标是为创建和评估架构提供一个蓝图。此外,它还提供洞察力、模式和构建块,来将 SOA 的基本元素集成到一个解决方案或者企业架构中。

SOA 的价值

该架构风格就是众所周知的面向服务架构 (Service Oriented Architecture, SOA),而不是大家所熟知的组件实现,只有提供的服务能够发布,且消费者与供应商底层实现细节完全隔离。实质上,整体结构就是:通过松耦合服务使用者使用的服务接口与服务提供者的实现以及解耦实现与绑定,将接口与实现的解耦从编程级别提升到架构级别。

SOA 通过一组与业务保持一致的 IT 服务协议(由合同组成)使业务和 IT 集中起来,共同支持一个组织的业务流程和业务目标。它不仅提供灵活的可重用解耦功能,还提供可在声明规范(比如,WS-Policy 以及相关标准)中具体化服务质量变化的机制。该松耦合功能可使软件解决方案中的软件组件组合更加灵活。此种组合可使应用程序开发人员更为快速地修改其解决方案来响应业务需求的变化,可使用同一组成结构(即重用之前应用程序中创建的组件)快速交付新解决方案以满足新业务需求。可将组件设计的更佳符合不同场景的业务需求。

SOA 的关键业务效益

作为一个灵活的、可扩展的架构框架,SOA 有以下定义功能:

  • 减少成本:在利用现有资产的同时提供从废弃或成本日益增加的应用程序合并多余应用程序功能以及解耦功能的机会。
  • 敏捷性:根据一组业务和 IT 服务构造业务解决方案,以这种方式促进业务流程和使用这些流程的解决方案的快速构建和重新配置。
  • 增加竞争优势:提供进入新市场的机会,并以创新方法,通过使用一系列松耦合 IT 服务利用现有业务功能。通过提供更好的新业务服务增加市场份额和业务价值。
  • 即时上市:通过允许业务决定解决方案的关键驱动力,以及允许 IT 快速支持和实施此方向,来更加快速地交付与业务保持一致的解决方案。
  • 合并:跨竖井 (silo) 解决方案和组织集成,减少系统的物理数,在从遗留 spaghetti 依赖项 “优雅过度” 到一个有组织的、集成的共存系统程序之下实现平台的合并。
  • 一致性:使组织能够更好地将业务目标和 IT 保持一致,使企业能够将其与一个组织想要实现的功能联系起来,与其策略计划保持一致,实现持久的敏捷性和重用性。

参考架构的目标和使用

参考架构的目标是提供解决方案,而企业架构一个标准化蓝图从而为其业务架构解决方案。如图 1 所示,架构(比如参考架构)存在于一个连续体 (Continuum) 中,从非常抽象的连续体(其中架构决策和假设均未识别或制定)到非常具体的连续体(其中大多数假定和架构决策均制定)。

伴随着这个连续体,还存在的领域、行业、企业和解决方案参考架构。要全面地理解这一图表,您可以参考 Navigating the SOA Open Standards Landscape Around Architecture 白皮书,可在 http://www.opengroup.org/soa/source-book/stds/index.htm 中找到。

图 1. 参考架构连续体
参考架构连续体

参考架构可用于设置架构的上下文环境,来为供应商和客户提供理解的基础,实现以图定做产品和为解决方案设计服务以及清晰阐释一组构建块。

对于 SOA,架构师可将参考架构用于各种场景,包括那些采用 SOA 迅速启动的组织,帮助继承者在 SOA 构建中提供服务,帮助 SOA 产品供应商构建一个 SOA 组件以一种可被客户理解的标准方式呈现其产品,以及帮助组织构建其他 SOA 规范和标准。

标准化 SOA 参考架构的价值

SOA RA 的标准化提供一个行业认可的、供应商中立的起点来实现客户创建 SOA 解决方案。这样可用于多个企业共同合作的场景,尽管供应商或系统集成商等存在变更。SOA RA 提供一种常见的分类系统和术语表来设计、构建和描述 SOA 解决方案。这不仅省时省钱而且也可以改进结果。

对采用 SOA 的组织,SOA RA 可以帮助创建业务流程驱动的解决方案、业务工具、消息交换、服务集成、数据访问以及封装遗留软件和组件。当架构师应用 SOA 建模和交付方法论时,一个已被识别的 SOA 的每个元素被映射回 SOA RA,来提供 SOA 解决方案如何进行的视图。这也为特定企业或行业中的业务和 IT 利益相关者提供一个非常有用的通讯工具。

SOA RA 也被用于定义解决方案的功能和灵活性。这是通过一个关键元素检查清单实现的,架构一个 SOA 解决方案时必须考虑到这些关键元素,SOA RA 是通过一个层定义以及这些层上的架构构建块来实现的。甚至在这些层中此概念更推进一步,设计决策点和交互模式的架构构建块可以帮助定义该 SOA 解决方案。例如,从技术角度来说,架构师需要回答这些问题:

  • 生成一个 SOA 解决方案的因素和准则是什么?
  • 使用相互连接的架构和转换功能如何将一个 SOA 解决方案组织为一个架构框架?
  • 如何以最大化资产重用的方式设计一个 SOA 解决方案?

为了解决这些问题,Open Group SOA Reference Architecture 标准提出了一种基于 SOA 解决方案的参考架构。它提供了 SOA 分区和分解到层的高度抽象,每一层都提供一组 SOA 解决方案所需的功能。每一层处理 SOA 中与独特价值主张相关的特征和职责的一个特定子集。

分层架构的基础是一个元模型,它是由层、功能、架构构建块 (ABB)、交互模式、选项和架构决策以及功能、ABB 和层之间的关系构成。这些将指导架构师创建和评估架构。

在真实世界中使用 SOA 参考架构会发生什么?

在采用服务和 SOA 的路上通常需要组织处理独特项目目标和约束。很多组织试用 Web 服务(通过包装现有应用程序),作为探索服务集成领域的一种方法,以结果决定如何超越初始阶段。许多组织参与一个企业范围的业务转型,还有一些组织则定义其路线图、愿景、策略和准则实现评估和治理。对于那些组织而言,有一个目标标准是非常有用的,可帮助衡量当前服务和 SOA 成熟度,并可创建一个达到理想成熟度级别的路线图,这不仅是出于对成熟度的考虑,还能实现不同的业务成果,这些业务成果可通过达到具体的成熟度级别得以实现。

IBM 认证和引导的特定技术分离方法,比如将 Web 服务从 SOA 中分离作为一个解决方案和业务架构。有了成千上万的客户和政府在组织的参与,IBM 就可以在 SOA 解决方案开发领域建立世界级行业领导权,并能提供产品来保证那些解决方案的实现。IBM 已经开发了行业领先的资产来支持这些约定。其中一些关键的、经过实践检验的资产已经作为近来关于治理、成熟度模型、术语的 Open Group SOA 标准,目前称为 SOA Reference Architecture。这里还有一些文章可供参考,介绍了 IBM 如何帮助开发和支持这些 治理服务采纳 标准。本文主要介绍 Open Group Standard SOA Reference Architecture 的 IBM 支持。可在这里找到 (http://www.opengroup.org/projects/soa-ref-arch/)。

SOA 参考架构概述

SOA RA 由一组抽象概念构成,共同提供一个 SOA 逻辑设计。因此,它将会回答 “什么是 SOA”,通过提供一组架构构建块来对这个问题进行详细介绍。在架构评估阶段,或者解决方案架构或企业架构设计阶段,SOA RA 允许架构使用其内容,比如构建块,作为一个元素检查清单:架构构建块以及他们与每层之间的关系、可用选项,以及需要在每层制定的决策。层为构建 SOA 所必需的分离关注点 (separated concerns) 提供一个起始点。每组分离关注点均在其自己的 “层” 中呈现。

SOA RA 设计提供架构以及蓝图,包括软件开发生命周期中所用的模板和指南。这将促进并最终实现自动化,并简化建模以及记录架构层流程,这些功能以及其中的 ABB,层和 ABB 选项,产品到 ABB 的映射以及架构和设计决策,都将有助于 SOA 的创建。

SOA RA 旨在支持组织采纳 SOA,产品供应商构建 SOA 基础架构组件,集成者参与 SOA 解决方案的构建,标准机构参与进一步开发 SOA 规范。

图 2. SOA RA 逻辑解决方案视图
SOA RA 逻辑解决方案视图

SOA 组合功能是在操作系统层和组件层实现。公开的界面则是由服务层提供。注意,这些层中包含一些横切关注点 (cross cutting concerns),比如集成、信息、服务质量和治理,作为注意事项包含在上述各层中。其中三个层处理实施和服务界面(操作系统层、服务组件层和服务层),三个层支持服务消费(业务流程层、消费者层和集成层),而其他四个层(信息架构层、服务质量层、集成层和治理层)支持一个更具辅助性的(有时称为非功能的或补充的)横切关注点。SOA RA 作为一个整体提供框架来支持所有 SOA 元素,包括支持服务及其交互的所有组件。

在图 2 所示的每个层中均有架构构建块 (ABB),代表可重用功能的一个基本元素,以及此层关键责任的实现。驻留于一个层中的每个 ABB 都支持此功能,且每个都有其责任。ABB 也可跨层相互连接,且在层之间提供自然结合。如果始终要在 ABB 之间采用一个特定连接来解决一个特定问题,那么就需要在架构构建块之间定义一种 ABB 模式以及有效交互序列。

除了 ABB 之外,还支持一些其他功能。其中一个功能就是 The Open Group 在 TOGAF 9 中定义的,称为 “组织、个人或系统所拥有的能力”。因此,进一步扩展该定义,ABB 提供技术资源来使组织、个人或系统够提供其定义的功能,一个 ABB,为一个或多个功能提供支持,可以通过一个或多个组件或产品来实现;一个 ABB 的职责包括:服务定义、调解、路由,等等。

层的概述:

在 SOA RA 中定义的层列举如下:

  • 操作系统层:操作和 IT 系统层可捕获组织的基础架构、包括新的和已有的,这是在设计、部署和运行时支持 SOA 解决方案所必需的。

    该层代表实际运行时基础架构和运行在该基础架构上的其他 SOA 架构的交叉点。另外,它也是底层基础架构即服务 (Infrastructure as a Service, IaaS) 结构和广泛的云计算背景中其他 SOA 架构的交叉点。该层的关键要求将在 “功能” 小节进行介绍,其中描述了满足那些需求的功能。
  • 服务组件层:服务组件层包含软件组件,每个软件组件提供服务或者服务上操作的实施或 “实现”。该层也包含功能和技术组件,方便服务组件实现一个或多个服务。服务组件在其功能以及其管理和服务交互质量中反映它们所代表的服务定义。它们将服务合同 “绑定” 到操作和 IT 系统层的服务实现中。服务组件驻留在支持服务规范的容器中。

    服务组件层通过包装和支持松耦合实现 IT 灵活性。关注点分离就是这样,消费者假设其服务实现忠实于其出版描述(服务合规性),并且供应商保证已实现此种合规性。实现的细节对于消费者来说无关要紧。因此,供应商组织可能会决定使用一个有相同描述的组件替换另一个,而不会影响服务消费者。
  • 服务层:服务层由所有在 SOA 中定义的逻辑服务构成。该层包含在设计过程中使用/创建的服务、业务功能和 IT 表现形式的描述,以及在运行时使用的合同和描述。

    服务层是一个平行层,提供 SOA 中支持的业务功能,并介绍 SOA 中支持的服务的功能。
  • 业务流程层:业务流程层包含流程表示、构成方法和构建块,聚合松耦合服务使其成为一个与业务目标保持一致的有序流程。数据流和控制流用来支持服务和业务流程之间的交互。交互可能存在于一个企业中,也可能跨多个企业。

    SOA 参考架构中的业务流程层在连接业务水平要求和 IT 级解决方案组件中充当一个中央协调角色,通过与集成层、服务质量层、信息架构层以及服务层协作完成。
  • 消费者层:消费者层是消费者的入口,不管是人、程序、浏览器或者自动操作,以及与 SOA 相互作用都可从此切入。这使得一个 SOA 解决方案可以支持一个客户端独立的、通道不可知的功能集,通过一个或多个通道(客户端平台或设备)独立消费以及开出账单。所以说它是所有内外部交互式消费者(人类或者其他应用程序/系统)和服务(例如,B2B 场景)之间的切入点。

    该层提供快速创建前端业务流程和综合应用程序的功能,以响应市场变化。它使得通道能够独立访问那些应用程序和平台所支持的各种业务流程。消费者和其余底层 SOA 的解耦为组织提供支持敏捷性、增强重用以及提高质量和一致性的能力。
  • 集成层:集成层是一个横切关注点,支持和提供调节能力,包括变换、路由和协议转换,从服务发起者向正确服务提供者传输服务请求。它支持实现一个 SOA 所需的功能,比如路由、协议支持和转换、消息传递/交互风格、异构环境支持、适配器、服务交互、服务实现、服务虚拟化、服务消息传递、信息处理和转换。集成层也负责维护松耦合系统中存在的解决方案一致性。

    这里出现的集成主要是服务组件、服务和流程层(“功能” 层)的集成。例如,这就是流程执行的服务的绑定(否则就晚了)。这允许一个服务可以跨多个面向客户的通道长期公开。
  • 服务质量层:服务质量层也是一个横切关注点,支持 SOA 相关关注点的非功能性需求 (NFR),为在任何给定解决方案中处理它们提供一个焦点。它还提供确保 SOA 满足以下需求的方法:监测、可靠性、可用性、可管理性、事务性、可维护性、可扩展性、安全性、安全、生命周期,等等。它与传统 FCAPS(过失、配置、会计、性能、安全)范围相同,从 ITIL 到 RAS(从可靠性、可用性、适用性),保持将同种管理和监控应用到今天的商业领域,对于管理服务和 SOA 解决方案来说是非常重要的,可能需要扩展来处理面向自然的服务和许多 SOA 解决方案的跨域边界。
  • 信息架构层:信息层也是一个横切关注点,负责以统一的表示形式呈现一个组织其各方面信息,正如其 IT 服务、应用程序和系统所提供的那样,保证业务需求和流程与业务词汇(词汇表和术语)保持一致。

    该层包括信息架构、业务分析和业务智能、元数据因素,确保包括关于信息架构的关键因素,也可被用于作为通过数据集市和数据仓库实现业务分析和业务智能创建的基础。这包括存储在这一层的元数据内容。它也支持信息服务功能,使一个虚拟化信息数据层功能得以实现。这一层也使得 SOA 能够支持数据一致性和数据质量一致性。
  • 治理层:治理层也是一个横切关注点,确保一个组织中的服务和 SOA 解决方案遵守定义策略、指导方针和标准,这些均定义为一个应用于组织中的目标、策略和规章的功能,一个 SOA 解决方案将提供所需的业务价值。SOA 治理活动应该符合 Corporate、IT 和 Enterprise Architecture 治理准则和标准。治理层将被用来匹配和支持组织的目标 SOA 成熟度等级。

服务类型:

服务本质上就是任何面向服务架构的核心概念,意识到这里涉及的服务可能有很多不同种类非常重要的。SOA 参考架构定义了一个标准的服务分类方案。这里的服务可根据它们的行动来分类,例如,按其功能或目的(尽管分类并不相互排斥)分类,以帮助确保覆盖和共享理解。当然其他分类方案也是可行和有用的。

将服务分区到组在一个面向服务架构中的服务和服务组合开发中是一个常见活动。服务类别和组将影响业务和 IT 查看和理解架构以及支持该架构的服务组合的方法。

下图显示了一个功能分类方案,用于在典型企业中发现服务。

图 3. 服务类型
服务类型

图 3 显示的是分解的服务类别。连接到 'Service Integration Services' 的服务,比如交互服务、流程服务、信息服务等等,均被认为是属于特定域的。这些都是特定的解决方案,要求针对于正在开发的域或解决方案独一无二的实现。特定服务域可以购买,但是通常需要进行广泛定制或扩展。

其余服务类别则是域无关类别。这些域无关类别包括开发服务、管理服务等。这类服务可直接用于各种不同域或解决方案。域无关服务通常被用于计划、开发、支持和管理解决方案中的域特定服务。通常域无关服务可以通过购买即可使用,而无需进行扩展。

注意,交互、流程和信息服务类别支持模式—视图—控制器 (Model-View-Controller) 模式。分离这些方面的价值在架构传统观念中仍然适用于 SOA。

服务类别有:

  • 中介服务:负责将服务消费者与服务供应商绑定。很明显可以通过解决位置问题实现跨网络请求路由最优化,满足业务目标。中介服务通常通过一些有意义的活动增加附加价值,比如日志记录或翻译,还有连通性。
  • 交互服务:提供业务设计的表示逻辑,并支持应用程序和终端用户之间的交互。
  • 进程服务:包括各种形式的组成逻辑,特别是业务进程流。
  • 信息服务:提供业务设计的数据逻辑。实现提供业务持久化数据的存取,支持业务数据组成,并提供其自身的子架构来跨组织管理数据流。
  • 存取服务:将遗留应用程序和功能集成到面向服务的架构解决方案。
  • 安全服务:负责保护免受贯穿整个 SOA 脆弱部分的威胁。主要负责保护服务消费者和服务供应商之间的交互,以及保护所有对该架构有贡献的元素。
  • 伙伴服务:捕获在业务设计中有直观表现形式的合作伙伴互操作性语义。
  • 生命周期服务:支持管理 SOA 解决方案生命周期以及贯穿开发和管理,从策略到基础架构的所有构成元素。
  • 资产和注册表服务:提供资产访问权限,这是整个架构的一部分,包括服务描述、软件服务、策略、文档以及其他业务操作必不可少的资产和构件。
  • 基础架构服务:提供资源的高效利用,确保完善的操作环境,平衡工作负载以满足服务水平目标,隔离工作以避免干扰,执行维护,安全访问可信业务流程和数据,简化系统整体管理。
  • 管理服务:提供管理工具和度量集以监控服务流、底层系统健康状况、资源利用、中断和瓶颈的鉴定、服务目标实现、管理策略执行以及故障恢复。
  • 开发服务:支持整套架构工具、建模工具、开发工具、视觉构成工具、组装工具、方法论、调试辅助程序、基础架构工具以及构建一个 SOA 解决方案所需的探索代理。
  • 战略与规划服务:支持创建愿景、蓝图以及移交计划以提高业务成果以及处理该业务策略的服务来创建一个涵盖服务和 IT 的实现路线路。
  • 业务应用服务:实现核心业务逻辑,其中实现是在一个业务模型中特别创建的。
  • 业务服务:捕获业务功能,作为粗粒度进程服务提供给外部消费者。

SOA RA 提供综合的范围和细节。这使得架构师在考虑服务和解决方案架构块时能够自信没有什么遗漏。基于广泛的真实项目经验,IBM 是唯一配备提供支持 SOA 及这种 SOA RA 标准所必需的广泛经验和产品的。

IBM 如何支持 SOA RA 标准

服务产品

IBM 不仅拥有综合的着火测试服务产品集,还是 SOA 的市场领导者,拥有有帮助客户使用 SOA 的丰富经验。

似乎您已经开始启动您的 SOA 转型了,但是如果想要评估进展,那您将可能面临着性能问题,而且可能是设计、基础架构或实现评估。似乎您需要帮助制定您的 SOA 解决方案标准,确保解决方案可以在最大负载下操作。IBM 服务可以帮助评估您的计划或者推荐改进,极大地提升业务价值。SOA Diagnostic 着眼于全面 SOA 策略、治理(包括安全性)、基础架构准备状态和正在进行的 SOA 开发项目。此外,我们也关注能力和性能评估,确保您的 SOA 可以满足所有业务和 IT 需求

Open Group SOA RA 标准是基于 IBM 的 SOA 解决方案栈(一个关键资产,是上述服务的一部分)以及面向服务的建模和架构 (Service Oriented Modeling and Architecture, SOMA),IBM 用于为您的解决方案识别正确的服务的著名方法。

现在,IBM 将利用这丰富的经验将 SOA 应用到云解决方案。请参见 http://www-935.ibm.com/services/us/index.wss/offerfamily/gbs/a1028751

软件产品

IBM 在这一行业拥有广泛的产品,可以为您提供合适的 SOA 解决方案。每一步都在您的路线图中,在您架构的每一层都可以使用 IBM 产品来为您 SOA 生命周期的每个阶段(即计划、开发、部署、管理)提供合适的工具和基础架构。IBM 使用以下图表作为一个架构参考模型来解释实现一个 SOA 的各个方面。

IBM 产品和服务也可被映射到 SOA 参考架构标准化的常见服务类型:

图 4. IBM 软件产品映射,第 1 部分
IBM 软件产品映射
图 5. IBM 软件产品映射,第 2 部分
IBM 软件产品映射

IBM 品牌支持 SOA 解决方案中的 Model/Assemble/Deploy/Manage 生命周期:

  • Rational 通过提供工具建模 SOA 解决方案和业务流程来支持 Model 和 Assemble。它还提供产品以支持开发服务。
  • WebSphere 通过为服务实现、服务客户端和业务流程提供运行时来支持 Deploy。它还提供产品以支持部署 SOA 解决方案所必需的操作服务。
  • Tivoli 通过提供服务、解决方案和基础架构的监控和操作管理来支持 Manage。它还提供产品以支持管理服务。
  • Lotus 提供工具来将人员和协作入口集成到您的业务流程。它还提供交互服务的支持。关注上述 IBM SOA 参考架构,这是可用于 SOA 各个方面的大量 IBM 产品的一个样例。
  • Information Management 通过在整个信息供应链中提供信息管理服务支持 Deploy。

IBM 产品既为各层提供支持,也在 SOA RA 中提供服务。

  • 战略与规划服务是由 Global Business Service 的组件业务建模 (Component Business Modeling, CBM) 服务提供的,可帮助您有条不紊地检查您的业务并识别正确的业务组件和服务。面向服务的建模和架构 (SOMA) 服务以及工具可帮助您识别正确的服务以满足我们的需求。SOMA 的 Rational Unified Process (RUP) 可提供最好的实践产品,使这些流程、特别是现代化遗留系统增速。此外,IBM Rational 将 Rational Systems ArchitectRational Focal Point 作为工具出售给企业架构师,可以为市场驱动的产品和组合管理提供决策支持系统。Rational RequisitePro 跟踪业务需求将其作为目标,并介入服务开发生命周期。
  • 业务服务和事件帮助业务分析师捕获您的文档、遵从性、模拟和最优化的业务设计。WebSphere Business Monitor 帮助您创建仪表板来观察您的业务性能,这有助于您理解您的业务设计如何实现您的业务目标和推荐优化。Cognos Business Intelligence 提供关于您 SOA 的业务报告、分析和仪表板。WebSphere Operational Decision Management 增强 BPM 和 SOA 基础架构以及业务洞察,以及关于事件驱动业务条件的认知。
  • 开发服务由 Rational Software Architect 提供,将为 Windows、Linux、i、及 z 系统上的业务服务提供一个开发环境。Rational Team Concert 促进这些环境下的协作开发。Rational ClearCaseClearQuest 自动化和执行开发进程,实现更好的洞察、可预测性、管理和软件开发生命周期控制。为了实现这一点,IBM Integration Designer 帮助您创建了业务进程流、状态机制和业务规则。
  • 资产和注册表服务由 Rational Asset Manager 提供,可帮助创建、更改、管理、发现和重用任何类型的开发资产,包括那些用于您 SOA 解决方案的资产。WebSphere Service Registry and Repository 提供这些工具来提供注册和位置服务以支持延迟绑定到服务。
  • 服务集成服务本质上是企业服务总线 (Enterprise Service Bus) 功能,是由 WebSphere Enterprise Service Bus 支持的,提供一个基本架构实现整个企业级分布式网络的透明互联。它由 WebSphere Message Broker 所扩展,为非 XML 数据类型提供消息转换,同时提供基于消息的集成。WebSphere Message Queue 使可升级的、可靠的跨不同平台消息交换。WebSphere DataPower SOA 设备可加强和促进 SOA 应用程序,特别是 WebSphere DataPower Integration Appliance XI52WebSphere DataPower XML Accelerator XA35 Appliance 的无负载 Web 服务处理和 XML 处理。
  • 业务应用服务托管于 WebSphere Application Server,一个高度可用的托管环境 (hosting environment),提供基础 SOA 业务服务和一个 WebSphere Portal、IBM Business Process Management (BPM) 以及 WebSphere ESB 的平台,支持基于 SOA、SCA、SIP、Web 2.0 以及 JPA 编程模型的标准。WebSphere Application Server 可随着 WebSphere eXtended Deployment (XD) 的规模而扩增,而 WebSphere Network Deployment 会为普遍高终端计算需求扩展编程模式。WebSphere eXtended Deployment Compute Grid 支持跨事务和批处理范式共享业务逻辑。WebSphere eXtreme Scale 提供分布式缓存要素,实现灵活的可扩展性以及下一代 SOA 和云计算环境。业务应用程序由执行数据管理系统实现:CICS 是一个应用程序和事务服务器,IMS 是一个事务和分层数据库管理系统。CICSIMS 均已作为一个 SOA 开发启用。
  • 流程服务由 IBM Business Process Management 完全支持,这是业务进程(流和业务状态机制)的一个主要托管环境。WebSphere Operation and Decision Management 交付一个业务角色管理系统来控制和管理业务策略和流程。WebSphere Business Events 有助于业务检测、评估,以及对基于可控事件模式的探索的业务事件影响作出响应。
  • 交互服务由 WebSphere Portal 提供,这也是一个托管环境,用于 SOA 应用程序的用户交互逻辑,允许将接口聚集到一个单一用户页面。Lotus Sametime 是一个统一的通讯平台,支持业务流程中的服务创新和用户委托。IBM Mashup Center 支持您使用动态情景应用程序来连接用户与业务服务。
  • 信息服务是由数据仓储和信息集成产品提供的。相对 IBM Information Server 而言,InfoSphere Master Data Management 集中管理贯穿客户、产品和帐户域的业务关键型主数据,IBM Information Server 是复杂、异构、分布式信息的一个数据集成平台。Cognos Business Integrator 使您可以以任何组合对任何数据进行探索和交互,并生成完整的时间频谱。
  • 伙伴服务是通过 Sterling B2B IntegrationWebSphere DataPower Appliance 提供的,支持通过一个集中的、统一的贸易伙伴和事务管理平台将企业对企业与贸易伙伴集成到一起,实现流程和数据集成。
  • 存取服务由 WebSphere Adapters 支持,为各种遗留信息系统提供适配器。
  • 基础架构服务由 WebSphere Virtual Enterprise 提供,提供应用程序虚拟化来降低成本,增加灵活性、敏捷性、可用性和可靠性。虚拟软件管理 IBM 以及其他供应商的中间件和硬件的使用。IBM 是一个可信的系统、服务器和存储供应商,可满足您的业务需求,这包括时代领先的 Power Systems running AIX or Linux, and BladeCenter,集成平台并内置可扩展性和可管理性。IBM 以无可匹敌的处理能力和 System z Series 的高可用性而闻名。
  • 管理服务包括安全性和运行时管理。安全性由 Tivoli Identity Manager, Tivoli Federated Identity Manager, Tivoli Security Policy Manager and Tivoli Access Manager 提供,它提供了一个统一的用户管理、用户信息联合和特权管理。Tivoli Compliance Insight Manager 提供一个自动化的用户安全性遵从监控。WebSphere DataPower XML Security Gateway XS40 and XG45 将 Tivoli 的联合身份、安全性和目录服务集成到您的 SOA 网络处理。监控、预先配置和自动化则是由 Tivoli Composite Application Manager (ITCAM) 提供的,这是一个集成的产品集(包括 SOA 的 ITCAM),支持跨所有 SOA RA 平台的 IT 服务管理,Tivoli Intelligent Orchestrator (TIO) 为管理和自动化您的行政管理工作流,以及初始化工作流以响应信息系统中的事件提供支持,而 Tivoli Provisioning Manager 扩展 TIO 以及工作流来自动化开发环境实现软件和硬件的预先配置。如 ITIL 所述,Tivoli Change and Configuration Management DataBase (CCMDB) 是自动化和支持更改以及配置管理进程的基础。而 Tivoli Application Dependency Discovery (TADDM) 交付自动化发现和配置跟踪功能来建立应用程序映射,提供对应用程序复杂性的实时监控。Tivoli Usage and Accounting Manager 评估共享计算资源的使用情况和成本。Tivoli Business Service Manager (TBSM) 提供实时服务可用性和可视性以及智能仪表板,同时可视化关键业务服务以及相关 SLA 的健康状况。IBM Systems Director 跨多系统环境提供物理和虚拟系统平台管理,使得虚拟化得以简化。
  • 生命周期服务由 Rational Method Composer 提供,是一个灵活的软件开发处理平台,拥有一个最佳实践库,可帮助您为您的项目团队提供定制的、但尚未一致的流程指南。Rational Requirements Composer 提供视觉和文本技术,帮助在一个协作环境中捕获业务目标和细化需求。Rational Build Forge 自动化和加速构建和发布流程。

SOA 如何奠定 Cloud 基础

SOA RA 已被 The Open Group 标准化,应用于 Cloud 架构,也是 IBM 云计算参考架构的底层架构,已提交到 Open Group (IBM CCRA)。本小节将介绍有云计算架构新因素的地方,并显示 SOA RA 是如何支持它们的。

功能关注点:操作系统、服务组件、服务、业务流进程和消费者界面;所有这些都存在 Cloud 中且和 Clould 相关。

图 6. Cloud 基础架构
Cloud 基础架构

对于 Cloud 架构,需要特别关注:

  • 操作层:基础架构是操作系统层的一部分,但是通常集中在 Cloud 架构中,因为 Cloud 将新需求强加于基础架构以确保广泛的网络访问、资源合并、快速弹性、虚拟化和可扩展性。
  • 服务层:常见云服务类型 (*aaS) 位于服务层。这些云服务类型,像其他服务,使用并有时候公开操作系统层的资产。对于云服务,公开资产类型通常是服务类型的焦点,比如,在操作系统中,硬件基础架构作为 IaaS 公开,中间件作为 PaaS 公开,而业务流程作为 BPaaS 公开。
  • 业务流程:业务流程可以加入一个 Cloud 解决方案,就像在 SOA 解决方案中那样,它们可作为一个服务 (BPaaS) 提供者或者成为服务消费者(不管它们是否是云服务)。另外,云计算供应商组织中的业务流程需要以新颖的形式重构和简化来满足更快的实时交付、实时更改以及实现成本目标。
  • 消费者层:消费者层被更严格、更仔细地从服务和服务供应商层分离,允许共享和替代云服务或供应商。

SOA RA 中的横切关注点:集成、服务质量、信息和治理:是所有云计算基础架构和解决方案的重要关注点,就像在 SOA RA 中那样。它们是横切关注点这一事实意味着每个功能层在横切层可能拥有交互功能。

对于 Cloud 架构,必须特别关注:

  • 服务质量 (QOS) 层:为了使按需自服务和有规则的服务要求以及关键客户需求实现弹性、安全性、性能、自动化管理、操作和业务支持,横切关注点服务质量对于 Cloud 管理和安全有更多重要需求。管理支持可作为 Common Cloud Management Platform 在 SOA RA QOS 层呈现,这包括支持操作和业务的支持服务,aka OSS 和 BSS。这对于通过交付多种基于同一基础的云服务驱动的经济规模是至关重要的。
  • 云解决方案的治理也拥有一些独一无二的需求模式,这些需求是跨组织界限支持治理所必需的。供应商和消费者通常需要就云计算供应商如何执行一个交互式治理流程进行商谈,确保云解决方案和服务适当地交付以及继续与业务需求保持一致。

对于云生态系统,云服务消费者、供应商和创建者在云计算架构中确认为普遍的高级别角色。

在 SOA 上下文中关注 Cloud 是很重要的,大型 SOA 解决方案中的 Cloud 解决方案支持它们。

这些横切关注点对于集成和信息仍然是很重要的,必需在任何 Cloud 解决方案架构的开发中考虑到。然而,云计算不能将任何新准则或者关注点引入到这些横切层。

为了使关注 Cloud 关注点更为简单,而不需要关注 SOA 关注点,我们可以将 Cloud 关注点提升到其自己的图表中,如图 7 所示。

图 7. IBM 云计算参考架构
IBM 云计算参考架构

在 CCRA 中没有介绍的那些概念和架构元素仍然可以通过其自己的 SOA RA 遗产隐含和呈现。

结束语:IBM 为您构建 SOA 解决方案的原因

近来,Gartner 的一篇文章(Application and Integration Platforms Key Initiative Overview,2011 年 7 月 22 日)建议客户 “让 SOA 成为首要必备架构”。

IBM 是公认的 SOA 市场占有率领导者,领先长达 7 年之久,而且将会继续。Wintergreen 最近发布他们关于 SOA 软件市场、占有率和预测的报告,报告中提到 78% 的市场属于 IBM,而我们最大的竞争对手的市场占有率还不足 4%。

IBM 拥有:

最重要的是,IBM 的 SOA 策略是构建在一个开放标准上,即实现了互操作性也实现了标准化。在 The Open Group 中,IBM 对 SOA Reference Architecture、SOA Ontology、OSIMM 和 SOA Governance Framework 的领导权是我们致力于标准化 SOA 架构的典范。

参考资料

学习

获得产品和技术

  • 以最适合您的方式 评估 IBM 产品:下载产品试用版,在线试用产品,在云环境下试用产品,或者在 SOA Sandbox 中花费几个小时来学习如何高效实现面向服务架构。

讨论

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=SOA and web services
ArticleID=800953
ArticleTitle=IBM 在 SOA 参考架构标准中的优势
publish-date=03082012