【IT168 分析评论】
上个星期我有幸参观了Gartner Application Architecture, Development, and Integration展览,并出席由Paolo Malinverno主持的关于BPM和SOA的会议。他的演讲重点讨论了BPM和SOA的各个方面,以及这两者如何实现相同的目标——提升企业敏捷性。虽然BPM和SOA可以完全彼此独立,但是两者的组合确实能够推动业务敏捷性并取得业务成功。正如我的一位同事常说的那样,BPM和SOA就像巧克力和花生酱。即使单独使用也表现良好,但是组合起来功能更加强大。
在Paolo演讲的提问阶段,我想到了一个非常好的问题:我们首先应该实现哪一种?BPM还是SOA?如果询问来自BPM的人员,他们肯定会说首先实现BPM,如果由SOA的人员回答,他们的答案会相同吗?那么到底谁的回答才是正确的呢?答案是,这些答案都没有错,但都不是正确的。
企业实现BPM和SOA的次序取决于企业的目标。如果企业没有对SOA进行投资,并且需要对主要以人员活动为中心的流程进行优化,那么最好首先实现BPM。如果企业希望公开业务服务以实现重用或重组,从而满足新的业务需求,那么此时应先实现SOA。然而,基本的准则是,要实现业务成功和敏捷性,企业应该同时对这两者进行投入。
很多企业实现了SOA来创建可重用的服务,这些服务可通过新的方式进行重组,从而满足不断变化的业务需求。那么实现此目的的非常好的方法是什么?是的,使用BPM。BPM提供了业务分析程序,分析理解业务流程是如何协调组合在一起。业务组合在大多数情况下都使用了SOA服务。这使得企业能够从SOA中更快地获得更高的价值。
那么BPM又怎样呢?如果只实现BPM而不具备SOA,那么在增加所有权成本的同时,还可能会降低敏捷性。如果没有使用SOA,您的业务流程将继续生成定制的、脆弱的应用程序集成,这种集成不仅缺乏灵活性,而且必须进行维护。因此,在没有使用SOA的情况下,虽然您从改善的流程控制中获益,但是修改这些流程以及其中的IT组件的能力将受到限制。
因此,到底先实现哪一个呢,BPM还是SOA?我认为这属于一种业务决策,但是最基本的一点是,两者缺一不可。
作者简介
Mike Stamback在BEA已工作多年时间,他在WebLogic和AquaLogic产品系列的多个产品的开发和营销过程中扮演了多面手的角色。如今,他主要负责WorkSpace 360、SOA Governance和SOA Security and Management等产品的产品策略和定位。