Business process designer > BPMN processes > Graphical elements / Swimlanes


A swimlane represents a participant of a business process. This may be an employee, a department, a customer, a supplier or a role, for example, the initiator or approver. A participant represented by a swimlane is responsible for performing the tasks placed in the swimlane.

Thus, by adding all the swimlanes to the process and placing the corresponding tasks in them, you will graphically represent the interaction between the process participants and describe the sequence of actions that must be taken by each of them.


Types of swimlanes

To represents participants of a business process, you can use one of the following types of swimlanes:

  • Dynamic. This type is used if the job position of the participant is determined during the execution of the process. In the diagram it is indicated in green.
  • Static. Choose this type if the job position of the responsible user is known before the process begins. In the diagram, it is indicated in gray.

swimlanes 5

On the process diagram, swimlanes can be positioned both vertically and horizontally.

Add a swimlane

A swimlane representing the process Initiator is created automatically. Other swimlanes can be added in two ways:

  • Click the + icon

swimlanes 6

  • Drag an item from the right panel to the modeling sheet.

swimlanes 7

Swimlane settings

To make it easier for you to understand swimlane settings, let's take the Purchase request process as an example.

Below you can see all the process steps and process participants:

  • Any employee can create a request and send it to his/her manager for approval.
  • The manager rejects or approves the request.
  • In case of a positive decision, the warehouse staff checks the availability of goods. If the requested product is in stock, it will be given to the initiator.
  • If the product is not in stock, the warehouse employee will be assigned with the task to purchase the requested product.
  • After the product is purchased, it will be given to the person who started the request process.

Let's describe the participants using dynamic and static swimlanes.

Dynamic swimlane

If any employee can start the process, then at the stage of process modeling his or her name or job position will be unknown. The system will determine the specific performer while the process is executed. In the diagram, the performer will be represented by a dynamic swimlane.

swimlanes 8

The Initiator swimlane is added automatically when you create a new process. To open the settings window, double-click on its name.


The Initiator variable is also created automatically. Its value is determined immediately after the process starts. This variable stores the information on the user who launched the process. You can use this variable when modeling task forms, notifications, etc.

Let's add another swimlane that will represent the manager of the Initiator. By default, a dynamic swimlane is created. Its name is Executor 1.

swimlanes 2

To increase readability of the process diagram, rename the swimlane to Manager. To do this, open the settings window.

swimlanes 3

Now you need to specify a variable that stores the performer of the task. It is determined every time someone starts a process. For example, the initiator will select his or her manager from the list of all company employees when filling out the request.

Click the Create New Variable button and in the opened window specify the necessary parameters.

swimlanes 4

In this case, all required fields will be filled in automatically. Please note that you cannot change the type because in swimlanes you can only use the User type variables. However, you can specify additional parameters:

  • One. The variable will store only one user.
  • Many. Multiple users will be stored in the variable.
  • Show locked users. You can specify locked users as the variable value.

Select options you would like to apply and click Create.

Once this is done, the settings window of the Manager swimlane will look like this:

swimlanes 9

Thus, using dynamic swimlanes we represented two process participants. Now let's proceed to the static swimlane settings.

Static swimlane

Swimlanes of this type are used in cases when you know the position of the process participant or the group he or she belongs to.

In the third step of the Purchase request process, the warehouse employee checks whether the equipment is in stock. Since we know who exactly will perform this task, we use a static swimlane to represent this process participant.

Let’s add a new swimlane and select Static Swimlane. To improve the readability of the process diagram, open the swimlane’s settings and change its name.

swimlanes 10

Let's consider other options provided in the swimlane's settings:

  • Variable. Here you can specify a Users type variable that will store information about the position and the name of the process participant (for example, Warehouse manager). You can use this variable when modeling task forms, notifications, etc.
  • User Group. Select a user group or an organizational chart item, to define who exactly will perform tasks placed in the swimlane. For example, you can select the Warehouse group. Users included in this group will be responsible for the tasks placed in this swimlane. Note that if you decide to use this option, the Variable field needs to remain empty.

By default, if you specified a group of users or a department in a swimlane, the First response option will be set for process tasks. A task will be assigned to all users included into the group or department. As soon as someone starts working on a task, it disappears from other users’ task lists.

If you place several tasks in the swimlane, then each new task will be automatically assigned to the employee who performed the previous one.

In the settings of each task, you can select on of Multiple Instance options: First Response, Parallel, or Sequential. Read more in the Task article.

In the process diagram, the swimlane representing the user group or department is indicated by the 360011088231-mceclip0  icon.

So, after setting up all the swimlanes, the Purchase request process will look like this:


To learn about access permissions for app items and files used in tasks located in a certain swimlane, see Access permissions.

Found a typo? Highlight the text, press ctrl + enter and notify us