Pools and Swimlanes

Introduction

In BPMN 2.0, pools and swimlanes (also known as lanes) are used to organize processes and visually represent the roles, departments, or entities involved in a business process. They help clarify who is responsible for which tasks, and how different participants interact with one another.

Pools and Lanes

Pools

  • Purpose: A pool represents a major participant in the process or a broader entity, such as an organization, system, or business partner. Pools are used to define the boundaries of a process and indicate that different pools may represent different organizations or departments working together.

  • Visual Representation: A large rectangular container that encloses a complete process. It can contain multiple swimlanes (lanes), but each pool represents a distinct process or participant.

  • Example: You might have one pool for “Company A” and another pool for “Company B” in a process where both companies interact.

  • Use Case: Pools are typically used when you want to model interactions between different entities, such as when a company interacts with an external vendor, partner, or customer. Each entity gets its own pool, and the message flows between pools indicate communication between the entities.

Swimlanes (Lanes)

  • Purpose: A swimlane (or lane) is a sub-partition within a pool that helps further organize activities by separating them according to specific roles, departments, or systems. Lanes provide clarity by showing who is responsible for performing specific tasks within a pool.

  • Visual Representation: Horizontal or vertical subdivisions within a pool, each representing a different participant (e.g., a department, role, or system).

  • Example: Inside the pool representing a company, you might have lanes for “Sales,” “Finance,” and “Customer Support,” with tasks assigned to each department.

  • Use Case: Lanes are used to assign responsibility for tasks within a pool, making it clear who performs each activity. For example, tasks related to processing invoices might be placed in the “Finance” lane, while tasks related to customer inquiries are placed in the “Customer Support” lane.

Collapsed Pool

Collapsed Pool

  • Purpose: A collapsed pool represents a participant in the process (such as a company, department, or system) where the internal process flow is not displayed. This is used to show interactions between different participants without revealing their internal workflow details.

  • Visual Representation: A large rectangle with no internal activities shown. It typically contains only the participant’s name and may have message flows entering or leaving the pool to show interaction with other participants.

  • Example: A diagram might show a company interacting with a supplier. The company’s internal processes are shown, while the supplier is represented by a collapsed pool to indicate involvement without detailing their internal steps.

  • Use Case: Collapsed pools are useful when you want to display the interaction between multiple participants but don’t need to focus on the detailed processes of some of them. For example, you may want to show how a customer interacts with an external vendor without showing the vendor’s internal procedures.

Key Characteristics

Pools:

  • Interaction Between Processes: When modeling multiple pools, you can use message flows to show communication between the participants. For instance, a customer might send an order to a supplier, and this would be represented as a message flow between their respective pools.
  • Independent Processes: Each pool can contain its own process. The process within one pool is independent of processes in other pools, though message flows may connect them.

Swimlanes (Lanes):

  • Responsibility and Organization: Lanes within a pool represent different participants, roles, or departments that are responsible for various tasks. Each lane helps delineate responsibility within the same organization or entity.
  • Task Assignment: By organizing tasks into swimlanes, the BPMN model makes it easier to visualize which department or individual is responsible for each part of the process.

Collapsed Pool:

  • Participant Representation: A collapsed pool represents a participant in a process without showing their internal workflow. This can be an external organization, a department, or any entity that interacts with other participants in the process.
  • No Internal Activities: The pool does not display any activities or tasks inside, signifying that the internal process is hidden or irrelevant to the current diagram.
  • Interaction Focus: The main focus is on how the collapsed pool interacts with other participants through message flows, rather than the specific steps it follows internally.
  • Boundary Visibility: While the internal process is hidden, the boundaries of the participant are clearly marked to show their involvement in the overall process.
  • Simplified View: Collapsed pools help simplify complex diagrams by excluding unnecessary details of external processes, making it easier to focus on interactions and communications.

Examples

Pool Example: In a supply chain process:

  • One pool represents the “Supplier” and another pool represents the “Customer.”
  • The process within the “Customer” pool may involve placing an order, while the process within the “Supplier” pool may involve processing and shipping that order.
  • Message flows between the pools show communication, such as sending the order request and receiving the shipment confirmation.

Swimlane Example: In a company’s internal process:

  • A single pool represents “Company XYZ.”
  • Within this pool, swimlanes represent different departments, such as “Sales,” “Operations,” and “Accounting.”
  • Tasks like “Generate Invoice” might be assigned to the “Accounting” lane, while “Prepare Shipment” is assigned to the “Operations” lane, clearly showing the division of responsibilities.

Collapsed Pool Example: In an international business collaboration:

  • One collapsed pool represents “International Partner A” and another collapsed pool represents “International Partner B.”
  • The internal processes within “International Partner A” and “International Partner B” are not shown, as they are not relevant to the current process diagram.
  • Message flows between the collapsed pools show communication, such as sending a contract proposal from “Partner A” and receiving a signed contract from “Partner B.”
  • The focus is on the interaction and communication between the two partners, not on the details of how each partner handles the contract internally.

Key Points

  • Pools:

    • Represent separate participants, such as companies, departments, or systems.
    • Used to model interactions between different organizations or entities.
    • Contain complete processes that can communicate with other pools through message flows.
  • Swimlanes (Lanes):

    • Subdivisions within a pool, representing roles, departments, or systems within the same organization.
    • Used to organize tasks and indicate responsibility for specific activities.
    • Provide clarity by assigning tasks to specific participants within the same process.
  • Collapsed Pools:

    • Represent participants in a process whose internal activities are hidden or irrelevant to the current view.
    • Focus on interactions between different participants, simplifying the diagram by omitting internal details.
    • Are used when only high-level communications or external exchanges between participants need to be modeled.
    • Message flows are used to show communication between collapsed pools and other participants.
    • Help in reducing the complexity of diagrams while still providing clarity on inter-participant interactions.

Use Cases

  • Pools: When modeling interactions between distinct entities, such as a company and its supplier or customer.
  • Swimlanes: When modeling internal processes within a single organization and showing how different roles or departments participate in the workflow.
  • Collapsed Pools: When modeling external participants where the internal process is not important to show, such as a client interacting with a service provider, focusing only on the communication between them rather than the internal steps of the service provider’s process.

Example

[IMAGE PLACEHOLDER FOR POOLS AND SWIMLANES EXAMPLE]

  • Pool 1: “Customer”

    • Lane 1: “Sales Department” (Task: “Submit Order”)
    • Lane 2: “Accounting Department” (Task: “Send Payment Confirmation”)
  • Pool 2: “Supplier”

    • Lane 1: “Warehouse” (Task: “Prepare Shipment”)
    • Lane 2: “Billing” (Task: “Issue Invoice”)

In this diagram, the Customer pool communicates with the Supplier pool via message flows (e.g., sending an order and receiving an invoice), while tasks within each pool are assigned to specific lanes based on departmental responsibilities.

Pools and swimlanes are essential for structuring complex business processes, clearly showing how different entities and roles contribute to the overall workflow, and ensuring that responsibilities are clearly defined within and between organizations.