de_DEen_USes_ESfa_IRfr_FRhi_INid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW

BPMN活动类型:全面指南

简介

活动是业务流程模型与符号(BPMN)的基本构建模块。每个业务流程都是通过不同类型的BPMN活动构建而成,这些活动代表组织内部执行的工作。本指南提供了理解BPMN活动类型、其符号表示、元素以及关键建模概念的完整参考。


什么是BPMN?

BPMN(业务流程模型与符号)是一种全球公认的业务流程建模标准。它提供了一种图形化表示法,既足够直观以供业务用户使用,又足够丰富以支持技术实现。其主要特点包括:

  • 通用理解:在业务分析师、开发人员、架构师和利益相关者之间建立沟通桥梁
  • 标准化符号:使用一致的视觉元素来表示流程流、事件、网关和活动
  • 可执行模型:与符合BPMN规范的引擎配合时,支持流程自动化
  • 可扩展的细节:允许从高层次概览建模到详细的实施规范

什么是BPMN活动?

一个BPMN活动代表业务流程中执行的“工作”。活动可以分为:

类型 描述 用例
任务 原子性的、不可再分解的工作单元 单一操作,例如“审批请求”
子流程 包含嵌套任务/子流程的复合活动 将相关步骤分组以提高清晰度
调用活动 对全局定义的可重用流程的引用 在不同图表间调用共享流程


BPMN 任务类型

任务是无法进一步分解的原子活动。BPMN 2.0 定义了七种专门的任务类型以明确如何工作是如何执行的。

🔧 服务任务

定义: 一种无需人工干预即可调用自动化服务、WebService 或应用程序的任务。

符号表示: 任务矩形,左上角带有齿轮/扳手图标。

使用示例: 通过 API 将论坛回答发布到 Twitter。

核心概念: 完全自动化;触发外部系统调用。


📤 发送任务

定义: 一种向另一个参与者(池)发送消息并在发送后立即完成的任务。

符号表示: 任务矩形,带有向外的信封图标。

使用示例: 管理员向文章作者发送拒绝通知。

核心概念: 发送即忘的消息传递;无需等待响应。


📥 接收任务

定义: 一种在继续之前等待接收消息的任务;在收到消息后完成。

符号表示: 任务矩形,带有向内的信封图标。

使用示例: 快递系统等待取件请求消息。

核心概念: 阻塞等待状态;进程暂停,直到消息到达。


👤 用户任务

定义: 由人类用户通过与软件应用程序交互完成的任务。

符号表示: 带有人物图标的任务矩形。

示例用法: 买家通过电子商务界面批准订单。

关键概念: 人机协同;需要用户界面交互。


✋ 手动任务

定义: 完全无需软件辅助或流程引擎支持的任务。

符号表示: 带有手部图标的任务矩形。

示例用法: 实物推车检查和纸质签批流程。

关键概念: 完全由人工执行;不涉及任何数字系统。


⚖️ 业务规则任务

定义: 一项根据业务规则引擎评估输入并返回决策或输出的任务。

符号表示: 带有表格/网格图标的任务矩形。

示例用法: 使用规则引擎分析调查数据以生成洞察。

关键概念: 声明式逻辑评估;将规则与流程分离。


💻 脚本任务

定义: 一种由流程引擎解释并执行的预定义脚本的任务。

符号表示: 带有脚本/文档图标的任务矩形。

示例用法: 在贷款申请处理过程中运行信用检查脚本。

核心概念: 引擎执行的代码;适用于轻量级自动化逻辑。


BPMN 子流程

一个子流程是一种复合活动,将详细流程封装在单一活动符号内。子流程可实现:

  • 抽象: 在高层级图示中隐藏复杂性
  • 可重用性: 一次定义,多次引用
  • 模块化: 将流程组织为逻辑组件
  • 协作: 允许团队分别处理不同的子流程

子流程标记

标记 名称 行为 视觉指示符
🔁 循环 : 顺序重复子流程,直到满足条件为止 : 任务内部的圆形箭头
多实例 执行子流程的多个并行实例 任务内部的三条竖线
补偿 为事务性流程定义撤销/回滚逻辑 弯曲箭头(逆时针方向)
临时 任务可按任意顺序执行,视具体情况而定 任务内部的波浪号(~)或星号

循环子流程

当一组活动必须重复执行时使用(例如:“审核直到批准”)。

多实例子流程

用于并行处理(例如:“同时通知所有部门负责人”)。

补偿子流程

用于回滚场景(例如:“如果付款失败,则取消预订”)。

临时子流程

用于灵活、以案例为导向的工作流(例如:“处理客户投诉,可选步骤”)。


BPMN 调用活动

一个调用活动引用当前图表之外全局定义的流程或任务。

主要优势:

  • ✅ 促进标准化流程的复用
  • ✅ 通过抽象常见工作流减少图表混乱
  • ✅ 确保多个流程模型之间的一致性
  • ✅ 简化维护(一次更新,处处生效)

符号表示: 带有粗边框和“加号”或引用标识符的任务矩形。

示例: 一个“注册用户”调用活动,调用跨入职、结账和客服工作流共享的注册流程。


关键建模概念与最佳实践

🎯 活动选择指南

  1. 从任务开始: 首先建模原子工作;当复杂度增加时,再重构为子流程
  2. 精确选择任务类型: 将图标与执行机制相匹配(人工、自动化或消息驱动)
  3. 使用子流程构建层级结构: 将详细流程折叠,以在更高层级保持可读性
  4. 利用调用活动实现复用: 将常见模式(例如“审批”、“通知”、“验证”)提取为全局流程

🔗 流程与连接性

  • 活动通过以下方式连接:顺序流(实线箭头)表示执行顺序
  • 消息流(虚线箭头)连接参与方池之间的活动
  • 关联线(点划线)用于连接数据对象或注释等工件

📐 符号一致性

元素 符号 用途
任务 圆角矩形 原子工作单元
子流程 带+或标记的圆角矩形 折叠/展开的流程
调用活动 带粗边的圆角矩形 外部流程引用
网关 菱形 决策/合并点
事件 圆形 触发器或结果

参考列表

  1. BPMN活动类型详解:全面指南,涵盖BPMN 2.0活动类型,包括任务、子流程和调用活动,并配有视觉示例。
  2. 什么是BPMN:业务流程模型与符号(BPMN)简介,包括其目的、目标受众以及在跨职能沟通中的优势。
  3. 什么是BPMN活动:对BPMN活动的基础性解释,即业务流程中的原子或复合工作单元。
  4. BPMN任务:原子任务元素的概述,以及七种专门的BPMN 2.0任务类型,用于精确的行为建模。
  5. 服务任务:关于无需人工干预即可调用自动化服务、Web API或应用程序的任务的详细说明。
  6. 发送任务:关于消息发送任务的说明,任务在向另一流程参与者发送消息后即完成。
  7. 接收任务:关于等待消息的任务的描述,任务会阻塞流程,直到接收到传入消息为止。
  8. 用户任务:关于需要与软件应用程序进行人机交互才能完成的任务的指导。
  9. 手动任务:对完全不依赖软件或流程引擎支持即可执行的任务的澄清。
  10. 业务规则任务:关于与业务规则引擎交互以实现声明式决策的任务的概述。
  11. 脚本任务: 解释执行引擎解释的脚本以实现轻量级自动化逻辑的任务。
  12. BPMN 子流程: 指导复合活动,这些活动封装嵌套流程逻辑以实现抽象和模块化。
  13. 循环: 描述表示封闭活动顺序重复的子流程标记。
  14. 多实例: 解释启用多个相同子流程实例并行执行的标记。
  15. 补偿: 有关专为事务工作流中的撤销/回滚逻辑设计的子流程的详细信息。
  16. 临时: 灵活子流程的概述,其中任务可选择性执行且顺序非固定。
  17. BPMN 调用活动: 指导如何引用外部可重用的流程定义以确保一致性和可维护性。
  18. 额外资源: 精选的BPMN软件工具和基础学习指南链接。

💡 专业提示: 始终从最简单的活动类型开始建模,以准确反映工作内容。过早使用复杂的子流程或标记进行过度设计会降低图表的清晰度和利益相关者的接受度。