没有SOA之前,业务流程管理(Business Process Management, BPM)产品已经出现并成功应用,为适应不同的环境,企业工作流程也往往是不断演变的,传统的企业应用系统,例如:ERP,虽然内嵌许多最佳实践的业务流程,面对瞬息万变的世界仍然不能做到随需应变,BPM通过对流程建模、有效管理企业流程,实现流程自动化、优化,同时提高企业流程的透明度和可预测性。目前,BPM主要应用于以下四个主要场景中:
- 整合应用系统,实现异构系统之间交流;
- 业务流程自动化,按照业务需求,自动化流程;
- 企业流程建模分析,详细了解企业流程划分;
- 监控企业活动,分析企业流程效果和效率,提供优化方向。
虽然BPM并不依赖SOA而存在,但是随着企业级SOA作为新的信息系统架构逐步在企业中占据主导地位, BPM结盟SOA,SOA标准化和松耦合的优点将极大推动BPM应用,而BPM的流程建模经验能有效指导企业级SOA建设。
在整合应用系统场景中,企业级SOA标准接口带来的松耦合性降低了BPM的总拥有成本。BPM需要同范围广泛的异构系统对话,在企业级SOA之前,这种对话大多数是通过各家BPM产品的自定义适配器(Adapter)实现的,不仅意味着每个BPM产品都要为支持新系统不断提供新适配器,而且往往对企业内特殊的应用需要客户化开发。而在企业级SOA的环境中,各个异构系统都提供面向服务的接口,BPM能够通过标准接口进行系统整合。从而避免了为支持特殊接口带来的额外实施成本和减少了为支持新应用升级的维护成本。
在业务流程自动化场景中,企业级SOA帮助BPM实现跨越整个价值链的应用。企业级SOA对BPM的益处,随同BPM项目规模和涉及的IT基础系统复杂度增加,特别是对于跨越企业边界,涵盖整个价值链的应用。想象一下,如何实施跨越整个价值链的BPM应用,要面对价值链上下游的众多企业水平参差的IT基础系统,如果依赖定制开发的适配器接口这几乎是一项不可能完成的任务。企业级SOA恰恰注重于如何通过标准化接口隐藏底层的系统异构,从一般意义上解决企业IT基础系统的复杂性。价值链上企业按照SOA标准提供服务和消费服务,BPM管理和协调这种提供和消费关系,从而轻松实现业务流程自动化。
同时,BPM在企业流程建模分析的最佳实践为企业级SOA建设提供指导。企业BPM实施往往从最简单的开始,从部门范围逐渐发展为企业范围,最后提升为复杂的跨价值链BPM系统,而企业级SOA建设道路正好吻合此循序渐进的特性。BPM对企业流程建模分析的结果,为企业级SOA构建提供全局概念,BPM作为企业业务协调活动,能够有效帮助作为架构方法的SOA更多的从业务角度划分模块,切合业务流程的SOA模块也能最快的融入BPM中产生效益。
所以,BPM结盟SOA的最好方法就是在企业信息化建设中让BPM和SOA团队直接合作,从战略高度针对业务流程进行规划,同时在战术性执行层面需要正确地组合BPM和SOA的交叉部署,在BPM流程分析基础上,识别出最有价值的业务模型去实施企业级SOA,在企业级SOA基础上更加深入广泛地推广BPM应用。而合理采用融合BPM和SOA的软件产品,例如:SAP的NetWeaver平台,会带来事半功倍的效果。
查看本文来源