浅析XPDL与BPEL现状

 
   | |

导读:本文介绍了XPDL与BPEL的区别关系并给出了现在市场上的相关产品的分析情况。

关键词:XPDL BPEL 工作流 业务流程管理

 
正在加载数据...

  实践派的XPDL 

  XPDL(XML Process Definition Language)的缩写,是由Workflow Management Coalition(WFMC)所提出的一个工作流描述规格,使用XML文件让不同的工作流程软件间交换商业流程定义。XPDL是一个通用的框架,据WFMC认证列表统计目前全球约有80个厂商支持该标准,包括我们熟悉的IBM、BEA(Oracle)、Tibco相关流程产品,目前XPDL的最新版本是2.1(2008年4月23日approve version)。

    WFMC为实现不同工作流产品间互交换,给定了5类接口规范(Interface),其中我们讨论的XPDL是其Interface1。XPDL给定了流程定义间进行相互转换的XML Schema元模型,这个XML Schema可理解为与运行控制无关的描述结构,为设计流程和运行流程提供了形式上的可分离,这样无论开发者使用Java、.Net还是轻量级的PHP、Python语言,采用有限状态机还是Petri网,只要外部接口符合XPDL规范,那么就可以保持相同的表示形式和互操作,这就为厂商间标准合规性验证提供了一个通用的描述框架,更重要的是XPDL对不支持的厂商个性场景提供了扩展,这个扩展框架约束能够保证流程对外表现形式的一致性。正是这个定位使得XPDL在与十几年中出现的众多潜在新兴竞争标准之争中仍然保持旺盛的生命力,并催生了不同竞争活力的工作流产品。对于实现XPDL规范的工作流产品,目前一个通常的方式是采用BPMN进行建模,以XPDL为持久格式,由厂商实现的流程引擎执行该描述。 

  XPDL的主要元模型包括了过程活动、转移连接弧(可理解为规则)、参与者(过程活动所需的资源,在XPDL中参与者模型被抽象为一个分配对象,可能是现实世界的人也可以是一个系统或服务)、程序声明(过程活动调用的IT应用程序或接口服务,例如一个人工任务的交互表单、Web服务)和工作流相关数据(运行期间持久化的流程实例控制数据)。
WFMC工作流联盟是一个活跃了十五年的民间组织,官方宣称有超过300个成员,在欧洲、美洲及亚太设有指导委员会,每隔三年举办一次大规模的工作组会议,XPDL除了得到大部分国际工作流厂商和Opensource支持外,在中国也有不少工作流厂商支持该标准。
 
  “老”贵的BPEL 

  BPEL(Business Process Execution Language)的缩写,直意为业务过程执行语言,是一种基于XML的,用来描写业务过程的编程语言,被描写的业务过程的每个单一步骤则由Web服务来实现,这个描述本身也由Web服务提供,即BPEL模型本身也被当做Web服务来使用。BPEL在过去很长一段时间被视为未来工作流标准的“新贵”,经过八年的发展,目前BPEL规范已在Oracle、IBM等厂商SOA产品中提供支持,可以说是新贵变”老”贵了。
 
  BPEL基于Web Service的WSDL建立,相关标准还包括XML Schema、XPath、WS-Addressing等SOA标准。最初的BPEL标准被定位于大规模分布式商业应用下的服务编程语言,不支持人机对话的人工流程,BPEL所描写的过程仅与Web服务通信,而这些Web服务却可以提供与用户的信息交换,但它们不是用户本身。BPEL从2002年提出后也是在不断更新,在随后加入了一些重要扩展规范,例如BPELJ(允许BPEL XML中加入Java程序段,需要澄清的是BPEL不仅能够执行Web服务,还可以通过厂商扩展调配JCA、JMS等)、BPEL4People和WS-HumanTask(虽然在分布式商业应用中广泛采用了Web服务,但是缺乏人员交互是应用于真实世界业务过程的一大差距,这个扩展使BPEL能够兼顾基于角色的人工活动编排过程)。可以说BPEL在构建符合标准的SOA架构中占据重要位置,是编排Service的杀手锏,但目前市面提供的BPEL产品在解决企业非流程集成场景方面仍有明显不足,我认为BPEL如果不出意外,肯定会成为工业界中业务集成方面的标准语言,如果成为完整的工作流工业标准目前还差一些。 

    BPEL是一种基于块(Block)的结构化编程语言,可以在符合BPEL标准的引擎上执行,作为一门简单的编程语言,包括了基本的顺序(Sequence)、选择(Switch)和循环(While)程序语言控制结构,与XPDL工作流实例不同,BPEL通过因为 receive和 pick活动提供进入流程的入口点,利用一个特定于消息的 XPath 表达式匹配从 WSDL相关消息集合(Correlation Set)的实例中定位实例操作。在BPEL中,一个流程可以调用其他服务,也可以响应来自客户端的请求(receive和 pick)。也就是说BPEL流程实例既可以作为服务的请求者,也可以扮演服务的提供者。
 
  XPDL与BPEL的区别关系 

  XPDL与BPEL是完全不同且互补的标准,BPEL是一个“执行语言”,旨在提供一个Web服务编排定义,BPEL的定义关注一个进程以Web服务和XML数据集成为主的可执行。而XPDL则是一个与开发者相关实现无关的流程过程描述规范和交换接口,在工作流结构完整性方面XPDL较为成熟,但XPDL未在基于SOA架构下的服务编排方面给定更多标准化的交换格式,大部分BPM厂商均以XPDL扩展语法提供私有的扩展,而此部分正是BPEL所努力的,虽然BPEL已经向其不擅长的人工流程和非Web Service服务编排领域拓展规范,但仍然需要在非集成领域的流程规范方面向XPDL老大哥学习,比如在面向BPM业务分析师视角,目前BPEL2.0尚缺失对过程模拟规范的制定。 

XPDL与BPEL的区别关系


    不分伯仲,各领风骚

  下表数据来自个人对2010年初各BPM厂商提供的软件版本中对XPDL/BPEL导入导出的试用评估,请以BPM厂商说明为准,这里仅供参考。可以看出,无论是“老”贵的BPEL还是老资历的XPDL,在市面上很长一段时间将仍然并行在各个工作流产品中,面对这两个存在一定竞争关系的流程标准,BPMN至少已成赢家,XPDL和BPEL标准之争似乎在学术界已有落音,但是在2010年面对市场的商业化产品进程上,两者将继续不分伯仲,各领风骚。

厂商比较


BPEL实例教程
 BPEL 实例教程(一)
 BPEL 实例教程(二)
 BPEL 实例教程(三)
 BPEL 实例教程(四)
 BPEL 实例教程(五)
 浅析XPDL与BPEL现状

 
作者:王楠    
 
 
 
 
 

BPM

 
伴随着最近一系列的收购和发布,业务流程管理(BPM)产业迅猛发展。本周,Pegasystems宣布将以1615万美元收购Chordiant,增加客户关系管理(CRM)到其工具集中……
 
IT预算可能会达到一个新低点,导致更少的人员投入,推迟业务项目。但是,这个间歇对于CIO们来说,是引进敏捷IT最佳实践的黄金时间。敏捷IT的设计……
 
过度依赖IT基础设施来提供一个解决方案可能会引起新的问题。但这不意味着应该把IT的超常能力搁置起来。
 
业务规则引擎(BRE,business rules engine)是一种软件组件,它允许非程序员添加或更改业务流程管理(BPM)系统中的业务逻辑。
 
总览企业视图使企业架构师看到了企业内部的组织之间的相互关系,并能用战略和目标来帮助调整架构。但是很少有企业架构师设计整个企业的架构……

热门技术手册排行

 

随着开源技术越来越成熟,一个稍有开发经验的人通过学习就可以用开源的产品和技术构建一套可用的系统。对于从事软件开发的人员,尤其是对Java或动态语言相关领域的人来说,“开源”也许是他们最喜爱的单词。但是,很多时候我们需要的不仅仅是一个可用的系统,而是希望这个系统开发更简易、性能更高和扩展性更好等。这确实是一个令人头痛的问题。本指南很多地方都是点到为止,要深入了解相关信息的读者请借助参考资料、网站等自行挖掘。

 

本专题分六部分探讨SOA设计模式,当初设计面向服务架构的一大初衷就是降低服务间耦合度,由此提高服务的灵活性和自由度。

 

业务流程管理(business process management,bpm)不是一个新概念,甚至不是一个新名词。它是从相关的业务流程变革领域,如业务流程改进(bpi)、业务流程重组(bpr)、业务流程革新中发展起来的。流程管理技术也是从早期的工作流管理、eai、流程自动化、流程集成、流程建模、流程优化等技术中发展起来的。

 

TOAGF是一个架构框架,简而言之,TOGAF是一种协助发展,验收,运行,使用,和维护架构的工具。它是基于一个迭代(Iterative)的过程模型,支持最佳实践和一套可重用的现有架构资产。

 

云计算的概念越来越流行,Amazon、Google和IBM是第一批将云计算引入公众视线的公司。云计算就是新的Web2.0,一种既有技术上的市场绽放。

 

Mashup是一个非常cool的新的应用程序种类。如果你想真正的了解它们,我们需要回过头来看看你现在的计算机,其实它就是一个非常好的帮助你理解mashup的模型。现在开源的操作系统无疑是非常好的apis的集合或应用程序编程接口,帮助开发者去构建其应用程序。计算机本身也是一个很好的为用户提供接口的例子,键盘和鼠标可以被理解为你通过计算机的接口而使用的不同的应用程序。本技术手册为读者提供了一些相关信息,如果需要深入了解mashup,读者可以借助其他参考资源。

查看更多
 
 

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
电子邮件地址:
请输入您的电子邮件地址
密码:
下次自动登录