治理是有意图地使用政策、计划、过程和组织结构做出决定,并控制一个实体达到业务目标。SOA治理关注在实现SOA时需要的或创建的服务。
1 采用SOA的主要理由就是提供业务和IT的灵活性。SOA采用的是可复用的服务的方式,通过企业的架构来实现企业的业务战略。创建一个包含丰富的可复用服务,好处得到充分体现的环境,需要深思熟虑的、显式的、得到实现和维护的治理计划。SOA的真正好处是创建一个面向服务的企业(SOE)。SOE的核心是用更为水平的方式连接业务过程。
2 在用于全球企业和公共机构的治理模块中,我看到过两个极端。在二战之后的一代人中,军事化的治理很流行,这是由那些曾在军队中接受过领导培训的员工所主导的。项目通常很冗长,包含严格的官僚主义控制和大量的文书工作,导致了大爆炸式的结果,或者项目被取消。这种形式的治理仍然在许多政府组织中存在。
与此相反,在看到速度的需要的情况下,下一代的治理倾向于走向另一个错误的极端。业务单元控制他们自己的IT开发,或者IT开发小组被迫关注他们在垂直结构中的位置,做出一些局部优化的决定,注重的是及时交付项目,而很少考虑或理解对企业整体所带来的影响。这样的情况和兼并收购一起发生时,就造成了每个业务问题都有几个不同的应用程序,得到了过于冗余的系统。
SOE采取的是中间策略。某些控制是需要的,但我们需要正确的控制,也就是说,这些控制为创建"好的"服务和敏捷性增加价值,又不会变得太繁重。业务的需要驱动着IT,而不是其他情况。治理模型倾向于采用联合的方式,多个组织机构关注不同的任务,通过共同的治理政策、计划、过程和测量指标实现松散的协作。在这种方式中,SOE既可以通过企业架构以及相应的业务策略和IT策略"自顶向下"地发展,也可以"自底向上"地发展,利用已有的一组系统或项目,确定创建可复用服务的机会。
SOA是IT支持变化的催化剂,如果实施得当,将联合业务部门和IT部门,获得比较优势。例如,许多公司都有某种类型的基础设施部门,也许负责所有的消息中间件。相对来说,比较容易升级一个组织,引入SOA技术架构能力,例如使用企业服务总线(ESB)或扩展标记语言(XML)消息在不同系统中共享数据。尽管这样做是有价值的,也是在SOA道路上的第一步,但只是更新技术架构也错失了真正的好处。从基础设施的观点来看,像XML和Web服务描述语言(WSDL)这样的概念是强大而有用的。但是,从它们自身来说,它们只是技术浪潮中最近的一朵浪花。实际上,SOA并不需要使用XML或WSDL。在将来的几年里,XML之外的其他技术肯定会出现,它们从技术的角度来看会更有价值。
因为SOA是一种分布式的架构,跨越了业务和IT之间的界线,所以更需要有效地治理在这些组织机构之间到底发生了什么。实际上,在组织机构中引入SOA通常可能是一个重大的转折点,从弱的治理转向强的治理。
3 本章关注SOA治理中应该考虑的方面,以及考虑它们所需的实践技术。您的企业不一定准备好了所有这些方面。这没什么。只要您意识到它们,并在决定中加以注意("我不知道"将不是理由),您就很好地迈向创建富有竞争力的SOA治理功能之路了。本章将探讨SOA治理要考虑的三个领域:
SOA策略的治理。
SOA的组织。
SOA治理考虑。
在考虑SOA治理时,我们有意采用自顶向下的方式。也就是说,我们从策略和业务焦点开始,向下深入到日常SOA治理设计和模式的实现集。许多开始SOA之旅的组织会发现,他们从一开始就没有准备好利用SOA的战略跃迁,他们需要先找到更多的技术专家。也就是说,SOA通常会在IT组织中开始,这里会有专家队伍,有很好的教育,然后再开始转向价值链,考虑全面的、关注业务的、基于SOA的转变。在这种情况下,SOA治理实践者应该注意SOA策略的治理,但应该从实现本章的32和33等小节的相关部分开始。实际上,SOA治理通常采取一种分阶段的方式,首先关注服务开发生命周期,接着是SOA项目管理(利用33节中描述的过程),最后是转变到敏捷的企业。典型的SOA治理阶段在需要的时候,我们以"理想通信公司"这样一个虚构的组织作为例子。
3SOA战略的治理
最有效的SOA治理必须能够控制并帮助提升企业战略,以创建SOE。这要求IT部门(信息技术部门)与业务部门并肩工作。另外,许多IT部门习惯于舒服地在自己的地盘上工作,没有能力考虑从订单到现金的循环,也没有兴趣考虑,更不必说去考虑业务在眼前的项目需求背后想要的是什么。SOA治理的职责是治理业务的敏捷性,需要改变这种状况(参见图32)。这种改变需要与企业架构部门和业务部门密切协作,加入必要的控制,推动敏捷性策略。如果没有专门的计划,企业永远也不能实现到SOE的跃迁。
例如,开发单位1的过程的2/3依赖于其他开发单位管理的服务的完整性、性能、
可靠性和传播。如果没有治理,单位1将独自完成,而不是采用可复用的服务
3.1 SOA战略的治理
最有效的SOA治理必须能够控制并帮助提升企业战略,以创建SOE。这要求IT部门(信息技术部门)与业务部门并肩工作。另外,许多IT部门习惯于舒服地在自己的地盘上工作,没有能力考虑从订单到现金的循环,也没有兴趣考虑,更不必说去考虑业务在眼前的项目需求背后想要的是什么。SOA治理的职责是治理业务的敏捷性,需要改变这种状况。这种改变需要与企业架构部门和业务部门密切协作,加入必要的控制,推动敏捷性策略。如果没有专门的计划,企业永远也不能实现到SOE的跃迁。
例如,开发单位1的过程的2/3依赖于其他开发单位管理的服务的完整性、性能、
可靠性和传播。如果没有治理,单位1将独自完成,而不是采用可复用的服务