BPMN Basics Explained

The behavior of a business process diagram is commonly represented with the flow of tokens. On the other hand, the dynamic view represents the actual behavior of business process cases or instances.

For example, a business process can define how a ‘user request’ is performed, where the business process instances represents actual state of individual user requests. Several process instances can be active at the same time. For example, ‘Customer A’ user’s request might be analyzed, where at the same time, ‘Customer B’ user’s request might be already approved (Figure 1).

image1

The behavior of a business process diagram is commonly represented with the flow of tokens. A token is a theoretical concept that is used as an aid to define the behavior of a process that is being performed. The behavior of process elements can be defined by describing how they interact with a token as it ‘traverses’ the structure of the process.BPMN Basics

A token is commonly generated by a start event, which can be defined explicitly (graphically represented on a business process diagram) or implicitly. Finally, a token is consumed at an end event (implicit or explicit). The path of tokens should be traceBPMN Basicsable through the graph of sequence flows, gateways, and activities within a process. Besides, tokens can be generated and consumed by flow elements (e.g. a parallel gateway generates a token for each outgoing sequence flow).

Note that a token does not traverse a message flow since it is a message that is passed down a message flow (as the name implies).

Activity behavior

When a token arrives at an activity, that activity is ready to start. The start and performance of an activity is commonly defined as an instance of the activity. This means that a new activity instance is created whenever a token arrives at that activity.

Free BPMN Downloads!

When an activity becomes ready this does not mean that the activity immediately starts. Instead, it will remain ready to perform until all the defined preconditions (such as data inputs and messages) become satisfied. If the inputs are not available when the token arrives, then the activity cannot start.

When all the required preconditions are met, the activity is being performed (it becomes active). While running (being active), its state might change to “paused,” “restarted” or “interrupted’ (e.g. through an intermediate event). The full lifecycle of an activity is explained in BPMN 2.0 specification on page 428.

When the work of the activity is finished, the activity will change to a state of “completed” and the token will move down the outgoing sequence flow, following the process path. The following chapters represents main patterns of the process flow: sequence, iteration and alternative.

Sequence flow

The next business process diagram (Figure 4) represents a set of three atomic activities or tasks, which are performed sequentially. This means that the order of activities is predefined.BPMN Basics

In order to understand the behavior of the business process diagram, the concept of tokens can be used.

Tokens represent the behavior of the sequence flow, defined on Figure 4. Each instance of the business process (e.g. a new user request) is represented with a new token which appears at the start event. According to above animation, several process instances can be active at the same time, where each instance performs equal activities in equal order. In case an activity is active, a new instance of activity might wait for being performed as long as the active instance isn’t finished. As indicated on the animation, the tokens are consumed at the end event.

Each disposal of a token indicates disposal of the respective process instance.

Iteration

The next business process diagram (Figure 5) represents a set of three atomic activities or tasks, where the first two activities (task A and task B) are involved in a process loop, which is defined with an XOR gateway. This means that tasks A and B are sequentially performed as long as the loop condition is ‘true’ (iterate = ‘yes’). When the Loop condition is ‘false’ (iterate = ‘no’) the Task C is performed and afterwards the process ends.BPMN Basics

Each instance of the business process is once again represented with a new token which appears at the start event. As evident from the animation, the tokens circle in a loop as long as the loop condition for a specific process instance is ‘true’. When the loop condition becomes ‘false’, the respective process instance continues the process flow to the task C.

BPMN Basics

Similar to sequence flow, each process instance performs equal (all) activities. However, the order of tokens is not necessary maintained, since a specific token might reach process end prior to another token, dependent on the individual loop condition.

Alternative flow

The next business process diagram (Figure 7) represents a set of three atomic activities or tasks, where Task B and Task C are performed according to the alternative process flows, which are defined by using an XOR gateway. Depending of the conditions (‘cond 1’ or ‘cond 2’), the process performs all three tasks (in case of ‘cond 1’) or only task A and task C (in case of ‘cond 2’).BPMN Basics

Similar to the iterative behavior of a business process diagram (Figure 7), a process instance, which started second to another process instance, can reach process end first, since the alternative flows (‘cond 1’ and ‘cond 2’) define, which tasks are performed in each process instance. In contrast to previous examples, the sets of performed activities differs between process instances.

Conclusion

In this article, the difference between the static and dynamic view of a business process was presented. The static view of a business process is commonly represented in a business process diagram, where the dynamic behavior of a business process requires additional information. In this article, the dynamic aspect of business processes was represented by using the concept of a ‘token’.

The article represented the flow of tokens in three main types of process flows: a sequence flow, an iterative flow and an alternative flow, where following commonalities and differences were found.

Table 1: Commonalities and differences between process instances

Common set of performed activities

Common order of performed activities

Sequence flow

YES

YES

Iteration

YES

NO

Alternative flows

NO

NO

 

The next article, in this series, will represent the behavior of uncontrolled process flows – flows that proceed without dependencies or conditional expressions.

Resources used:

  • OMG, “Business Process Model and Notation version 2.0,” 03-Jan-2011. [Online]. Available: http://www.omg.org/spec/BPMN/2.0/. [Accessed: 15-Mar-2011].
  • BPMN Modeling and Reference Guide. Future Strategies Inc., Lighthouse Pt, FL, 2008.

Free BPMN Resources

SHARE
Gregor received his PhD in 2008 in the fields of software engineering and information systems and has nearly a decade of experience in BPMN, starting to investigate and actively use BPMN since its introduction in 2004. In addition, he has participated in the development of one of the first BPMN modeling utilities - a package of plugins for Visio, which were introduced early in 2005 and is the main author of the first BPMN poster (bpmn.itposter.net), which has been translated into several languages and already exceeded 50.000 downloads.