Remember, the process must be correctly configured with all actors and elements properly defined. In this example, three user groups will be created: "Employees", "Supervisors" and "Managers".
First, add a Pool with three Lanes. Each lane will correspond to each group. Select the pool element from the shapes toolbar and drag it to the process map.
Drop it onto the blank canvas and the element will be added.
Change the name of the pool to "Purchase Request" by double clicking on its name (which by default is "Pool 1").
Then add a lane within the pool by dragging and dropping it from the shapes toolbox.
The lane will be added inside the pool.
Repeat the same action and add two more lanes. The final design of the pool will be divided into three sections (represented by the lanes). Double click on the label of the lanes to change their names to "Employee", "Supervisor" and "Manager". At this point, the design of the process should look like this:
If the diagram is bigger than the screen, use the Full screen mode or select a smaller Zoom percentage to shrink the Process Map. Both options are included in the top toolbar.
The pool can also be resized by clicking on its shape and moving the green squares that appear on the borders.
Once the pool and lanes are defined, a start event must be added in order to indicate the beginning of the process. Drag the Start Event (the empty green circle) from the shapes toolbar and drop it inside the "Employee" lane.
Add the first task of the process by clicking on the start event to access its Quick Toolbar.
Start Events can be connected to Tasks, Events, or Gateways which are shown in the toolbar along with the Connect shape and the trash icon (that removes the element from the process map). For this example, select the task shape from the quick toolbar and drag-and-drop it into the "Employee" lane.
Then, then double click on the label of the task and name it "Submit Request"
Create the second task using the Quick Toolbar of the "Submit Request" task. Place it in the "Supervisor" lane and name it "Assess Request".
In this task, supervisors receive the request and after reviewing it, they approve or reject it. The response of the supervisor is evaluated in an exclusive gateway, which will define whether the request will be sent back to the employee (if the supervisor rejects it) or sent to the manager (if the supervisor approves the request).
Click on the task "Assess Request" to access its Quick Toolbar. Grab the gateway and drop it next to the task in the "Supervisor" lane, then double click on its label to name it "Purchase Approved?".
As mentioned before, if the request was rejected, it will go back to the task "Order Request". To do this in the design, click on the gateway and select the Connect shape (that represents the flow) from the Quick Toolbar.
Drag the flow to the task. Notice that the task is highlighted in the color green, which means that the connection is valid according to BPMN (if the connection is not valid, it will be highlighted in red).
Drop the line on the task and the connection from the gateway will be completed.
Notice that sometimes the flow overlaps other elements. To fix this, click on the flow to enable the little yellow dots at each end of the line.
Click on the yellow dot on the gateway, drag the flow and drop it there.
Now the connecting flow will be better placed.
The approved requests have to be reviewed and sent by the manager. Create a task using the quick toolbar of the gateway and place it in the "Manager" lane. Name it "Deliver Order".
To have a better understanding of what the paths do in the gateway evaluation, label the flow lines from the gateway as “Yes” (the line to “Deliver Order” for approved requests) and “No” (the line to “Submit Request” for rejected requests). To do this, double click on the arrow of the lines to edit the labels.
Since “Deliver Order” will be the last task of the process, add the end event (the empty red circle) to the “Deliver Order” task using the quick toolbar and name it "Order Delivered". The final design of the process will look like this: