There are many different notations and formalisms for modelling business processes and workflows. These notations and formalisms have been introduced with different purposes and objectives. Later, influenced by other notations, comparisons with other tools, or by standardization efforts, these notations have been extended in order to increase expressiveness and to be more competitive. This resulted in an increasing number of notations and formalisms for modelling business processes and in an increase of the different modelling constructs provided by modelling notations, which makes it difficult to compare modelling notations and to make transformations between them. One of the reasons is that, in each notation, the new concepts are introduced in a different way by extending the already existing constructs. In this chapter, the authors go the opposite direction: showing that it is possible to add most of the typical extensions on top of any existing notation or formalism—without changing the formalism itself. they introduce blocks with some additional attributes defining their initiation and termination behaviour. This serves two purposes: First, it gives a clearer understanding of the basic constructs and how they can be combined with more advanced constructs. Second, it will help combining different modelling notations with each other. Note that, though they introduce a notation for blocks in this chapter, they are not so much interested in promoting this notation here. The notation should just prove that it is possible to separate different issues of a modelling notation, and this way making its concepts clearer and the interchange of models easier. A fully-fledged block notation with a clear and simple interface to existing formalisms is yet to be developed.
2. Background And Motivation
In this section, we give a more detailed motivation for our fresh look at modelling constructs and the research direction we are heading at. Actually, the general idea behind this work is summarized in a motto coming from the bible:
For the letter kills, but the Spirit gives life.
2. Corinthians 3:6b (NIV)
Our endeavour is to understand the spirit of business processes and what is needed to model them—unspoilt by the letter of a particular modelling notation. Only in the end, we try to capture this spirit in letters, i. e. in concrete modelling constructs—in order to prove that the proposed concepts can be made work.
Key Terms in this Chapter
Modelling Construct: A modelling construct is the basic syntactical units provided by a modelling notation for building a model.
Non-Local Synchronization: Synchronization means that two or more threads of control wait for each other. A synchronization is called non-local when the exact kind and number of the different threads one waits for is not know locally at a workflow construct. A typical example is the non-local OR-join construct.
Business Process Model: A business process model is a more or less formal and more or less detailed description of the persons and documents involved in the execution of a business process and its task and the rules governing their execution.
Modelling Notation / Formalism: A modelling notation defines the rules according to which a model is built. It defines the textual or graphical syntax of a model. A modelling notation is called a modelling formalism if, along with the syntax, a precise meaning is defined.
Block: Blocks are a way of structuring a business process model in disjoint parts. In the context of this chapter, they are also used as the scope for certain modelling constructs such as non-local synchronization. They are independent of a particular modelling formalism and can be used for integrating models for different aspects of the same business process.
Workflow Pattern: Workflow patterns were introduced in order to better understand what needs to be covered by notations for business processes modelling and for comparing modelling notations. They distil typical situations in business processes that need to be modelled.