调研 工作流比较表格

上传人:鲁** 文档编号:490126835 上传时间:2023-04-19 格式:DOCX 页数:27 大小:542.78KB
返回 下载 相关 举报
调研 工作流比较表格_第1页
第1页 / 共27页
调研 工作流比较表格_第2页
第2页 / 共27页
调研 工作流比较表格_第3页
第3页 / 共27页
调研 工作流比较表格_第4页
第4页 / 共27页
调研 工作流比较表格_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《调研 工作流比较表格》由会员分享,可在线阅读,更多相关《调研 工作流比较表格(27页珍藏版)》请在金锄头文库上搜索。

1、工作流系统关键技术比较2012/12/20目录工作流系统关键技术比较 12012/12/20 1目录 2一、消息驱动和事件驱动工作流的区别与应用 4二、典型工作流过程定义语言规范的特点与应用 5过程定义语言 BPEL/BPMN2/XPDL/BPML/JDPL 5语言功能的比较 5语言结构的比较 6语言具体细节的比较 7其他比较 8三、典型工作流引擎的功能、结构比较 121. jBPM3 122. 向BPMS努力的jBPM4 133. jBPM5 154. Activiti5 165. 微软工作流196. 小结23四、基于 Web 服务的工作流管理系统 234.1概述234.2基于Web服务的工

2、作滚模型 234.2.1 符合 Web 服务的工作模型 244.2.2 基于 Web 服务的工作流管理系统 254.3 Web服务在工作流中的应用 274.3.1 Web 服务作为工作流的任务 27432作流作为Web服务的实现机制一、消息驱动和事件驱动工作流的区别与应用基于“消息驱动”和“事件驱动”的工作流都可应用于一个可行的分布工 作流系统。信息传递的分布工作流系统强调了每个节点的功能独立性,使得一个节点 的失败只影响到与该结点有关的相应工作流实例或者某一个工作流步骤,从而将 影响范围缩小到最小范围,使得系统构造方面有了更好的升级性和适用性,但是 它没有提供事件的历史记录,所以该机制现在正

3、在研究如何使用日志文件来管理 工作流,并尝试用非连续性的消息驱动来提高性能。信息传递的分布工作流系统 目前主要应用于金融支付系统、电子商务系统(如淘宝等)。事件驱动的机制主要是开发了 Brokers/Services 模型和 EVE 平台,从而将 分布式工作流的实行分为 3 步:首先由高层的图形界面提供工作流建模工具,然 后由中层的Brokers/Services模型执行工作流,最后由底层的EVE平台提供分布 式工作流的实行框架,主要负责事件管理、历史记录和工作流执行者之间的交流。 B/S 模型提供了一个较完善的语言定义机制,保证建模人可以了解工作流执行者 的实际行为,组成工作流说明的工作流执

4、行过程可以被正确定义,工作流执行过 程的准确性得到保证,工作流执行完毕后的分析也成为可能。但是,对于活动的 工作流或者正在运行的组成部件进行修改所带来的影响还没有得到很好的解决, 这将是以后的研究方向。事件驱动的分布工作流系统主要应用于医疗保险信息系 统、集装箱物流信息系统发送流程消息消息驱动模式用户登陆系统后,向服务器端提交Http Request请求,接受消息线程后初 始化该用户的上下文环境,读消息线程到接受队列中检索属于该用户的消息,并 反馈给用户,用户查看消息后可以进行消息处理(这里的消息其实就是用户的任 务列表的描述)。当用户处理消息时,依据业务规则对消息进行处理,此时消息 接受队列

5、将用户发送的消息,自动转发到消息管理池中去,等待消息轮询查找和 调用。二、典型工作流过程定义语言规范的特点与应用过程定义语言BPEL/BPMN2/XPDL/BPML/JDPLBPML和XPDL及BPEL4WS都是基于XML的过程定义语言,它们提供了一个正 式模型来表达企业商务过程中的可执行过程。XPDL 是工作流管理联盟( The Workflow Management Coalition, WfMC) 基 于XML 定义的XML 过程定义语言(XML Process Definition Language);XPDL构成了WfMC工作流标准的Interface;商业过程建模语言(Busine

6、ss Processes Modeling Language, BPML)是BPMI 组织( The Business Process Management Initiative) 提出的一种新的过程定 义语言, 用来全方位的描述企业商业过程中抽象的可执行过程 , 其中包括基于 Web Services 的某些特殊的领域。Microsoft的XLANG和IBM的WSFL同样也是过程定义语言中的分支。2002 年8 月, Microsoft/IBM 发布了一个新的规范 : BPEL4WS, 它结合了 XLANG 和 WSFL。XLANG 和 WSFL 共同构成了 BPEL4WS( The Bus

7、iness Process Execution Language for Web Services)语言功能的比较XPDL、BPML都基于XML分别提出了一个用于表达企业商务(电子商务)过 程的抽象模型, 这是一个工作流过程定义的元数据( metadata) 模型。在这个正 式的模型中定义了各种复杂的活动、事务及事务补偿、数据管理、异常处理及操 作等语义。基于元数据模型, 特定供应商的工具能够借助通用交换格式交换不同 的异质系统中产生的工作流定义。由此提供了通用的方法描述和访问工作流定义, 并可以轻松实现不同的异质系统之间工作流定义互换的操作。BPEL4WS提供了一种XML注释和语义,用于指定

8、基于Web Services的业务 流程行为。使用合作伙伴的交互方式, 定义业务流程。合作伙伴可以将服务提供 给流程,也可以向流程请求服务,或者参与到流程的双向交互中o BPEL4WS对每 个服务分配了合作伙伴的责任,同时指定了一组Web服务操作的可能执行顺序、 这些Web服务间共享的数据、业务流程涉及哪些伙伴以及这些伙伴在业务流程中 扮演什么角色、一组Web服务的共同异常处理以及关于多个服务和组织是怎样参 与的等问题。从语言的功能来看,BPML和BPEL4WS重点致力于Web Services的定义, 反映在以下3 个方面:(1) 活动类型明确划分为消息交换、事件处理、补偿校正、延迟指定等类

9、型。(2) 活动的属性支持实例的相关性、消息部分的抽取、服务实例的定位。(3) 支持事务, 异常处理和补偿校正。XPDL 则重点致力于分布式工作流的相关领域。这主要体现在以下两个方面:(1) 活动属性中明确规定了一项活动执行所需的资源。这是一个表达式, 在系 统运行时计算, 用以决定所需的资源。(2) 活动属性中明确规定了完成一项活动所需的应用程序。这表明XPDL在语言层面上支持工作流程推进过程中的人工参与,强调系统 运行期间的人机交互活动。语言结构的比较BPML 被设计为一种块结构( block-structured) 语言。递归的块状结构在 作用域( scoping ) 概念中起关键作用。

10、流程控制( 路由) 完全用块结构概念进 行处理( 例如: 顺序执行块中的所有活动) 。XPDL 被设计成一种有向图结构( graph-structured) , 再添加了一些其它 的概念来处理块。作用域(scoping)体现在包(package)和过程(process)的 层次上。过程(process)定义不能嵌套。“路由”由活动(ac ti vi ti es)之间 的迁移来处理。一个过程中的活动可视为一个有向图中的节点, 而迁移作为有向 图中的有向边。迁移条件在系统运行时决定下一步该执行的活动。BPEL4WS 也是一种块结构的语言。允许定义递归的块, 但是限制在顶层进行 定义和声明。在一个块

11、内, 有限支持有向图流程的概念。具体地说, BPEL 只有 非循环图,因此没有循环(loop)。BPML 在定义和声明中广泛使用块结构。复杂活动引用上下文关联的活动集。 在上下文中可以声明或重声明属性, 定义或重定义过程( 嵌套过程) 。这些属性 和过程被它们所在区域的上下文限制了作用域。具体包括: 错误处理, 事务处理, 用于消息处理的连接器。由于活动集中可以有复杂的活动, 这样嵌套循环得以实 现。XPDL 只允许在顶层定义过程, 因此没有嵌套的过程。由于工作流相关数据 同样在顶层定义, 或在一个过程中定义, 因此它被限制在这两层范围内。BPEL4WS 不支持嵌套过 程的定 义。 工作 流相

12、关数据的 等价物: 容器 ( container) 是全局数据。XPDL中的块活动(block activity )如同BPML中的复杂活动。它有属性 可以指派复杂活动类型, 以及定义一个活动集上下文的信息。上下文中的 data field声明,可以起到BPML中作用域的效果。为了实现嵌套过程,过程定义也需 要被包含进来。BPML中有关复杂活动的很多特性在XPDL中都可用块活动替代。 块活动通过引用活动集( 这种活动集没有向活动集外的迁移活动 ) 的名称来执 行活动集。BPML定义的所有活动如果要转换为XPDL的活动,可简单地在XPDL 活动集中引入一个起始活动和一个结束活动, 这里起始活动是

13、一个与分支( and spli t),结束活动是一个与连接(and join)。从起始活动到块内的其它活动, 和从该块中的其它活动到结束活动之间有时可能需要一个迁移条件。因此, 虽然 XPDL不似BPML有嵌套过程,但它包含的块活动和活动集可以灵活地扩展实现 现BPML的复杂活动。语言具体细节的比较比较语项目言BPMLXPDLBPEL4WS包packagepackage无对应的 数据结构嵌套 过程Nested process 在一个上下文中定义 如:一个顶层过 程)。需要包含一个块活动 来实现无对应的数据结构过程ProcessWorkflow ProcessProcess外部引用ImportI

14、mport _活动集Act ivi tySet 个上下文和一个 活动集关联。在一个上下文的 实例中,属性共享。作用域被阐 明1-jA LC J. llcX-L1 cUiVClgDActivityset这是除过程外,关于活动 组的唯一数据结构作用域(s cope)用来连接补偿处理和故障 处理。复杂活动明Complexactivit y复杂活动 由一个或多个活动集 组成blockactivity块活动活动集通过名称对其进行 弓L用structuredactivities 构造活动活动BPML具有大量不同类型的原子 活动和复杂活动(共有17 种活动类型)XPDL用活动的属性来表示 不同种类的活动3

15、种语言的高层数据结构对照比较、5 项目它1BPMLBPEL4WSXPDL动作Act ion 实现了 WSDL的消息模 式:单向请求 应答公告receive, reply, invoke(接收, 回复, 调用)它们用来处 理WSDL的消息模 式需要扩展附加的属性( 和应用程序/工具、库 功能相关 性Correlation 用来匹配消息给 正确的过程实例。Correlation工作流相关数据是实 例的具体描述。相关 性属性用以标示关联 属性服务定位 器locator用来发现适合的 服务。参考WSCI 规范Servicelink,par t ners,servicere ference服务连接 ,合作者,服务引 中属4土。不支持调用1call一个行动可以完成任意 一个活动集的唯一条件 是:行动语义上要求这些活 动按顺序执行,特别是 当执行WSDL的请求-响 应操作用不支持不支持消息输出out pu t用来从状态特 征值构造息。propertyalias, assign, query, contain er 特征值别名, 赋值,査询,不支持容器

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号