XPDL之流程定义元模型

 

XPDL元模型定义了流程定义里所包含的实体、它们的关系以及属性,其中属性不仅仅为了执行需要,很多属性是为了统计与监控的需要。

2.8.1 包(Package

流程模型包含许多作用域大于流程定义的实体,例如参与者声明、应用程序声明和相关数据元素,它们可能被多个流程定义所引用。为了避免每个流程定义都重复定义这些实体,XPDL引入包的概念,包作为流程定义的容器,对流程定义按照关联性进行分组。在包上定义的实体被其包含的流程定义继承,同时,包能够为所属流程定义声明一系列的通用属性,例如作者、版本号、状态等。

XPDL里的包等价于BPMN里的业务流程图(Business Process Diagram)。

2.8.2 泳道(Swimlanes

            泳道被用来对流程定义和活动进行布局。我们使用泳道在流程级别上定义参与者信息(部门、公司),在活动级别上定义执行者信息(角色、人员)。我们使用一系列非重叠的长方形来描述泳道,这些长方形称为池(Pool),同时,池又被细分为一系列的子泳道(Lane)。如下图2-6所示:

2-6泳道

2.8.3 流程定义(Process Definition)

流程定义是对流程的建模和描述,为流程中的其他实体提供上下文信息。其属性包括创建时间、作者、初始化参数、执行优先级、时间约束、仿真信息等。

2.8.4活动(Activity

一个流程包含一个或多个活动,活动对应着流程里的一个工作单元。一个典型的活动能被人力资源或计算机所执行。

XPDL的活动粒度比较粗,分为四类,分别对应BPMN里的任务、子流程、网关和事件。如下图2-7所示:

2-7XPDL活动与BPMN的映射

 

2.8.5转移线(Transition)

活动之间通过转移线连接。转移线包括3个属性:源活动、目标活动和条件。转移线可以是有条件的(设置表达式),也可以是无条件的。

XPDL的转移线对应于BPMN里的顺序流,如下图2-8所示:

2-8XPDL转移线对应BPMN里的顺序流

2.8.6 参与者声明(Participant Declaration

            描述执行流程和活动的资源。资源可以是单个人、也可以是角色、部门、还可以是自动执行的机器资源(例如打印机)。

2.8.7应用程序声明(Application Declaration

活动可以调用的IT系统、接口、Web服务。BPMN使用内置的服务任务(Service Task)直接代表对应用程序的调用。

2.8.8 人工产出物(Artifact)

为流程附加额外的建模信息,这些信息不属于基本的流程实体(活动、转移线、消息流),它们通过关联与流程实体联系在一起。在BPMN里,人工交付物包括3种类型(具体信息参见10.3 BPMN2.0元素介绍),如下图2-9所示:

2-9人工产出物

2.8.9 消息流(Message Flow

消息流用来展示两个参与者/流程之间的消息流向。在BPMN中,用泳道中的池代表两个参与者/流程。消息流不能连接同一个池中的活动。


2-10消息流

2.8.10 关联(Association)

我们使用关联将信息、人工产出物与流程实体连接起来,为流程模型提供更多的信息,它不影响流程的执行。如下图2-11所示:

2-11关联

2.8.11 相关数据元素(Relevant data field

            为流程定义执行过程中创建或使用到的数据,这些数据被活动、应用程序和流程中定义的各种表达式(转移线条件计算、网关条件计算)所使用。

2.8.12 数据类型与表达式(Data Types and Expressions

            定义相关数据元素、系统与环境数据、参与者数据的数据类型,这包括了一些标准类型,例如Stringintdate等等,也包括了自定义的扩展。表达式被用于各种条件计算(转移线、网关)以及给数据元素赋值。

2.8.13 系统与环境数据 System and Environmental Data

由工作流系统和外部环境所维护的数据,这些数据被流程在执行过程中使用。

2.8.14 资源仓库(Resource Repository

执行活动的资源可以是人、也可以是角色、部门、程序、还可以是自动执行的机器资源,所以我们使用资源仓库将流程所涉及到的资源管理起来。资源仓库包括了对组织机构建模的支持。

2.8.15 厂商/用户自定义扩展(Vendor or User specific Extensions

            工作流系统厂商/用户可以针对自己的业务需求对流程元素和属性进行扩展。

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值