7.2 BPMN Scope

https://www.omg.org/spec/BPMN/2.0.2/PDF

7.2 BPMN Scope | BPMN 范围

中英文名词对照

英文 中文
Process 流程
Event 事件
Choreography 编排
Activity 活动
Gateway 网关
Artifacts 工件
Expression 表达式
end-to-end 端到端
Orchestration/Choreographies 编排
Pool 池子
Swimlane 泳道
Collaboration 协作
Diagram 图表
Sequence Flow 序列流
Token 令牌

该规范为 业务流程 提供了一种表示法和模型,以及一种可用于在不同工具之间交换 BPMN流程 定义(包括 域模型图表布局 )的交换格式。该规范的目标是支持 流程 定义的可移植性,这样用户就可以获得在一个供应商的环境中创建的 流程 定义,并在另一个供应商的环境中使用它们。

BPMN 2.0 规范在以下几个方面扩展了 BPMN 1.2 的范围和功能:

  • 形式化所有 BPMN 元素的执行语义
  • 流程 模型扩展和图形扩展定义可扩展性机制
  • 优化 事件 组成和相关性
  • 扩展了与人互动的定义
  • 定义 编排 模式

该规范还解决了已知的 BPMN 1.2 不一致性和歧义性。

BPMN 被限制为只支持适用于 业务流程 的建模概念。这意味着组织为业务目的进行的其他类型的建模超出了 BPMN 的范围。因此,以下方面不在本规范的范围之内:

  • 组织模型和资源的定义
  • 功能故障建模
  • 数据和信息模型
  • 战略建模
  • 业务规则模型

由于这些类型的高级建模直接或间接地影响 业务流程,所以 BPMN 和其他高级业务建模之间的关系可以更正式地定义为 BPMN 和其他高级规范。

虽然 BPMN 显示了数据流(消息),以及数据工件与 活动 的关联,但它不是一种数据流语言。此外,业务流程 的操作模拟、监视和部署也不在本规范的范围之内。

BPMN 2.0 可以映射到一种以上平台相关的流程建模语言,例如WS-BPEL 2.0。本文档包含一个 BPMN 子集到WS-BPEL 2.0的映射。到其他新兴标准的映射被认为是独立的工作。

该规范利用其他标准来定义数据类型、表达式和服务操作。这些标准分别是XML Schema、XPath和WSDL。

7.1.1 Uses of BPMN | 使用 BPMN

业务流程 建模用于向各种各样的受众传递各种各样的信息。BPMN 旨在涵盖多种类型的建模,并允许创建端到端 业务流程BPMN 的结构元素允许查看者能够轻松地区分 BPMN 图的各个部分。

在端到端 BPMN 模型中有三种基本的子模型类型:

  1. 流程 (编排/Orchestration),包括:
  • 私有不可执行(内部) 业务流程
  • 私有可执行(内部) 业务流程
  • 公共 流程
  1. 编排/Choreographies
  2. 协作,它可以包括 流程 和/或 编排/Choreographies
  • 对话 的视图

Private (Internal) Business Processes | 私有(内部)业务流程

私有 业务流程 是特定组织内部的业务流程。这些 流程 通常被称为工作流或BPM 流程 (参见图10.4)。Web 服务领域中通常使用的另一个同义词是服务 编排/Orchestration。有两种类型的 私有 路程: 可执行流程不可执行流程可执行 流程 是一个根据第14章定义的语义被建模以执行的 流程。当然,在 流程 的开发周期中,会有 流程 没有足够的细节来“执行”的阶段。一个不可执行的流程是一个 私有流程,它被建模的目的是在一个由模型定义的详细级别上记录 流程 行为。因此,执行所需的信息,如形式条件表达式,通常不包含在 不可执行流程 中。

如果使用泳道式符号(例如,协作,见下文),那么 私有 业务流程 将包含在单个 池子 中。因此,流程 流包含在 池子 中,不能跨越 池子 的边界。消息流可以跨越Pool边界,以显示存在于独立 私有 业务流程 之间的交互。

图7.1 -私有业务流程示例
图7.1 -私有业务流程示例

Public Processes | 共有流程

公共 流程 表示 私有 业务流程 与另一个 流程参与者 之间的交互(参见图7.2)。只有那些用于与其他 参与者 通信的 活动 包含在 公共 流程 中。私有 业务流程 的所有其他“内部” 活动 不在 公共 流程 中显示。因此,公共 流程 向外部世界显示与该 流程 交互所需的 消息流 和这些 消息流 的顺序。公共 流程 可以单独建模,也可以在 协作 中建模,以显示 公共 流程活动 和其他 参与者 之间的 消息 流。注意,公共 类型的 流程BPMN 1.2 中被命名为“抽象”。

7.2 BPMN Scope_第1张图片
图7.2 -公共进程示例

Collaborations | 协作

协作 描述了两个或多个业务实体之间的交互。一个 协作 通常包含两个或多个 池子,代表 协作 中的 参与者参与者 之间的 消息 交换由连接两个 池子(或 池子 中的对象)的 消息流 显示。还可以显示与 消息流 关联的 消息协作 可以显示为两个或多个相互通信的 公共 流程 (参见图7.3)。对于 公共 流程协作 参与者的 活动 可以被认为是参与者之间的“接触点”。相应的内部(可执行) 流程 可能比 公共 流程 显示的 活动 和细节要多得多。或者一个 池子 可能是空的,一个“黑盒”。编排/Choreographies 可以在 池子 之间显示,因为它们在 池子 之间平分 消息流协作 中允许 池子流程编排/Choreography 的所有组合。

7.2 BPMN Scope_第2张图片
图7.3 -协作过程的一个例子

Choreographies | 编排

自包含的 编排/Choreography (没有 池子编排/Orchestration)是预期行为的定义,基本上是交互 参与者 之间的过程契约。正常的进 流程 在于 池子 中,而 编排/Choreography 存在于 池子 (或 参与者)之间。

编排/Choreography 看起来类似于私有 业务流程,因为它由 活动事件网关 组成的网络(请参见图7.4)。然而,编排/Choreography 的不同之处在于,活动 是表示一组(1或多个) 消息 交换的交互,它涉及两个或多个 参与者。此外,与正常的 流程 不同,没有 流程 的中央控制器、负责实体或观察者。

7.2 BPMN Scope_第3张图片
图7.4 -编排的一个示例

Conversations | 对话

对话 图是 协作 图的特殊用法和非正式描述。然而,对话池 通常不包含 流程编排/Choreography 通常不会放在 对话 图的 池子 之间。会话消息 交换的逻辑关系。逻辑关系,在实践中,经常涉及一个(多个)业务对象,例如,“订单”,“装运和交付”,或“发票”。

消息 交换彼此相关,并反映不同的业务场景。例如,在物流中,库存补充涉及以下类型的场景:创建销售订单;为合并不同销售订单的货物分配承运人;过海关/检疫;处理付款和调查例外情况。因此,如图7.5所示的 对话 图显示了 参与者(池子)之间的 对话(作为六边形)。这提供了与域相关的不同 对话 的“鸟瞰”视角。

7.2 BPMN Scope_第4张图片
图7.5 - 对话图的示例

Diagram Point of View | 图表视图

由于 BPMN 图可能描述不同参与者的流程,因此每个参与者可以以不同的方式查看该图。也就是说,参与者对于 流程 将如何应用于他们有不同的观点。一些 活动 将是参与者的内部活动(即由参与者执行或在其控制下进行),其他 活动 将是参与者的外部活动。对于哪些是内部的,哪些是外部的,每个参与者都有不同的观点。在运行时,内部和外部 活动 之间的区别对于参与者如何查看 活动 的状态或排除任何问题非常重要。然而,图表本身保持不变。图7.3显示了具有两个图表的 业务流程。一个是病人的视角,另一个是医生办公室的视角。图中显示了 流程 中两个参与者的 活动,但是当 流程 实际执行时,每个参与者只能控制他们自己的 活动。虽然图表的视角对于图表的查看者理解流程的行为与查看者之间的关系很重要,但 BPMN 目前不会指定任何图形化机制来突出显示该视角。建模人员或建模工具供应商可以提供任何视觉线索来强调图的这一特性。

Understanding the Behavior of Diagrams | 理解图表行为

在本文中,我们将讨论如何在 流程 中使用 序列流。为了方便讨论,我们使用了一个 令牌 的概念,它将遍历 序列流 并传递 流程 中的元素。令牌 是一个理论概念,用于帮助定义正在执行的 流程 的行为。流程 元素的行为可以通过描述它们如何与“遍历” 流程 结构的 令牌 交互来定义。然而,实现 BPMN 的建模和执行工具并不需要实现任何形式的令牌

开始事件 生成一个最终必须在 结束事件 中使用的 令牌(如果没有图形化显示,可能是隐式的)。令牌 的路径应该可以通过 流程 中的 序列流网关活动 的网络进行跟踪。

注意 - 令牌不会遍历 消息流,因为它是向下传递 消息流消息(顾名思义)。

你可能感兴趣的:(BPMN,BPMN)