LSPS documentation logo
LSPS Documentation
Swimlanes

Swimlanes serve to denote and set common performers for multiple elements of a process workflow: if a human task has no performer, the performer set the closest ancestor swimlane is used. This applies to elements in Reusable Sub-Processes.

Swimlanes can contain any element allowed by their parent entity, be it a Plan, BPMN-based Process, or Sub-Process: if you are using Swimlanes in a Plan, you can use the same elements, which you would use in a Plan normally.

Pool

A Pool groups a workflow executed fully or partially by a common set of performers, typically one organization or department. It sets the common performer set: The performers property set on the Pool is adopted by process elements that require the performers parameter but do not define it themselves.

Each BPMN-based process, plan body, or sub-process may have an arbitrary number of Pools with one Pool marked as the Main Pool: Only the flow in the Main pool is executed. Non-main Pools serve for informational purposes only and are excluded from validation.

Pools may contain an arbitrary number of Lanes. Once a Pool contains at least one Lane, the Pool cannot contain any other BPMN elements: all flow elements must be in a Lane.

Sequence Flows cannot cross Pool boundaries.

Pool_vert.png
Vertical expanded Pool with Lanes
Pool_horiz.png
Horizontal expanded Pool with Lanes
Pool_ver_collapsed.png
Vertical collapsed Pool with Lanes
Pool_horiz_collapsed.png
Horizontal collapsed Pool with Lanes

Pool Attributes

  • Main is a Boolean attribute; if true the workflow in the Pool is executed.
  • Performers defines the performers of the Tasks in the Pool if the Tasks do not define their performers or the setting is overriden by a child Lane.

Lane

A Lane holds a part of a workflow of its parent, either a Pool or another Lane, and defines the performers of the activities in the Lane.

A Lane can contain other Lanes: if a Lane contains a Lane, it cannot contain any other BPMN elements. All workflow elements in a Lane take over the Performers parameter value of the Lane. If a parent Lane does not define the parameter, the parameter of the "closest" parent Lane is used. If no such Lane exists, the performers set on the Pool are used.

Sequence Flows of Lane workflows can cross Lane boundaries.