针对开发人员和架构师的 SOA 治理
SOA 治理已经成为一个重大的问题。企业的 IT 小组和 CIO 围绕 SOA、企业体系结构、软件开发生命周期 (SDLC) 等制订一些新的治理策略。从开发人员的视角了解 IT 治理,包括治理里程碑、治理的重要性,以及如何使日常工作更有效率等考虑因素。通过理解这一视角,您可以了解如何避免在治理问题方面与开发团队发生冲突……
一般说来,有关治理的文章讨论的主题是,随着公司在面向服务的体系结构 (SOA) 中逐渐成熟,治理所充当的角色发生的变化。企业体系结构 (EA) 小组开发治理策略和过程,而 CIO 则会组建委员会执行治理,与此同时,应用程序开发小组也在思考治理对他们有何影响。应用程序小组往往会有一种自以为是的态度:“企业里的那些家伙,他们不了解我的工作和事务的优先顺序。我没有时间和资金处理这个!“
本文会向应用程序开发团队阐明治理的价值。它还能帮助架构师理解开发小组的观点,并了解如何调整他们发出的消息才能更容易被接受,受到较少的抵触。
什么是治理?
治理意味着授权。它提供一个策略和最佳实践的框架,可以用这个框架定义谁有权做出何种类型的 IT 决策。它还能指定应对这些决策负责的人员。很多分析人员已经清晰地划定了治理和管理之间的区别,而重申这一区别是十分重要的。
治理与具体的 IT 决策无关;它会决定有能力做出这些决策的人员所充当的角色。管理则通过治理指导原则获得授权,并做出具体的 IT 决策。
您感到困惑吗?想想您的 SOA 项目;这种项目中的治理比传统项目中的更复杂。现在您构建的服务规模更小了,大家都希望(而且应该)重用它们。治理策略经过定义,用来控制这些服务的生命周期以最大程度地实现重用。您必须经常对各种问题进行监视,例如,是谁公布了服务,服务是怎样设计和构建的,由谁支付其费用,由谁管理安全性,等等。
治理是 SOA 项目成功的关键。没有治理,您就不能充分理解 SOA 的价值;没有治理,您手头的工具可能会变得一团糟。
为什么要治理?
治理的价值也许还不甚明显。可能要到第一个 SOA 项目完成后,您才会开始意识到治理策略的重要性。不过,许多 SOA 的实践者都会有强烈的感受,认为您应当预先定义这些策略,甚至在您开始第一个项目以构建服务之前就应进行定义。
治理能围绕服务创建、服务发现、服务标识和重用等制订规则和策略,以避免混乱。它针对服务的执行方式定义了服务水平协议 (SLA),令使用者和提供者都能明白他们所受的限制和抱有的预期。简单地说,治理为提供者和使用者提供了相同的服务质量视图。治理还可以定义在整个企业内注册和发现服务的流程,从而避免或减少冗余服务和重复工作。
治理策略确保您遵循标准的流程,并使流程中的每一步都有适当的文档记录。这可以使法律、法规和其他遵从性规定(如 Sarbanes-Oxley 法案)得以执行。
在实现治理结构时避免出现常见的问题
应用程序开发团队和居于中心地位的 EA 小组常常会发生冲突,因为 EA 小组是在一个理想的环境中设计流程、过程和指导原则的。他们往往不会把细节告诉所有的项目团队,以使后者理解他们独特的项目需求、时间安排和业务驱动因素。上一句话的关键词是所有。EA 小组可能会觉得,只告诉下列小组就足够了:
- 从事最大项目的小组
- 从事的项目可见度最高的小组
- 最易于相处的小组
- 本文关键词:

