【IT168 专稿】
在IT界,好像每隔几年就会出现一股潮流,涌现一些貌似重要的新东西让人们学习。这通常是从一些被过度使用的缩略语开始,鼓吹着其中蕴含的巨大ROI,最后当然还有足以让人倒吸一口凉气的昂贵价格。那么,为什么SOA会是一个例外呢?
几年以来,SOA从一个产业术语逐渐变成一个已被证明的高效益的必须策略。然而,就像许多技术范式一样,它也经历了相当多的失败尝试。在成功企业把SOA定位为一个漫长旅程的同时,其它企业也决无理由根据一次失败的尝试放弃面向服务的部署——因为SOA的回报是相当大的。
值得考虑的是那些迈向SOA的初次尝试——无论最终结果是成功,或是并没有实现IT所应带来的利益。
SOA失败的原因
众所周知,SOA已不是什么新事物。但是许多企业仍然迟迟不敢采用面向服务的策略,或者由于诸多原因最终放弃了尝试。了解SOA失败的原因并从中吸取经验是非常重要的。
首先最重要的一点,你必须给“成功”和“失败”一个定义。这听起来似乎多余,因此许多机构并没有建立这些定量和定性的标准,而最终导致成功与失败的评判成为一片灰色区域。要随时询问自己的整体业务和技术目标、成功的主要标准是什么,并将其记录下来。
其次是要把SOA项目当作一项战略行动,而不是战术行动。不要把精力放在解决短期问题上。一定要制定长远的计划--当然要分阶段、系统地进行。不管是重新设计当前的业务过程或是集成当前的资产,只有通过建立一个良好的计划才能真正地从SOA部署中取得实在的利益。
有了一个长期的战略计划,自然就会需要建立执行支持、保持业务与IT的一致、以及定义治理策略以维持质量和效率。这样项目才能持续稳定地进行。
最后建立你的整体方案。你需要在当前的架构--臃肿、错误编码、历史、功能--和将来的目标之间寻找平衡点,从而为公司决定正确的策略。是要把所有资产连接到中心代理以分享服务,还是重新设计所有或者部分应用以从中获取更多的价值,亦或上面两种结合的长期计划呢?通过建立一个整体方案,你就可以了解精简并重新调整基础设施的重要性了。
全员意见一致
SOA成功的故事和经验已有很多,下面我们来仔细看一下在部署SOA的时候究竟该怎么做。
刚开始的时候,毫无疑问你们的团队需要取得意见上的一致。在动手进行这个IT工程之前,可以在会议上讨论下面10个问题:
1. 我们SOA部署的三个主要目标是什么?
2. 谁会使用这个SOA环境?
3. 有没有计划把过程、服务和应用扩展到公司之外以包括客户和合作伙伴?如果有,我们是否是在构建一个灵活而且可扩展的基础结构?
4. 哪个团队和/或部门负责初步行动?
5. 谁是项目发起人?
6. 以什么为基准来衡量并展示我们的成果?
7. 详细目录:从技术和技能上讲,我们现在有什么?我们需要什么?
8. SOA项目如何改变业务过程?
9. 战略部署将怎样给业务和IT带来利益?
10. 我们是否在利用最新的技术培养协作和创新的同时保护我们既有的IT投资?
一旦建立了战略和方针,你就可以动手开始了。但是从哪里开始呢?