执行是要害 假如没有人监督实施,各种建筑规范本身并不能保证大楼的安全和舒适。与此类似,除非得到贯彻执行,否则,SOA策略就一文不值。 有些策略可以在WSM中形成规则,或者单独开发系统,这样可以保证得到自动执行。但也有些策略主要用于改变和规范人们的行为,如规定在生产级的应用中使用的服务必须在生产注册中心进行登记,就难于保证它被自动执行。 企业的项目治理中心经常是执行策略的“一站式”机构。项目经理可以指导项目符合各种规定,同时不给项目带来太多的负担。其他办法还有在进行资金投入之前,由SOA治理小组对项目进行评估。 最重要的是,SOA策略的目标需要和经济上的激励措施相结合。否则,要满足SOA的要求、支持服务很可能会成为一个火药桶。“在现实生活中,开发部门经常因为面临资金和开发时间的压力而不愿意或者不去遵循SOA治理的要求。因此,没有一个有效的治理流程,SOA项目的部署就很难顺利进行,非凡是在跨部门时,”MIC的首席架构师Bob Laird说,“假如组织中有些部门不支持SOA,SOA的优势就很难发挥出来。” SOA策略的执行还应该根据反馈进行调整。假如发现某个服务或者某个流程不符合要求,需要对此进行修改。另一方面,不符合要求也有可能表明某个策略过于严格或者表述得不是很清楚。应该确保反馈流程顺畅,这有助于对策略进行调整和改善。 同样,无论策略考虑得多么周全,有时候开发人员为了组织利益的最大化在执行策略时还是会有例外发生。应该保证每个策略都有一个提出例外和批准例外的规定流程。通常会依据角色,制定一个策略负责人,他(她)有权批准例外。 拟定内部合同 策略不应该非常宽泛,而应该是具体针对服务的各种规则,因而最好用某种形式的合同来表述。这听起来有些希奇,在你的组织中一个部门和另一个部门订立合同。然而,这些合同可以保证提供者交付的是服务,而不仅仅是程序代码。 “合同把消费者(Consumer)和生产者(ProdUCer)的生命周期联系起来,”Systinet的Stanek解释说,“合同是描述双方需求的一个参考点。”合同不仅仅是服务级别的协议,它可以约定消费者的行为,从而让服务的提供者制定开发计划。其目的是让生产者对消费者的需求有一定了解。 合同对双方同意遵守的策略进行具体描述。尽管在合同的表述上目前没有标准,不过不妨参考用“金、银、铜”来定义服务的级别,还可以参考一些模板来映射概念和制定的策略。这里的合同与其说是法律文书,还不如说是支持消费者和生产者进行交互的约定。 尽早着手 在SPA项目早期治理很轻易被忽略。这在SOA项目的试验阶段影响不大,但随着服务开始进入生产阶段,情形就会大不一样。事实上,很多组织不是从一开始就考虑到治理,而是到事情发展到不可收拾了才想到它。 新闻热点
疑难解答