CIO如何为SOA策略管理建立有效的架构

SOA策略在运行时为提供了现成的便利渠道,以改变某项服务的关键操作特性,包括像许可限制(approval limits)和事务处理路径选择(transaction routing)这些业务参数。同时,SOA策略在开发时控制了如何构建服务的一些关键方面。它需要协调使用来自多种类型的软件工具和基础架构产品的特性和功能。即便某些产品在名称中有“策略管理”的字样,但要为SOA策略建立基础架构,首先不该是评估产品,而是了解有效的策略管理所需的重要功能以及这些功能如何协同工作。

为SOA策略管理设计架构

大多数企业会发现对于SOA策略最好采用逐步前进的方法,先从单个的策略域(policy domain)入手,如安全或管理等策略领。在设计SOA策略基础架构之前,一定要明白贵企业最先在哪里使用SOA策略、SOA策略管理方面准备得如何,以及SOA策略生命周期具有的一般本质。因为SOA策略管理需要协调使用多个产品,架构设计是正确的出发点――尤其是为了给逐步构建基础架构作好准备。在以下三个设计阶段需要为SOA策略反复设计架构:

1、设计SOA策略的概念架构。只有先为SOA策略奠定概念基础,才可以:1)确保自己了解SOA策略;2)打下一个简单的基础,便于向公司主管、开发人员及其他同事描述SOA策略;3)构建一个广义的分类方案(categorization scheme),以便了解各个产品在你的SOA策略基础架构中何处扮演角色、扮演怎样的角色、扮演多广泛的角色。

2、设计SOA策略的逻辑架构。在概念架构的基础上,接下来应当添加额外一层的细节,详细描述SOA策略基础架构的几个重要结构元素。你在设计逻辑架构过程中,会开始看到SOA策略将如何集成到贵企业的整个SOA平台;比方说,考虑SOA存储库(SOA repository)会如何为某些类型的SOA策略充当SOA存储库。

3、结合SOA平台战略。由于逻辑架构(或逻辑架构的雏形)已到位,可以根据你的SOA平台计划来确定相应的SOA策略功能,以解决SOA策略与SOA平台中的消息传送和管理功能如何集成之类的问题。相关的特定产品和这些产品扮演的角色会不一样,这要看每家企业逐步构建SOA平台及SOA策略基础架构的具体情况。

构建SOA策略基础架构

现在SOA策略已经有了逻辑架构,可以作为稳固基础,但你无法在逻辑架构上运行业务。你在不断完善具体实现的SOA平台来支持SOA策略时,处理好下面这两项任务就能排除障碍:

1、找出现有产品中的SOA策略功能。SOA策略基础架构充当SOA平台的扩展部分,而不是本身是另一个平台。你在逻辑架构中确认的SOA策略功能可能由三个部分来提供: 1)传统的软件基础架构产品;2)一般的SOA专用产品;3)专门为支持SOA策略或更普遍地支持SOA策略而设计的产品。想为SOA策略设计基础架构,就要确认你的SOA设备、企业服务总线、SOA管理解决方案或其他非SOA产品可能会如何提供逻辑架构所概述的那些功能。

2、为SOA策略管理标准制定战略。确认现有产品中的SOA策略时涉及的一个环节是,要确定如何使用行业标准。虽然某些规范和标准只涵盖SOA策略管理全面范围的一小部分,但它们确实在SOA策略基础架构的各部分之间提供了重要的集成点(integration point)。不过,现在对SOA策略来说是早期阶段,相应规范还没有得到广泛采用,所以你要认真规划,弄清楚怎样采用相关规范、何时采用。

考虑与SOA策略相关的规范时,有几条基本的经验法则可供参考:

·如果你现有的SOA基础架构支持某项规范,就使用该规范――但前提是事先要经过认真测试。

·总是把规范纳入你的产品选择标准――除非它明显并不适合你,或者你明确决定不使用它。

·别把规范列为一项强制性的产品选择标准,除非根据你的需求、战略以及规范的成熟性,你明确决定需要采用它。

·在其他各方面同等的情况下,应当购买支持规范的产品――不过通常来说,应注重产品是否合乎使用,而不是是否支持标准。

·在使用(或不使用)任何规范时,要认真考虑:万一该规范失去(或得到)行业的支持,你将如何完善自己的架构和平台。

一旦你界定了逻辑架构,确定了现有产品适合逻辑架构的状况如何,并决定了使用的行业规范和标准,也就拥有了必要的技术基础,可用来确定可能需要哪些产品用于SOA策略管理。你的战略会有所变化,具体取决于你在采用SOA策略方面的积极性、为使用各个SOA策略域而选择的时机、现有基础架构,以及完善SOA平台的计划。应当借助上述方法来建立一个牢固的架构基础,以便为SOA策略管理基础架构的短期效益和长远发展同同作好规划。