引言
业务流程模型与符号(BPMN)的开发具有双重目的:在提供简单直观的符号以创建业务流程模型的同时,保持足够的技术深度,以应对复杂的业务需求。为了实现这一平衡,BPMN将图形元素组织成特定类别,使读者能够快速识别基本组件,同时利用额外的变体来建模复杂场景,而不会使图表的整体外观和感觉变得杂乱。本指南聚焦于“任务”类别,详细说明各种形状及其在流程建模中的具体作用。
BPMN任务定义
任务是BPMN流程中的基本构建模块。虽然基本任务形状表示没有特殊类型,但该符号允许使用特定变体来明确任务的执行方式。

BPMN任务描述示例:
该图示展示了一个复杂流程,使用了多种特定的BPMN任务类型,以表明每个步骤中所执行工作的性质。 这些任务位于两个主要泳道中: 销售部门和履行与运营部门。

销售部门泳道中的任务元素
-
用户任务(“输入订单详情”): 此任务, 由矩形左上角的小用户图标表示, 表示一个人类执行者(销售代表)与软件应用程序交互以输入订单信息的步骤。
-
手动任务(“验证客户信用”): 由手形图标表示, 此任务由人工完成,无需任何自动化业务流程执行引擎或应用程序的支持。 这是一个完全手动的检查。
-
用户任务(“通知销售经理”): 另一个用户任务, 此任务要求系统为销售经理创建一个待办任务以进行通知, 可能发生在信用验证失败时。
-
子流程(“处理争议”): 此元素, 用一个小加号标记, 是一个可重用的子流程,目前以折叠状态显示。 它代表一个更详细的, 自包含的流程(一个“处理争议”工作流),作为主流程的一部分被调用。
履行与运营部门泳道中的任务元素
-
业务规则任务(“确定运输方式”): 此任务, 用一个小表格/网格图标标记, 表示一个自动化步骤,该步骤使用业务规则引擎根据预定义的标准确定最佳运输方式。
-
服务任务(“预留库存”): 由齿轮图标表示, 这是一个自动化任务,流程引擎与外部服务(如ERP或库存系统)交互,以预留所需的库存。
-
发送任务(“生成运输清单”): 用“发送”信封图标标记, 此自动化任务旨在发送一条消息——在此情况下, 一份运输清单——发送给外部参与者, 例如运输承运商。
-
脚本任务(“计算总成本”): 由脚本/卷轴图标表示, 这是一个自动化任务,流程引擎执行预定义的脚本以计算订单的总成本。
-
接收任务(“等待合作伙伴确认”): 用“接收”信封图标标记, 此任务旨在暂停流程,直到从合作伙伴接收到外部消息(确认)。
-
调用活动(“向客户开票”): 此元素, 具有粗边框和加号, 是一个全局任务或流程。 它引用并调用一个外部的, 可重用的“向客户开票”流程。 这使得流程能够调用在其他地方定义的标准开票程序。
BPMN任务描述示例:
此“新员工入职工作流程”展示了各种BPMN任务类型如何协调跨部门活动。

人力资源部门泳道
-
用户任务(“验证候选人信息”): 此任务由人形图标标识,涉及人力资源人员与系统交互以验证数据。
-
用户任务(“向招聘人员请求更正数据”): 一项需要人工干预以解决无效信息的交互式任务。
-
发送任务(“发送欢迎邮件及入职安排”): 一项配置为向新员工发送消息的自动化任务。
-
接收任务(“等待候选人接受”): 此任务会暂停流程,直到收到候选人的回复为止。
IT部门通道
-
手动任务(“向候选人发送录用通知”): 由人工执行而无需执行引擎协助的任务。
-
业务规则任务(“确定设备需求”): 此任务使用业务规则机制,根据候选人的职位计算所需设备。
-
服务任务(“配置笔记本电脑及软件”): 一项自动化任务,流程引擎与IT服务交互以部署硬件和软件。
-
脚本任务(“创建网络账户”): 一项自动化任务,引擎执行脚本以配置用户凭据。
-
接收任务(“等待候选人接受”): 与人力资源版本类似,此任务在继续前等待外部确认。
-
子流程(“完成入职并加入薪酬体系”): 以加号表示,这是一个折叠的流程,用于处理多步骤的薪酬和入职完成逻辑。
招聘经理通道
-
用户任务(“安排面试”): 一项交互式任务,招聘经理负责协调会议时间。
-
用户任务(“进行面试并选择候选人”): 一项由人工主导的任务,涉及对申请人的评估和选择。
此工作流展示了BPMN如何有效地区分人工操作、自动化系统流程和通信任务,以管理新员工的生命周期。
BPMN任务描述元素概要
| 任务类型 | 描述 |
|---|---|
| 无 | 未指明特殊任务类型。 |
| 用户任务 | 由人工执行的典型工作流任务,通常需要软件辅助,并可通过任务列表管理器进行调度。 |
| 人工任务 | 无需任何业务流程执行引擎或应用程序协助即可执行的任务。 |
| 服务任务 | 利用自动化服务(如Web服务或自动化应用程序)执行的任务。 |
| 接收任务 | 用于等待来自外部参与者的消息到达。 |
| 发送任务 | 用于向外部参与者发送消息。 |
| 脚本任务 | 由业务流程引擎执行,该引擎解释预定义的语言;一旦脚本执行完毕,任务即完成。 |
| 业务规则 | 提供一种机制,用于向业务规则引擎发送输入并接收输出。 |
| 子流程 | 一种可“展开”以显示低层级流程的活动,有助于分解和组织。 |
| 调用活动 | 链接到可重用流程或任务的活动。 |
结论
通过使用这些特定的任务符号,建模者能够有效地传达业务流程中每个活动的性质、执行方式和自动化程度。这种标准化方法确保了BPMN图对利益相关者保持可理解性,同时为技术实现提供了必要的细节。后续章节将在这些基本形状的基础上,展示它们在全面的端到端业务流程模型中的应用。











