池和泳道

介绍

BPMN 2.0中,泳道(也称为lanes)用于组织流程并直观地表现业务流程中涉及的角色、部门或实体。它们有助于澄清谁负责哪些任务,以及不同参与者之间如何互动。

池和泳道

池(Pools)

  • 目的代表流程中的主要参与者或更广泛的实体,如组织、系统或业务伙伴。池用于定义流程的边界,并表明不同的池可能代表共同工作的不同组织或部门。

  • 视觉表示:一个包罗完整流程的大型矩形容器。可以包含多个泳道,但每个池代表一个独立的流程或参与者。

  • 示例:在一个流程中,“公司A”和”公司B”各有一个池,展示两家公司之间的互动。

  • 使用案例:池通常用于建模不同实体之间的交互,例如公司与外部供应商、合作伙伴或客户的交互。每个实体拥有自己的池,池之间的消息流表示实体之间的通信。

泳道 (Lanes)

  • 目的: 泳道(或称)是池中的一个子分区,通过按照特定角色、部门或系统进行划分,以帮助进一步组织活动。泳道通过展示谁负责在池子中执行特定任务,提供明确性。

  • 视觉表示: 在池中的水平或垂直分隔,每个代表不同的参与者(例如,一个部门、角色或系统)。

  • 示例: 在表示公司的池子中,您可能有“销售”、“财务”和“客户支持”的泳道,并将任务分配给每个部门。

  • 使用场景: 泳道用于在池子内部分配任务的责任,明确谁执行每项活动。例如,与处理发票相关的任务可能会放置在“财务”泳道中,而与客户查询相关的任务则放置在“客户支持”泳道中。

折叠池

折叠池

  • 目的折叠池代表流程中不显示内部流程的参与者(如公司、部门或系统)。用于展示不同参与者之间的交互而不透露其内部工作流细节。

  • 视觉表示:一个无内部活动显示的大矩形。通常仅包含参与者名称,并可能有进出池的消息流以显示与其他参与者的交互。

  • 示例:一个图表可能显示公司与供应商的交互。公司的内部流程被显示,而供应商被表示为一个折叠池,以指示参与而不详细说明其内部步骤。

  • 使用案例:折叠池在需要显示多个参与者之间的交互但不需要关注其中一些参与者的详细流程时很有用。例如,可以展示客户如何与外部供应商交互,而无需展示供应商的内部程序。

关键特征

池(Pools)

  • 流程间互动:在建模多个池时,可以使用消息流展示参与者之间的通信。例如,客户向供应商发送订单,这将被表示为它们各自池之间的消息流。
  • 独立流程:每个池可以包含自己的流程。一个池内的流程独立于其他池中的流程,尽管消息流可能连接它们。

泳道(Lanes)

  • 责任和组织:池内的泳道代表负责各种任务的不同参与者、角色或部门。每条泳道有助于厘清同一组织或实体中的责任。
  • 任务分配:通过将任务组织到泳道中,BPMN模型使得更容易直观地了解到哪个部门或个人负责流程的每一部分。

折叠池(Collapsed Pool)

  • 参与者表示:折叠池在不显示其内部工作流的情况下代表流程中的参与者。可以是外部组织、部门或与流程中其他参与者互动的任何实体。
  • 无内部活动:池不显示任何活动或任务,表明内部流程隐藏或与当前图表无关。
  • 互动重点:主要关注折叠池如何通过消息流与其他参与者互动,而不是其内部遵循的具体步骤。
  • 边界可见性:虽然隐藏内部流程,但参与者的边界清晰标出,以展示其在整体流程中的参与。
  • 简化视图:折叠池通过排除外部流程的非必要细节帮助简化复杂图表,使得更容易专注于互动和通信。

示例

池示例:在供应链流程中:

  • 一个池代表”供应商”,另一个池代表”客户”。
  • “客户”池内的流程可能涉及下订单,而”供应商”池内的流程可能涉及处理和发货。
  • 池间的消息流显示通信,例如发送订单请求和接收发货确认。

泳道示例:在公司的内部流程中:

  • 一个单独的池代表”XYZ公司”。
  • 在这个池中,泳道代表不同部门,如”销售”、“运营”和”会计”。
  • 像”生成发票”这样的任务可能分配给”会计”泳道,而”准备发货”分配给”运营”泳道,明确展示了责任的分工。

折叠池示例:在国际商业合作中:

  • 一个折叠池代表”国际合作伙伴A”,另一个折叠池代表”国际合作伙伴B”。
  • “国际合作伙伴A”和”国际合作伙伴B”的内部流程不显示,因为它们与当前流程图无关。
  • 折叠池间的消息流显示通信,例如”合作伙伴A”发送合同提案和”合作伙伴B”接收签署的合同。
  • 重点在于两位合作伙伴之间的互动和沟通,而不是每个合作伙伴内部如何处理合同的细节。

关键点

  • 池(Pools)

    • 代表独立参与者,如公司、部门或系统。
    • 用于建模不同组织或实体之间的交互。
    • 包含完整的流程,可以通过消息流与其他池通信。
  • 泳道(Swimlanes / Lanes)

    • 池内的细分,代表同一组织内的角色、部门或系统。
    • 用于组织任务并指示特定活动的责任。
    • 通过将任务分配给同一个流程中的特定参与者来提供清晰度。
  • 折叠池(Collapsed Pools)

    • 代表在流程中其内部活动被隐藏或与当前视图无关的参与者。
    • 关注不同参与者之间的交互,通过省略内部细节简化图表。
    • 用于仅需要建模参与者之间的高层通信或外部交换的情况。
    • 使用消息流显示折叠池与其他参与者之间的通信。
    • 帮助减少图表的复杂性,同时仍然在参与者交互中保持清晰。

使用案例

  • 池(Pools):当建模公司与其供应商或客户等不同实体之间的交互时。
  • 泳道(Swimlanes):当建模单个组织内的内部流程并展示不同角色或部门如何参与工作流时。
  • 折叠池(Collapsed Pools):当建模外部参与者且不需要展示其内部流程时,例如客户与服务提供商交互,仅关注它们之间的通信,而非服务提供商流程的内部步骤。

示例

[图像占位符 - 池与泳道示例]

  • 池 1:“客户”

    • 泳道 1:“销售部门”(任务:“提交订单”)
    • 泳道 2:“财务部门”(任务:“发送付款确认”)
  • 池 2:“供应商”

    • 泳道 1:“仓库”(任务:“准备发货”)
    • 泳道 2:“开票部门”(任务:“开具发票”)

在此图中,客户池通过消息流与供应商池进行通信(例如,发送订单和接收发票),而每个池内的任务根据部门职责分配到特定的泳道。

池和泳道对于构建复杂的业务流程至关重要,清晰展示不同实体和角色如何为整体工作流做出贡献,并确保职责在组织内部和之间的明确划分。