AICon全球人工智能与机器学习技术大会8折特惠,购票立减¥960! 了解详情
写点什么

我们能从 BPMN 2.0 期望什么?

2008 年 5 月 05 日

业务过程建模符号(BPMN)是被当今所有过程设计工具都采用的流行符号。BPMN 是 OMG 维护的公共标准,已广泛地被不断携新产品进入市场的商业和开源 BPMS 工具厂商共同接受。例如,BEA 的 AquaLogic BPM 6.1 – BPMN( http://dev2dev.bea.com/blog/atoussai/archive/2008/04/aqualogic_bpm_6_1.html )。查阅 InfoQ 中关于 BPMN 的帖子( http://www.infoq.com/bpmn )。

尽管其已被广泛采用,但是 BPMN 工具仍有许多令人难以忍受的缺陷:

  • BPMN 是一个图形符号,不支持标准化的元模型。这导致 BPMN 工具之间几乎没有互操作性可言。尽管可以使用 XPDL 来存储和交换过程图,但是并非所有的 BPMN 工具都支持这样做。
  • BPMN 是一门设计语言,一般被翻译成业务过程执行语言(BPEL)。正如 Bruce Silver 指出的( http://www.brsilver.com/wordpress/2007/11/28/roundtripping-revisited/ ),**“面向图形的(graph-oriented)BPMN 模型——其中,你可以将流程导向任何地方——与面向块的(block-oriented)BPEL 之间的不匹配”造成了这两种语言间相当数量的不兼容,这使得在很多情况下这种翻译具有挑战性。“BPMN 规范试图为很多图模式(diagram pattern)描述简单的 BPEL 映射,但是长期以来人们认识到有些模式肯定无法按 BPMN 规范中描述的方式映射。那些对以简单映射为基础的 BPEL 翻译有效的 BPMN 工具,在 BPMN 没有严格按面向块(block-oriented)风格绘制时,会给用户报大量的有效性(Validation)错误。”** 结果是,大部分的工具只提供 BPMN 到 BPEL 翻译(不是双向工程),甚至连这种受限方式也极少提供真正可执行的代码。

Antoine Lonjon 的白皮书( http://www.omg.org/w-new/bpmn.htm )给出了 BPMN 2.0 标准主要目标的纲要,其与 Bruce Silve 的 BPMN 愿望清单( http://www.brsilver.com/wordpress/2008/03/08/wish-list-revisit-revisited/ )类似。其中最重要的就是创建一种BPMN 交换格式(除了现有的XPDL 之外)。根据Sebastian Stein( http://www.arisblog.com/2008/04/24/where-is-bpmn-heading-to/ )的说法:

就像回到了 UML 1.x 时代,图形模型没有交换格式。然而,BPMN 甚至更糟。它连模型的内容交换格式(因此没有 UML 1.x 中类似的 XMI)都没有。BPMN 2 必须解决这个问题,引入一个涵盖模型内容和图形布局的交换格式。

问题的可能解决办法之一是使用业务过程定义元模型(BPDM)( http://www.omg.org/technology/documents/br_pm_spec_catalog.htm#BPDM )作为BPMN 符号的相容元模型。这不仅解决了交换格式的问题,而且还明确定义了BPMN 执行语义。尽管这是非常强大的解决方案,但是它引入了许多新概念。新规范要解决的其他问题包括:能指定多种启动过程的方法,支持非中断中继事件(non aborting intermediate event),半结构行为(semi structured behavior)等,这些都会潜在地使BPMN 更复杂。

尽管要到8/9 月间OMG 才会给出推出BPMN 2.0 的时间表,但是关于它可能方向的初始公告在网络上反响强烈。根据Sebastian Stein( http://www.arisblog.com/2008/04/24/where-is-bpmn-heading-to/ )的说法:

引入更多新鲜可能有悖于 BPMN 目前的优点——简单。这会增加 BPMN 建模的学习曲线,可能不利于进一步的采用。

Vishal Saxena( http://vishals.blogspot.com/2008/04/bpmn-20.html )重复了 Sebastian 的观点,他写道:

首先,让我来说说在 BPMN 1.0(1.1)中是什么了不起的东西使其成为过去几年内采用率最高的规范之一,姑且不论其他建模标准为了这一目标奋斗了更长的时间。第一和最重要的原因就是 BPMN 的简单性——或者说得确切点:它使简单的事情保持简单。举例来说,如果我想对取现金过程建模,我能在极短时间内通过少量和不那么陡峭的学习曲线做到。许多人发现这就像他们在画板上用别的什么画流程图一样简单,比方说 Visio。

在考虑所有这些新特性时,关于 BPMN 的角色的问题也需要被提出。一方面,有些厂商(如 Intalio)已经引入了可执行 BPMN(完全使用 BPMN 设计过程,然后在幕后产生 BPEL 作为可执行部件)( http://www.infoq.com/news/2007/10/intalio-bpms-5 );另一方面 Jean-Jacques Dubray( http://www.infoq.com/cn/articles/seven-fallacies-of-bpm )认为,假定“业务分析人员能从过程模型中创建可执行解决方案”是业务过程管理的谬误之一。除了一些最简单的过程,如订单批准,实际的 BPM 实现一般都需要涉及 IT,因此无需(绝大多数情形是不能)直接运行 BPMN。这种情况下,更重要的问题是,过程实现时所作的变动如何与初始 BPMN 模型同步。

那么,BPMN 未来的角色究竟是什么?许多实践者仍在讨论这个问题。但是,看起来它必须在 BPMN 标准新版本发布前得到回答。

查看英文原文 What can we expect from BPMN 2.0?

2008 年 5 月 05 日 09:181262
用户头像

发布了 255 篇内容, 共 47.6 次阅读, 收获喜欢 4 次。

关注

评论

发布
暂无评论
发现更多内容

第 9 周 作业

Pyr0man1ac

架构第九周总结

Geek_Gu

极客大学架构师训练营

第 05 周学习总结 [架构师训练营第 2 期]

Airship

极客大学架构师训练营

week5-(2选1)

未来已来

第五周作业

jizhi7

架构师训练营 - week09 - 作业

lucian

极客大学架构师训练营

第 9 周 997日记

Pyr0man1ac

架构师训练营 - 第九周

袭望

Week 9 作业02

Croesus

【架构师训练营 1 期】第九周学习总结

诺乐

架构师训练营第一期-第九周学习总结

卖猪肉的大叔

架构师训练营第 2 期 第五周作业

月下独酌

极客大学架构师训练营

第九周作业

熊桂平

极客大学架构师训练营

【架构师训练营 1 期】第九周作业

诺乐

脚手架 | 从零搭建满足权限校验等需求的前端命令行工具

梁龙先森

node.js 前端 前端工程化 前端进阶

第 8 周 996日记

Pyr0man1ac

架构师训练营 - week09 - 学习总结

lucian

极客大学架构师训练营

JPA-技术专题-JPA&Hibernate注解

李浩宇/Alex

第9周作业

paul

第五周作业总结

hunk

极客大学架构师训练营

Architecture Phase1 Week9:Summarize

phylony-lu

极客大学架构师训练营

架构师训练营第九周命题作业

一马行千里

学习 极客大学架构师训练营

第五周总结

jizhi7

极客大学架构师训练营

第九周总结

熊桂平

Architecture Phase1 Week9:HomeWork

phylony-lu

极客大学架构师训练营

第九周作业(作业二)

Geek_83908e

架构师一期

架构师训练营第九周学习笔记

一马行千里

学习 极客大学架构师训练营

第九周作业

文智

极客大学架构师训练营

架构师训练营第五周学习总结

邢永春

架构师训练营第五周作业

邢永春

架构师训练营第二期 第5周总结

月下独酌

极客大学架构师训练营

我们能从BPMN 2.0期望什么?-InfoQ