SOA治理案例

日期: 2008-06-12 作者:Tilak Mitra 来源:TechTarget中国

  对于将 IT 作为其关键组织之一的企业而言,SOA 治理具有举足轻重的地位,通过增强这种意识,可以帮助企业获得真正的收益。作者阐释了治理主体的一些主要责任,并以展示如何有效实现 SOA 治理结束本文。


  引言


  在商业领域,什么需要管理呢?任何重要的资产,不管是可以实地盘存的有形设备装置,还是部门的无形商业智能,或者介于两者之间的任何东西,都需要重视管理,以获取最大的商业利益。为了在这个竞争激烈且要求极高的社会中立于不败之地,如今的企业必须充满活力,做到及时响应。目前,大多数企业的支柱就是信息技术 (IT)。企业的 IT 平均投资超过了年收入额的 4.2%(仍在不断攀升)。因此,企业衡量 IT 是否成功的因素有两点,不仅要看它多么顺利地应用到经常业务 (BAU) 的活动中,而且还要看它如何促使企业在市场中脱颖而出。


  现今,业务和信息技术可以看作是同一个车轮上的两个齿轮。如果一个在运转中发生了变化,则要求另一个作出相应的反应。因此,企业 IT 需要做到灵活、可扩展、及时响应、有弹性,并且能够动态地进行重新配置。这种类型的 IT 管理和执行需要非常高效的治理。随着服务基本构件(service building blocks)——一个软件概念,定义为一组服务,其中包括基础设施提供的服务(支持或启用应用程序)——的引入,治理的重要性也在不断增加。这一定义为一组服务的软件概念是面向服务的体系结构 (SOA) 背后的主题。SOA 在使信息技术与企业目标保持一致方面向前迈出了重要一步。围绕 SOA 制定策略的企业需要有效的治理机制,这一点极为重要。SOA 治理不仅为 SOA 工作提供治理——而且是在采用 SOA 作为企业体系结构的主要方法的企业中进行 IT 治理应该遵循的方式。


  什么是治理?


  治理 一词的定义意指治理的行为或方式。此外,正如 Peter Weill 和 Joanne Ross 在关于 IT 治理的一部优秀的作品中定义的(请参阅参考资料),IT 治理是一个决策和责任框架,用来鼓励 IT 中所希望的行为。治理主体的参与者就必须作出的各种决策制定策略。该主体还要决定企业中哪些人能够作出这些决策;也就是说,它完成角色标识。治理委员会的成员还确定需要提供输入以坚定决策的主题专家,以及负责履行其责任的一组人员(根据其角色)。一个有效的 IT 治理委员会必须能够解决以下三个问题:


  必须作出什么决策来确保有效地管理和使用 IT?
  谁应该作出这些决策?
  将如何作出这些决策,以及如何监控这些决策?


  虽然治理解决了这三个问题,但是需要通过管理来实现这种治理。


  IT 治理与 SOA 治理的重要性


  当前,IT 是企业中最为常见的组织,在大多数(如果不是全部的话)业务线 (LOB) 中都存在。对企业发展和成功如此重要的组织必定被企业视为重要资产之一。企业必须充分地了解这样的重要资产,不仅要从中获得最大的利益,而且要正确地加以管理,从而减少与之相关联的风险。这使得治理主体有必要规划、控制和监视 IT 治理所需的企业资产的正确维护和发展。


  SOA 就像新瓶装旧酒。SOA 的概念在 IT 行业已经存在很长时间了,但是直到最近才作为使商业策略和企业要求保持一致(通过其 IT 计划)的一种方式而受到关注。使企业采用需要更加重视治理的 SOA 的原因在于服务跨各种 LOB 分布的这一特性。越来越多的活动部分(即服务形式的构件)的快速增加需要由企业内外的不同组织进行维护,这使得治理更具挑战性。当且仅当对服务进行有效地治理,使之符合服务级别协议 (SLA) 在安全性、可靠性、绩效等方面规定的要求时,业务服务的这种跨组织的特性以及潜在的跨组织边界的服务组合才有可能正确而有效地发挥作用。因此,识别、指定、创建和部署企业服务需要 SOA 治理,必须由一个强大的有效主体监视企业服务组合的整个生命周期。


  在一些企业标准发生了根本性的改变之后,遵循诸如 Sarbanes Oxley(SOX——请参阅参考资料)这样的监管标准已经变得越来越重要,这可以从投资者现在喜欢把钱投入执行高监管标准的公司得到证明。这些监管措施强调需要建立和维护公司责任制度,并且定期评估其有效性。企业和 IT 治理正确而有效的做法是吸引投资者,因为他们将信誉和信任维系在企业的成功和稳定上,从而必须重视治理。投资者更倾向于把资金投入执行严格标准的企业,并且通常(事实证明这样做是正确的)感到遵循标准只有通过治理机制才能实现。另外,统计资料表明,进行良好 IT 治理的公司比很少或没有在 IT 治理上投资的公司的利润率高百分之二十——根据 Peter Weill 和 Jeanne Ross 在他们的书中对 IT 治理的说明(请参阅参考资料)。很明显,在严格的治理标准方面的投资将直接影响任何以 IT 为中心的企业的基础。


  治理责任


  必须充分了解和仔细监控企业中的 IT 角色。必须认真管理对如此重要的资产的投资,因此公司股东需要确保其组织中的 IT 投资支持整个商业策略,并降低其潜在的风险。图 1 展示了治理主体的基本责任。下面我将更完整地描述图中的各个部分。



  图 1. 治理责任
 
  治理的主要方面包括:


  战略联盟 着眼于使企业远景、目标和要求与 IT 工作保持一致。


  价值传递 着眼于 IT 的价值如何通过诸如盈利增加、费用减少、错误降低、公司形象和品牌提升等结果得以证实。


  风险管理 着眼于企业的持续运营和为保护 IT 资产而采取的措施。


  资源管理 着眼于优化作为随需应变的操作环境(ODOE——请参阅参考资料)或者支持应用程序服务的其他环境的一部分的基础设施服务。


  绩效管理 主要着眼于监控运行于企业的 ODOE 或其他环境的服务。


  治理元模型演示了五个主要的相关联的 IT 决策,它可以解决治理的上述几个方面,如图 2 所示。



 


  图 2. 治理元模型
 
  图 2 描述了治理的各个要素及其相互关系。从广义上来讲,IT 和 SOA 原则是在企业级制定的指导原则,它对 IT 体系结构和服务模型具有推动作用,依此类推,IT 体系结构和服务模型规定了如何定义企业 IT 基础设施服务。可以根据 IT 基础设施框架的功能来评估必要的业务应用程序需求。IT 体系结构和服务模型与 IT 基础设施服务的成熟和完备可以推动为进行 IT 投资而优先处理的必要的业务应用程序的某些部分。


  IT 和 SOA 原则


  虽然 IT 原则是一组关于如何在企业内使用 IT 的相关联的基本规定,但是 SOA 原则定义了实现企业 SOA 时要遵循的总体指导原则。IT 原则应该来自一组管理方面的更高级的业务原则。例如,下面是一些业务原则的示例:


  只要有可能就标准化流程和技术。
  与经过协商的业务原则保持一致并及时响应。


  以下各项可能来自 IT 原则:


  体系结构的完整性
  及时响应的、灵活的且可扩展的基础设施
  快速而高效地部署应用程序


  可以按照如下方式将 IT 原则映射到业务原则:体系结构的完整性(第一个 IT 原则)提供了标准化的流程和技术(第一个业务原则),而快速、高效地部署应用程序(第三个 IT 原则)促进了与经过协商的业务原则保持一致并及时响应(第二个业务原则)。


  下面是推动服务模型的一些 SOA 指导原则:


  遵循行业特定的标准以及跨组织的标准
  服务标识和分类
  服务提供
  服务监控和跟踪


  为了实现不同业务服务而组合的服务功能


  SOA 原则还影响 IT 原则。在创建 IT 和 SOA 原则时,治理委员会的成员应该使它们与 IT 拟采用的支持企业所需操作模型的方式保持一致。因此,委员会的责任不仅是制定 IT 和 SOA 原则,而且还要负责监督在整个企业内正确履行 IT 和 SOA 原则。


  IT 体系结构与服务模型


  IT 体系结构与服务模型确定企业数据、应用程序和基础设施所属的组织及其在静态和运行时执行的过程中的相互关系。它还确定企业业务服务组合(在内部和外部同时公开)及其所属的类别。您可能注意到,服务模型(根据 IBM 面向服务的建模和体系结构 (SOMA) 方法——请参阅参考资料)可以处于项目级、业务线级、企业级或生态环境级。Ali Arsanjani 的著作“Toward a Pattern Language for Service-oriented Architecture and Integration, Part 1: Build a Service Eco-system”(请参见本文的参考资料部分)进一步描述了服务生态系统模型。


  虽然创建和拥有 IT 体系结构与服务模型是治理团队的一项基本责任,但是该团队还有一项重要的责任,即制定构建 IT 体系结构与服务模型所依据的体系结构决策,并就此达成一致意见。治理委员会的各参与方还应该负责跨企业的流程标准化。流程标准化定义了如何在企业中执行任务,它是流程集成的基本前提,而流程集成的关键是整个企业中数据的标准化,也就是给代表客户的业务实体展示一个统一的形象。


  IT 基础设施


  IT 基础设施定义了整个企业中可用的 IT 功能(跨多个应用程序共享)的基础。如果该组织采用了 SOA,则由治理委员会负责将企业 IT 基础设施的体系结构定义为一组服务。这些服务既可以是技术性的服务,也可以是基于企业的物质资产(如打印机和扫描仪等)构成的人工服务和技能。企业常常使用一些软件应用程序作为基础设施服务或功能。这些软件应用程序可以采用客户关系管理 (CRM)、企业资源规划 (ERP)、供应链管理 (SCM) 和其他系统等形式。治理委员会内的架构师还负责基于这样广受欢迎的标准软件包应用程序创建基础设施体系结构。由于 IT 基础设施的实现周期之间的准备时间往往很长,所以需要特别强调这一规定,从而使之成为竞争优势和产品特色的源泉。


  业务要求


  业务需求推动了对特定业务应用程序的需求。业务需求主要是根据市场机会确定的,可以帮助企业获得竞争优势。具体的业务要求是由股东确定的,并传达给治理委员会中的 IT 纪律执行人员。治理委员会中的 IT 团队负责通过形成新的业务应用程序的概念来创造性地应对业务需求。需要密切地监督新的业务应用程序是否符合现有的企业 IT 体系结构。这很有可能是一个与创造性相冲突的目标,创造性常常要求不受任何约束地开发新的应用程序。


  企业架构师的责任是监督新的应用程序是否符合现有的企业 IT 体系结构。还可以通过新的业务应用程序确定新的候选服务。这些服务必须遵守治理主体制定的 SOA 原则,只有这样才能将它们放入企业服务组合。企业架构师还要负责应对可能出现的异常情况。可以通过两种方式来处理异常情况:架构师可以对新的应用程序的体系结构强加一些限制和约束,使其遵循现有的体系结构构造。或者,他们可以将新的应用程序用作一种机制来评估现有的体系结构是否过时,是否需要融入新的构造。如果治理委员会中有合适的业务和 IT 方面的代表,就可以直接跟踪新的体系结构构造,看它是否满足业务需求。


  IT 投资


  IT 投资决策是传统上吸引公司股东的五个决策中最重要的决策。IT 决策涉及了以下三个主要问题:


  需要用多少资金?
  把资金用在什么地方?
  如何平衡不同的 LOB 需求?


  作出明智决策的推荐方法是让治理委员会的指定成员获得与下面的管理对象相关的责任和所有权:


  竞争优势和本质差异
  通过更好的交易吞吐量降低成本
  IT 基础设施体系结构的不断成熟
  以数字形式提供信息


  治理主体负责根据以下三个方面共同作出 IT 决策:市场趋势、公司的财务方向,以及关于 IT 开支和收入之间的关系的历史记录数据。


  其他重要责任


  SOA 强制通过纪律来维护 SOA 生命周期内的一致性和相关性。通过遵循诸如 SOMA 之类的 SOA 方法,SOA 治理尝试消除业务和 IT 之间的隔阂,它采用的方法是支持从业务目标一直到服务和衡量这些服务的效果的关键绩效指标 (KPI) 的可跟踪性。SOA 治理还需要通过域所有权保持业务和 IT 之间的固定联系。SOA 治理委员会的成员负责在逻辑上将企业分成一组共享同一业务环境的托管业务服务。业务域的业务所有者和 IT 所有者负责维护支持业务域公开的业务服务的应用程序。他们还负责维护和监控其现有业务服务的 SLA 以及不同域之间的协商 SLA。为企业业务服务提供元数据对于业务和 IT 用户来说都至关重要。元数据可以提供诸如是否遵循 Web 服务规范、业务关键性等信息。可以根据这些元数据来监控和管理业务服务。这也是 SOA 治理委员会成员的主要责任。


  为了确保服务不是冗余的并且与组织的业务目标相关,治理主体应该在整个组织内新的服务和现有服务之间进行协调。为此,可以与 LOB 股东一起定期召开研讨会,以确定业务应用程序需求;在经过正确的分析之后,治理主体可以将业务需求添加到候选业务需求组合中。接着可以召开一系列业务价值评估研讨会来确定候选者,通过业务价值指标 (BVI) 试验的候选业务需求有资格作为服务,随后实现和维护服务。


  治理主体有责任制定 IT 策略并监督其是否在设计和实现的业务应用程序中得以遵循。治理主体还应该进一步确定关键业务流程,这些业务流程可能从策略差异性角度来看非常关键,也可能对于业务流程合并和优化非常关键,甚至有可能恰恰对在市场上保持竞争力非常关键。


  各种监管法案(如 SOX 和健康保险流通与责任法案 (HIPAA))都要求监管大量数据,这对于企业来说是一个重大的挑战。治理委员会成员还有一项责任就是评估监管需求,并且就如何实现它们得出一个合理的结论。


  让治理主体作出每一项决策有点不切实际。不过,治理委员会必须努力将决策流程分散到各个业务域中,而且同时确保以下两点:


  治理主体规定的策略都得到了很好的理解和遵循。


  业务域所有者都知道业务策略方向,这样在业务域级作出的任何决策都已经与企业远景保持一致。


  最后,治理委员会还要负责与高级主管(首席执行官、首席财务官和首席信息官)以及 LOB 所有者共享业务和 IT 开发。这促进了对由不同业务域开发的业务服务的理解和责任。治理主体还应该考虑创建一个信息门户,以便将信息传到企业的每个角落。


  治理实现


  任何治理实现都应该以企业体系结构的四个支柱为中心:人员、流程、技术和服务。实现企业 IT 和 SOA 治理的一种机制就是为 IT 和 SOA 治理建立研发中心 (CoE),它能够在出现新的业务应用程序需求时,将共享资源和功能中心用作资源库。


  治理实现需要分层的组织报告结构的支持。正如图 3 所示,这种报告结构可以分成下列四个层次结构。



  图 3. 治理组织结构示例
 
  决策层。这一层主要由指导委员会中的股东组成,并且包括足以代表高级主管及 LOB 所有者和高级经理的人员。指导委员会制定企业的业务策略、目标和远景。这一层的成员是主要的决策者,他们确定如何进行投资以及将资金投入到哪些具体方面,这些方面既包括需要进行的业务流程改进,又包括实现新的应用程序,目的在于获得有竞争力的市场差异。


  领导层。这一层由治理主管的领导和来自每个业务域的两名代表(一名代表业务,一名代表 IT)组成。(注:上一部分所提到的业务域表示共享同一业务环境的业务服务。)领导层学习来自决策层成员的业务策略和远景,此外还从指导委员会获得指导并向其报告。领导团队创建企业 IT 体系结构,制定 SOA 原则,作为任何应用程序体系结构都需要遵循的最重要的规则。该团队还确定需要优先创建哪些应用程序体系结构,并且确保 IT 优先级与业务需求保持一致。治理主体(由领导团队代表)还制定体系结构标准,并且使需求遵守监管法案。企业体系结构约束也是由该团队制定的,并且他们还负责在需要设计和实现任何新的应用程序需求时监督是否遵循体系结构标准。


  机会管理团队。这一层由多个单独的团队组成,每个团队关注(相关)业务需求的一个或多个方面,并且明确地定义业务应用程序,以满足给定企业业务需求。每个计划团队 都有一个业务主管,负责收集和确定业务需求。相应的 IT 团队主管负责创建遵循管制领导团队规定的 IT 和 SOA 原则的总体应用程序体系结构和解决方案。


  项目管理团队。这一层的团队管理典型应用程序设计和开发的整个生命周期,包括解决方案定义、解决方案概要分析、宏观设计、微观设计、构建、测试和部署等各个阶段。每个项目团队都与特定计划团队协同工作。而一个计划团队常常同时负责几个项目。


  虽然当今企业中的治理涉及很多方面,但是基本要素是分级报告和组织结构。自定义结构是必不可少的,因为企业在结构和文化方面各有千秋。


  结束语


  本文强调,对于任何考虑将 IT 作为获得收入和保持市场竞争力的重要资产之一的企业而言,实现有效的 SOA 和 IT 治理非常重要。这种重要性不仅体现在拥有一个治理主体,而且体现在维护高的执行标准,此外,任何企业必须遵守最近引入的各种强制性法案(如 Sarbanes Oxley)。我们还注意到投资者更加信任维护高的治理标准的公司,其治理效果将直接通过更好的利润率反映出来。被寄予厚望的治理主体将给计划实现治理机制的企业提供一个好的平台。最后,我们推荐了一种 SOA 和 IT 实现,您可以对其进行自定义,使之适应特定企业的公司文化和结构。


  有效的企业 SOA 治理源于当今业内企业服务的日益普及。不同的业内人士对企业服务有不同的看法,从而产生了意见分歧,对于企业应该如何治理其服务组合以便从投资中获得最大的收益,人们的理解常常是错误的。在严格的治理指导下,可以更容易地分期获得对新的服务的投资回报,并且更有效地将其他服务添加到 SOA 系统中。


  关于作者
  
  Tilak Mitra 是 IBM 的一名高级 IT 架构师。目前,他正致力于 SOA 领域的研究,支持公司转变成面向服务的企业。他还专长于基于 J2EE 及相关 EAI 技术的复杂企业和应用程序体系结构。在业余时间里,他喜欢打板球,其投入的劲头一点也不亚于研究技术。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐

  • 事件驱动框架和SOA在空军的应用

    空军正在利用SOA来改善数据共享,并实时跟踪战机,美国空军机动司令部的Michael Marek解释了企业可从中学习的经验。

  • SOA治理模型核心:人

    治理在IT领域非常关键,但是很多时候企业的做法往往太过单向,企业SOA治理模型往往忽视了所有部分当中最关键的组件:人。

  • 揭秘New Relic APM技术细节

    New Relic应性能管理(APM)套件主要用于Web软件开发。它允许用户在面向服务的架构(SOA)上跟踪关键事务性能,并且支持代码级别的可见性来评估特定代码段和SQL语句对性能的影响

  • 仅凭SOA和云无法解决业务数据管理风险问题

    SOA和云可以是某些恼人问题高效的解决方案;这一点我们已经知道了。但是也要记住它们并不是所有事情的直接答案,特别是当你的问题是业务数据管理风险,而不是技术问题时。