XPDL与WS-BPEL的比较之二:二者内容的大致概述

从严格意义上讲,BPEL与XPDL不是一个层次的规范。如BPEL的主要是用来支持基于Web service的自动化业务流程,没有任何有关人工活动的内容。 WfMC制定的XPDL标准表现为一种流程定义的格式,它是一个围绕BPM建模、仿真、运行和管理整个生命周期所建立的模型。它可以表述流程定义的绘制。 XPDL的节点元素具有X/Y坐标和大小,XPDL具有连接弧的概念,可对连接弧的转移给予具体的条件设置。节点和连线指定了执行方面的具体信息,比如角 色、活动描述、实现、Web Service调用等。XPDL2.0包含对使用BPMN进行描述的扩展。XPDL可保证流程定义在两个设计工具之间进行交换,并保证流程执行语义的一致性。 WS-BPEL是一种“执行语言”。WS-BPEL的目标是提供Web Service编排的定义,如顺次交互,从一个点到另一个点的数据流。它具有语法结构,包含变量和操作。操作可以发送和接受SOAP消息,对XML和 XML转换有强大的支持。可以方便的同时调用多个Web Service,并同步结果。它不具有任何支持图形表示的元素,例如活动没有大小和位置,也没有可以表述“指向”的元素。以下是BPEL的主要内容:

  1. 编排Web Service的各种交互,如invoke、receive、reply等。
  2. 顺序、分支和各种流程控制方式。
  3. 异常处理,包括错误条件,事务和补偿。
  4. 数据流和数据操作。
  5. 超时处理。

XPDL相比WS-BPEL缺乏的部分 由于二者面向目标的差异,XPDL相比WS-BPEL缺乏的部分主要有: 1.WS-BPEL使用sequence、if/else、repeatUntil、pick、links、forEach等结构化xml元素 (Structured Activities)表述对Web Service的调用顺序关系,类似于一种使用XML对Web Service进行编程的语言。而XPDL没有这些元素,XPDL使用连接弧的转移表达节点的先后执行顺序。XPDL的节点类型主要为为自动节点、人工节点、嵌套子流程、块活动、路由活动等。 2.WS-BPEL使用assign、query、from/to等xml元素执行流程属性数据的赋值运算等;XPDL没有这些元素。 WS-BPEL相比XPDL缺乏的部分 同样,由于二者面向目标的差异,WS-BPEL相比XPDL缺乏的部分主要有: 1.WS-BPEL本身没有任务分配方式的概念。 2.WS-BPEL缺乏子流程SubFlow的语义,IBM有一份在bpel4ws之上扩展SubFlow的规范。 3.WS-BPEL没有“应用程序application”定义的概念,对于WS-BPEL的invoke、receive、reply等类型节点与外部 的调用均是对Webservice的调用。而XPDL通过“应用程序application”定义各种各样的应用程序,表示人工参与到流程中需要执行的各 种程序。这些应用程序可以是Java方法、C/S客户端、电子表单、自动的Web Service调用等各种内容。 4.XPDL定义了流程仿真、流程版本等元素,WS-BPEL没有这些概念。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
BPMN、XPDLBPEL是三种流程建模语言,用于描述业务流程和工作流程。这些语言都有各自的特点和用途。 BPMN(Business Process Model and Notation,业务流程建模和标记)是一个广泛使用的标准,用于描述业务流程的各个方面,包括活动、事件、网关、连线等。它提供了一种直观和易于理解的图标,可以帮助业务分析师和技术人员共同理解和设计业务流程。BPMN具有可扩展性,支持不同层次的详细程度,从高层次的概念模型到详细的流程实现。 XPDLXML Process Definition Language,XML流程定义语言)是一种基于XML的流程建模语言,用于定义和交换工作流程模型。它提供了一种通用的格式,使不同的流程管理系统能够共享和交换流程定义。XPDL支持多种类型的节点和连接,允许细粒度的流程定义和控制。它还包含了与其他标准的集成,如BPMN和WfMCBPEL(Business Process Execution Language,业务流程执行语言)是一种用于描述和执行业务流程的编程语言。它在BPMN和XPDL的基础上更加强调执行层面,提供了一种可编程的方式来定义和组织业务流程的执行。BPEL支持各种类型的活动、事件、条件和异常处理,并提供了与Web服务的集成能力。它可以作为中间件或引擎,驱动实际的业务流程执行和协调。 总的来说,BPMN、XPDLBPEL是为了不同的目的而设计的流程建模语言。BPMN用于描述和设计业务流程的概念模型,XPDL用于定义和交换工作流程模型,而BPEL用于编程和执行业务流程。这些语言在业务流程管理和工作流引擎中有着广泛的应用,可以帮助组织更好地理解、设计和执行其业务流程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值