BPM 观点:BPM 在何处结束,SOA 从何处开始?

在本文中,IBM® SOA、BPM 和 EA Technical Strategy 首席架构师 Claus Jensen 将介绍 BPM 与 SOA 之间的区别,这些区别为什么至关重要,以及为什么以结构化的、良好定义的方式组合这二者仍然是一种常识。 本文来自于 IBM Business Process Management Journal 中文版

Claus Torp Jensen, 高级技术人员, IBM

Claus Torp Jensen 是位于纽约州 Somers 的 IBM 高级技术人员。他是 IBM 的 SOA Foundation 团队的成员,从事不同体系结构原则之间的聚合工作。Claus 是 WebSphere Foundation Architecture Board 的一名成员。

在加入 IBM 之前,Claus 作为首席架构师和 SOA 推广人员已经有十年的经验。


developerWorks 投稿作者

2012 年 12 月 03 日

BPM 与 SOA 有何区别,为什么此区别如此至关重要?

业界一个众所周知的事实是 “流程在服务上运行”,所以,业务流程管理 (BPM) 和面向服务的架构 (SOA) 是显然分不开的。SOA 的良好设计原则 是碎片化、低效地连接到企业的事务主干的流程与作为业务转型的一个重要部分的流程之间的区别。那么我们为什么要问 BPM 在何处结束以及 SOA 从何处开始?

一个原因是,这两个缩略语代表着不同类型的概念。BPM 属于业务范畴,以操作改进为目标。SOA 是一种架构风格,以企业的系统(业务和 IT)工程设计为目标。具体来讲,BPM 是一种构建操作解决方案的方法,而 SOA 是一种思维模型,帮助将复杂的问题分解为定义良好且可重用的组件。

另一个原因是,BPM 和 SOA 都对不同的人群有着不同的重要性(并由不同的人群实施)。BPM 对业务和流程分析师至关重要。SOA 对架构师和工程师至关重要。在相互隔离时,二者都有可能生成相同类型的工件,也就是流程和服务定义,但它们是以不同的动机并应用不同的技能集来实现此操作的。架构师和工程师一般无法定义业务希望如何运行自身。相反,业务和流程分析师也无法对复杂的系统进行工程设计,他们不可避免地会将精力集中在解决目前手头的问题上。

最后,BPM 和 SOA 各自的输出的生命周期也不同。流程不仅能够独立于服务进行更改,而且它们更改的频率也比设计良好的服务要高得多。事实上,如果一个可重用的服务像许多业务流程一样变化无常,那么该服务会给它的用户带来无法接受的成本,迫使他们对更新的版本进行持续调整和回归测试。

借助这一发现,我们触及到了为什么要理解 BPM 在何处结束和 SOA 在何处开始如此重要的核心。流程和服务尽管彼此依赖,但它们没有相同的生命周期,它们仍然需要像过去一样共同支持不断变化的业务目标。如果流程不受约束地带动服务,那么服务数量会激增,而最终的 SOA 结构也会比不上一组纠缠在一起的遗留应用程序。如果服务不受约束地带动流程,那么变革和创新将会受到影响,因为任何更改都会度量最终结果是否可重用,尽管事实上许多业务流程完全不需要可重用。要了解 BPM 与 SOA 之间是否达到适当平衡,则要了解从单个流程解决方案角度来看的目标与从企业服务组合角度来看的可管理性之间是否达成一致。


BPM 的目标是陈述所需的自动化水平

优秀业务流程设计的关键是人工任务与服务(自动化的)任务之间的区别。对于现代企业,完整的交易意味着小心设计和管理端到端业务流程的完整性,以及从一个操作角度优化这些业务流程。可以假设这些优化的流程的自动化部分可连接到支持它们的相关 IT 功能。


SOA 从一组可用于支持想要的自动化的服务开始

使用者和提供者之间的中介概念是 SOA 的基础。在过去,中介一般从 IT 系统之间的彼此交互方面来考虑。在 BPM 出现后,中介的概念现在必须包含连接流程(作为自动化功能的使用者)与服务(作为自动化功能的提供者)。这不是说一些业务服务的实现不能包含人员和流程,而是说对一个使用流程而言,服务是一个自动化了该流程的特定部分的黑盒子。

一定要记住,面向服务不是从技术开始的,它始于在功能组件方面考虑您的业务和您周围的世界的思维方式。以服务(和使用它们的流程)的形式思考提供一种统一的中介架构,该架构可将企业内外的关键利益相关者维系在一起。


供应商产品常常模糊了 BPM 与 SOA 之间的界限

许多供应商产品,尤其是 BPM 产品,模糊化了 BPM 与 SOA 之间的界限,因为 BPM 产品随带了一个嵌入式企业服务总线 (ESB)。一个企业服务总线是体现和形式化使用者、中介和提供者概念的模式;因此从技术角度来讲,它是一项核心 SOA 技术。嵌入式 ESB 常常随带一个 BPM 产品的原因很简单,前面已经讨论过,因为 BPM 假设流程的自动化部分可连接到基础 IT 功能,所以连接和中介功能必须可用,否则 BPM 解决方案将仅以人为中心。

但是,即使使用一个嵌入了 ESB 的 BPM 套件,仍然应该牢记的是,BPM 和 SOA 是由拥有不同技能的人完成的。事实上,组合的 BPM 和 SOA 产品的一个合理需求是每个群体都有专用的工具:流程专家和集成专家。而且,如果 SOA 是企业战略的一部分,必须警惕的是,将 SOA 功能从 BPM 平台外部化需要一个过程,毕竟 BPM 不是服务的惟一使用者,只需想想移动、云和大数据,您就会明白!


结束语

结合使用 BPM 和 SOA 仍然是一种常见做法,但是必须花心思有效地解决流程专家、集成专家和服务架构师之间在技能和思维模式上的区别。所有这三个群体都是业务变革的关键,他们必须协力完成共同的目标。如果没有明确定义 BPM 从业人员与 SOA 从业人员之间的界限,那么每个群体都会对他们的角色和职责做出自己的假设,这些假设很少与其他群体的假设匹配。当然,补救措施是简明地定义和传达 BPM 的结束位置和 SOA 的开始位置。

参考资料

学习

获得产品和技术

讨论

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=WebSphere
ArticleID=848288
ArticleTitle=BPM 观点:BPM 在何处结束,SOA 从何处开始?
publish-date=12032012