This section describes how to create and edit BPMN diagrams in Process Manager. If you like to learn about the basic modeling functions first, go to Move and change elements in the Basic Modeling section of the manual.
Creating a new BPMN 2.0 diagram
- Click New > Business Process Diagram (BPMN 2.0) in the top drop-down menu of the Explorer.
- The Editor will open in a new browser tab. Now you can start adding modeling elements.
In case you would like to to edit an existing diagram, just double-click the diagram in the Editor. Alternatively, you can select the diagram and click Edit > Edit diagram:
Editing BPMN diagrams
To add the first element to the diagram canvas, select it from the shape repository on the left side of the Editor, drag it onto the diagram canvas and drop it there:
The green or red status icon indicates whether or not it is possible to drop the element at the current location. This might depend on whether an element can be added to another element. For example, a Data Object cannot be added to a Task.
The shape repository contains all modeling elements that are available in the selected subset. To change the shape repository subset, click the drop-down menu above the shape repository. The elements are grouped into element types (in activities, gateways, roles, etc.).
Once you get started, you can add elements using the interactive context menus of existing elements. Depending on the shape currently selected, the menu suggests which modeling element might be added next.
The subset of modeling elements you have selected influences the elements you can add through the interactive context menu. If the element you want to add doesn't appear in the interactive context menu, it probably does not exist in the current subset--simply switch to a subset that contains the needed element.
In order to make use of the interactive context menu, proceed as follows:
- Select an element on the diagram canvas (for example a Start Event). The interactive context menu appears right of the element.
- Click the icon representing the element you want to add (e.g. a task).
- The new element appears in the diagram.
If you want to define the position of the newly created element yourself, you can also click the icon and drag the element to the desired position.
The type of connector that is created between the selected element and the newly created element is determined automatically. In BPMN, the connector will usually be a sequence flow. When adding text annotations or data objects, it will be an association. In case the flow crosses pool boundaries, it will be a message flow.
If you want to duplicate one or multiple existing elements, you can simply select them and click in the toolbar. Use in the toolbar to insert the elements. To cut and paste elements, use the and in the toolbar.
Instead of using the buttons, you can also use the keyboard shortcutsCtrl + CCtrl + V and Ctrl + X.
The copy functionality makes it easy to create similar elements with complex but similar values. It also lets you re-use parts of old diagrams by copying some of their elements and pasting them in a new diagram.
Copying elements between different diagrams may a few minutes, as the elements are copied to the server first. An Internet connection is required for copying elements between diagrams, but not for copying elements within one diagram.
Once you created an element in your diagram, you can label it:
If you want to edit the label of an existing element, double-click it in order to open the text box.
You can edit the element's attributes by using the attribute panel on the right.
The position of labels and connectors can be changed via drag and drop:
Pools and lanes are modeling constructs in BPMN that allow for the assignment of organizational units, people or systems to activities. As the concept of pools and lanes is BPMN-specific, readers concentrating on other modeling notations may skip this chapter.
Adding pools and lanes to a diagram
Like with other modeling elements, the panel on the left is used to add new pools and lanes to a diagram. In most cases, a pool represents a company and lanes subdivide this company, e.g. into roles or departments.
Pools can either be collapsed or expanded. Collapsed pools cannot contain modeling elements, as they represent an abstract organizational unit or system. Expanded pools can contain lanes to further subdivide the pool. Those lanes can be subdivided further into sublanes.
This chapter explains how to add and edit expanded pools and lanes.
If you are using the subset BPMN (complete) you will find pools and lanes under swimlanes.
Pools and lanes are added via the modeling element Pool/Lane:
- Select the Pool/Lane entry in the shape repository on the left side.
Drag the element to the desired position. The Editor helps you by highlighting possible positions. It also decides automatically whether the new element will be a pool or a lane:
- Create a new pool with two lanes:
Drag the element to a spot on the canvas where no pool can be found. The information Create new pool will appear next to the cursor.
- Create an additional lane beneath an already existing lane
Drag the element to the upper or lower border of another lane. The border will be highlighted in green and an alert will show up, explaining where the lane will be added.
If you want to add a lane above, move the cursor to the upper border. To add a lane below, target the lower border.
- Create a sublane that splits an existing lane into two sublanes.
When moving a Pool/Lane element over the body of a lane it will be colored green. To divide a lane into two sublanes, position the new lane here:
- Drop the element onto the canvas at its new position.
- Insert a title for the lane or pool created.
Renaming pools and lanes
To change a roles title, double-click its head at the left border. A text field appears:
Here you can add the new name. To create a line break, use the Enter key. To apply your changes, click the area outside the text field.
Reordering lanes within a pool
Lanes can be moved within a pool. If a lane is moved, its semantic content (i.e. tasks, gateways etc.) will be moved with it.
There are two possibilities to move lanes:
- Drag & Drop
Click the head of a role and drag the lane to its new position, holding the mouse button pressed. Possible new positions will be marked green in the same way as described above.
To move a lane up a level, move the cursor onto the head of its parent:
Existing lanes can be moved, but not in a way that they subdivide another lane into two separate lanes.
When selecting a lane by clicking its head, arrows will appear on its left border. The arrows can be used to move a lane into a certain direction:
- The lane will be exchanged with the one above, but will stay on the same level:
- The lane will be exchanged with the one below, but will stay on the same level:
- The lane will be outdented, i.e. moved beneath the lane that currently contains it. It will be positioned above if the arrow on the upper border is used, and below, if the arrow on the lower border is used:
- The lane will be indented, i.e. become a sublane of one of its neighbors. It will be added to the one above, if the arrow on the upper border is used, and below, if the arrow for the lower border is used:
Example: Moving a new lane as a sublane into an existing lane
In the following example, the role 'Releaser' will be added to the Central purchasing, which will then be divided into Department A, Department B, and Releaser.
The lane Releaser was selected and the indent arrow will be used:
The lane was moved into the "Central purchasing". This can be redone later on by using the "outdent"-arrow:
Resizing pools and lanes
To resize elements, proceed as follows:
- Click the header of the pool or lane you want to resize.
- Click the three dots in the lower right or upper left corner of the element and drag it to a new position in order to perform the resizing.
Resizing of a pool / lane affects the parent and child pool / lanes in the following way:
- Resizing a pool: The new width is propagated to all contained lanes. Changing the height of the pool results in changing the height of all contained lanes, the height distribution is kept though.
- Resizing a lane: The new width is propagated to the parent pool and all lanes contained in it. Changing the height results in moving the lanes below it up or down.
Working with connectors
To connect two elements in your diagram, you can also use the interactive context menu. Proceed as follows:
- Select the element the connector should start from.
- Click the arrow icon in the shortcut menu and drag it to the target element. The red and green colors indicate whether the selected target is valid. For example, two start events cannot be connected in BPMN.
- A connector will be created. The type of the connector will be automatically selected in compliance with the BPMN 2.0 specification:
To insert an element into an already existing process flow, drop it onto the connector at the desired position:
In case you lack space for dropping the element onto the connector, you can make use of the create/remove space tool, see Creating more space
Connector layouting is an essential aspect as well-structured diagrams are more comprehensible for the readers. The Editor does connector layouting automatically but you can also adjust the layout yourself.
Adding connectors between existing elements
If you want to connect two elements in your diagram you can also use the interactive shortcut menu.
- Select the source element.
- Click the arrow icon in the shortcut menu and drag it to the target element. The red and green colors will give you a hint which elements can be connected. E.g. two start events cannot be connected in BPMN.
- A connector will be created. The connector type depends on the types of the elements you have connected. E.g., two BPMN tasks will be connected through a sequence flow and two pools will be connected through a message flow.
Dropping a new element on an existing connector
It is possible to position an element between two existing elements. Drag it from the shape repository to the connector between the existing elements. If adding the element at this position is allowed in BPMN, a green frame will appear around the connector. Drop the element onto the connector.
You may use this functionality together with the stretching connectors functionality.
Automatic layouting of connectors
The connector layouting feature helps you to create well-structured diagrams. Process Manager provides automatic layouting for connectors.
The auto-layout function is triggered:
- whenever a connector is created.
- whenever a element that is target or source of a connector is moved or re-sized.
Moving, adding and removing bending points
By moving the cursor over a connector, bending points of that connector are displayed. You can drag a bending point to another location in order to re-shape the connector:
A red dot appears whenever you move your cursor over a connector. To bend it, just click the red dot and drag it to its new position. Drop it there:
To remove a bending point you only need to drag it onto a straight connection between the two neighboring bending points or elements or directly on one of the neighboring bending points:
Adding and removing bending points
A red dot appears whenever you move your cursor over a connector. To bend it, just click the red dot and drag it to its new position. Drop it there.
To remove a bending point you only have to drag it onto a direct connection between the two neighbored bending points or elements.
Moving connector segments
Connector segments can be moved vertically or horizontally to improve the visual appearance of a diagram. To do so, move the cursor over the connector segment and a yellow rectangle will appear in its center. Drag and drop the yellow rectangle to move the connector to its new position.
While tasks and events usually should carry label, this only applies to certain connectors. For example, sequence flows in BPMN can carry a conditional expression and message flows can carry the name of the message to be transferred.
In order to label a connector, proceed as follows:
- Double-click on the connector you want to label or edit. An input field appears.
- Type in the label:
- As soon as you deselect the connector, the label will appear next to it.
You can now move the connector descriptor to another position to visualize logical connections to an element. Click the label and drag it to its new position:
Dragging a connector label close to its connector, will cause the label to align automatically.
Creating attached intermediate events/boundary events
The BPMN specification uses the term boundary event instead of attached intermediate event. According to the BPMN specification, attached intermediate events with the activated check box attribute Cancel activity are interrupting attached intermediate events.
Catching BPMN intermediate events can be attached to a task. Those events can occur during the execution of a task and either cancel it or are handled afterwards.
To create an attached intermediate event, drag a catching intermediate event to a task and drop it there. When hovering over a task with an intermediate event, the task will be displayed either with a green border or in red brackets. A green border indicates that the intermediate event can be attached to it:
Some intermediate events, like the link intermediate event, cannot be attached to a task, which is indicated with red corners:
By default, an attached intermediate event will cancel the task it is attached to. To make it a non-canceling event, select an attached intermediate event, open the attribute panel on the right and deactivate the checkbox Cancel activity.
Canceling events are displayed with a solid border whereas the border of non-canceling events is a dotted line:
Some start events can be marked as canceling or non-canceling as well.
Changing the type of modeling elements
The transformation function lets you switch easily from one element type to another.
For example, you can transform as follows:
- a task into a subprocess
- a plain start event into a message start event
- a collapsed pool into an expanded pool
In order to change the type of an element, proceed as follows:
- Select the element you want to transform.
- Click the below the element.
- Select the type you want to change the element to:
Some changes that affect the appearance and behavior of a modeling element but not its actual type can be done in the attribute Editor on the right. E.g., if a canceling intermediate timer event has to be changed to a non-canceling intermediate timer event, the attribute cancel activity has to be set to false.
You can easily stretch the diagram size to create compact diagrams or to create space for additional elements. Proceed as follows:
Activate shortening/stretching by clicking in the toolbar or using the shortcut Ctrl + M.
Click and hold the left mouse button on the place in the diagram where you want to create or remove free space:
Move your cursor to shorten or stretch the connector. All connectors with the same alignment on the same horizontal line will change their size, too. This works horizontally and vertically. All connectors are hidden during this step.
Release the mouse button.
- Deactivate shortening/stretching by clicking on the corresponding toolbar button or using the shortcut Ctrl-M again.
Changing the process flow orientation
By default, BPMN diagrams are aligned horizontally. The alignment can be changed if a vertical process flow is preferred. To change the alignment in a diagram, open the Editor and make sure that no element on the canvas is selected. Expand the attribute panel on the right and change the value of the attribute Diagram orientation.
If there are pools and lanes on the canvas, their orientation will be changed as well. For all other elements, the auto-layouting function will be triggered. This can change the diagram layout significantly. In order to prevent an accidental re-layouting of the whole diagram, the changes to the diagram orientation have to be confirmed explicitly.
You can check your BPMN process diagram or EPC for syntactical correctness by clicking > Check syntax the toolbar.
Errors will be highlighted. Move your cursor over one of these crosses to get more information about the error:
Is this page helpful?