2 BPMN by Example
2.1 A First BPMN Model
As a starting point, a simple BPMN process model is considered. The model of posting a job in figure 1 can be directly understood by most people who previously have been concerned with any kind of process modeling. The way of modeling is similar to well-known flow charts and activity diagrams.
Figure 1: A simple BPMN model
A business department and the human resources department are involved in the process "Post a Job". The process starts when an employee is required. The business department reports this job opening. Then the human resources department writes a job posting. The business department reviews this job posting.
At this point, there are two possibilities: Either the job posting is okay, or it is not okay. If it is not okay, it is reworked by the human resources department. This is once more followed by the business department reviewing the job posting. Again, the result can be okay or not okay. Thus, it can happen that the job posting needs to be reviewed multiple times. If it is okay, the posting is published by the human resources department, and the end of the process is reached.
In reality, the process for creating and publishing a job posting can be much more complex and extensive. The presented example is - like all examples in this book - a simplification in order to have small and easily understandable models which can be used for explaining the different BPMN elements.
2.2 BPMN Constructs Used
Below, each element of the model in figure 1 is explained in more detail.
The entire process is contained in a pool. This is a general kind of container for a complete process. In the example above, the pool is labeled with the name of the contained process.
Every process is situated within a pool. If the pool is not important for understanding the process, it is not required to draw it in the diagram. In a process diagram which does not show a pool, the entire process is contained in an invisible, implicit pool.
Pools are especially interesting when several pools are used in order to model a collaboration, i.e. the interplay of several partners' processes. Each partner's process is then shown in a separate pool. This will be described in chapter 5 .
The pool from figure 1 is partitioned into two lanes. A lane can be used for various purposes, e.g. for assigning organizational units, as in the example, or for representing different components within a technical system. In the example, the lanes show which of the process's activities are performed by the business department and which by the human resource department.
Pools and lanes are also called "swimlanes". They resemble the partitioning of swimming pools into lanes. Every participant of a competition swims only in his own lane.
The process itself begins with the start event "Employee required". Every process usually has such a start event. Its symbol is a simple circle. In most cases it makes sense to use only one start event, not several ones.
A rounded rectangle represents an activity. In an activity something gets done. This is expressed by the activities' names, such as "Report Job Opening" or "Review Job Posting".
The connecting arrows are used for modeling the sequence flow. They represent the sequence in which the different events, activities, and further elements are traversed. Often this is called control flow, but in BPMN there is a second type of flow, the message flow, which influences the control of a process as well, and is therefore some kind of control flow, too. For that reason, the term "sequence flow" is used. For distinguishing it from other kinds of flow, it is important to draw sequence flows with solid lines and filled arrowheads.
The process "Post a J