Creating BPMN objects in ARIS
In this article I'm going to describe the handling for creating new objects in BPMN 2.0 models. Since the symbol bar apparently does not contain all symbols which are known in BPMN 2.0, there must be a different way to use or to place them. This is subject of the following article.
Placing simple objects
Let's start modeling a simple process diagram.
First of all, we create a BPMN process diagram (2.0 beta). Then, we're going to model the process shown above. The start event of our process is available in the symbol bar, so we are able to place it easily. While placing the object, the designer offers all symbol variants for this start event, which are allowed to be placed at this location due to the BPMN specification.
As you can see, BPMN does not allow placing compensation, error and escalation start events in a top-level process, so it is also not possible to place them in an ARIS model.
In our case, the initial symbol is the one we are looking for. It is preselected and marked bold in the popup menu. That means, it has been already assigned to the object. So no additional effort is needed here. The popup disappears again by clicking with the mouse somewhere next to it or by pressing the escape key.
The symbol bar contains only the base symbol types for BPMN. More symbols are offered by BPMN designer while placing the symbol. The designer only offers the symbols, which are allowed in the given context according to the BPMN 2.0 specifications.
In order to place the next object "Prepare Working Environment" as a manual task, we are going to use the mini toolbar.
In this case the task is the first symbol within the mini toolbar (use the tooltip to decide between similar symbols). While placing the task next to the start event, the designer first places an abstract task symbol while offering us all other BPMN task symbols available. Now the mouse or the cursor keys can be used for choosing the manual task symbol.
The parallel gateway and the other two tasks can be placed in the same way.
Placing Throwing Events
Placing the "message intermediate event (throw)" is a little bit different. First, you have to choose the message event symbol from the popup menu. After that, a second popup appears, which asks you about the catching and throwing variant of this symbol.
Note that the second popup menu offers only additional symbol variants, if they are allowed by the BPMN specifications. That means it doesn't offer the throwing variant for boundary intermediate events or if there is no throwing (or catching) variant for the symbol at all.
Creating structures that are more complex
In order to create structures that are more complex (like subprocesses and boundary events), we will change the structure of our process (see below).
The semantic of the process is almost the same. Additionally, the process shows what happens if some other events occur (like running out of time or getting network problems while publishing the articles).
Our former parallel gateway and its paths have been substituted with a "Parallel Box" subprocess. This will be modeled by selecting the symbol "Subprocess" from the symbol bar or the mini toolbar. In this case, the initial symbol is the correct one.
Dragging the mouse while placing the new object allows you to resize the object directly. You get enough space to place the tasks into it later on.
In order to create the child elements of the subprocess, you can simply place the objects there. The ARIS Designer is going to create an implicit relationship between the task and the enclosing subprocess.
(Advanced) Implicit relationships: Independent from BPMN, it is possible to create an implicit relationship between two objects. In order to do this, just place one object within another object. Up to now moving the enclosing object moves the embedded object as well. If this is not the case, then no connection has been created or more precisely: no connection is allowed between both objects. In ARIS Business Designer generally a dialog appears which shows the allowed connections. This dialog does usually not appear in BPMN models, because there is always only one connection type which can be created as an implicit connection.
Boundary Intermediate Events
Modeling boundary intermediate events is very similar to placing objects inside subprocesses. Choose the symbol "Intermediate event" from symbol bar or mini toolbar and place it directly on the border of the subprocess. Now the event is attached to the activity and cannot be moved away from it (an implicit connection has been created).
If you are going to create a boundary event, which should be attached to a task, than you can place it also inside the task. The boundary object will then be placed centered at the bottom of the task.
In order to place a timer intermediate event (non-interrupting), you have first to choose the more general type: "Timer event". Afterwards, an additional popup will be shown, where you can choose interrupting or non-interrupting.
The initial action for placing a throwing and a non-interrupting intermediate event is identical. The difference is , that the throwing events are not allowed as boundary events. The same applies for interrupting and non-interrupting events. They are not allowed on top-level, but only as boundary objects.
Placing Text Annotations
One symbol is still missing: text annotation of a connection.
In order to assign a text annotation to a connection, you have to select the connection first, and than choose the symbol "Text annotation" from the symbol bar. The preview now indicates that after placing the symbol, there will be a relationship between connection and text annotation.
You can also create the text annotation without preselecting the connection. Then you have to place it near to the connection. Text annotations, which should be connected to an object (not to a connection), can be placed like all other objects.
Now everyone should be able to place most of the symbols of BPMN 2.0. Even though I haven't described how to place every single, it should be easily possible to work with embedded subprocesses and non-interrupting start events (see process below).
Note: Further articles about special handling and improvements for BPMN 2.0 will follow. Take a look at this list of articles about BPMN 2 support in ARIS.