=Paper=
{{Paper
|id=Vol-489/paper-2
|storemode=property
|title=Faster and Better Business Process Modeling with the IBM Pattern-based Process Model Accelerators
|pdfUrl=https://ceur-ws.org/Vol-489/paper2.pdf
|volume=Vol-489
|dblpUrl=https://dblp.org/rec/conf/bpm/FavreGKKMMVW09
}}
==Faster and Better Business Process Modeling with the IBM Pattern-based Process Model Accelerators==
Faster and better Business Process Modeling with the
IBM Pattern-based Process Model Accelerators
Cédric Favre1 , Thomas Gschwind1 , Jana Koehler1 , Wolfgang Kleinöder1 , Alexander
Maystrenko1 , Krenar Muhidini3 , Hagen Völzer1 , and Janette Wong2
1
IBM Zurich Research Laboratory, Säumerstrasse 4, CH-8803 Rüschlikon, Switzerland
2
IBM Software Group
3
Jacobs University Bremen
Abstract. The IBM Pattern-based Process Model Accelerators add a set of pat-
terns, transformations, refactoring operations, and a control-flow analysis feature
to IBM WebSphere Business Modeler that make it easy for users to apply com-
mon best practices when modeling business processes. As a result, users create
and edit higher-quality process models and they benefit from the automation of
tedious editing tasks resulting in productivity gains and a more enjoyable user ex-
perience. This demo targets participants with interest on faster process modeling
approaches leading to higher-quality process models.
1 Introduction
Many tools exist that allow users to model business processes. Traditionally, these tools
use a drawing approach where users drag and drop modeling elements on the canvas
and connect them by control and data flow. The loose connection between the drawing
operations and the actual process modeling leads to the following problems: Manual
operations slow down the modeling process and switch the user’s attention from the
modeling problem to a drawing exercise. Users often lose track of the control-flow that
they design when connecting single modeling elements and adding gateways to their
process model. As a result, many traditionally created process models contain modeling
errors and, for example, cannot be correctly simulated.
We demonstrate the IBM Pattern-based Process Model Accelerators1 for IBM Web-
Sphere Business Modeler that allow users to compose business process models from
patterns and to apply semantically correct change operations to the entire model or se-
lected parts. Although the business process patterns are well-known from the literature,
e.g., as workflow patterns [1], there are no modeling tools that would support users in
correctly applying patterns. Only the ADEPT 2 editor [2] supports some block-oriented
editing patterns. Our accelerators also contain a control-flow analysis feature that de-
tects and displays control-flow errors.
1
See http://www.ibm.com/developerworks/websphere/tutorials/0906_gschwind/.
2 Patterns, Transformations, and Refactoring operations
The accelerators are based on the pattern-based process editing techniques described
in [3]. They are beneficial in many process modeling scenarios, e.g., when creating a
process model from scratch, refining an existing process model, or correcting errors.
For easy access to the accelerators, we have designed a palette as shown in Figure 1
that provides an icon for each available pattern, transformation, and refactoring opera-
tion. An accelerator is applied by optionally selecting some model elements and then
clicking on one of the icons in the palette.
Sequence, Alternative Compound, Parallel Compound, Loop
Insert Task
Insert Process
Alternative Branch
Parallel Branch
Duplicate Element
Merge Elements
Replace Global Process
Remove Region
Reorder Sequence
Convert to Alternative Compound
Convert to Sequence
Close Branches
Merge Stop Nodes
Join Stop Nodes Associate Data
Activity to the Gateway Form Extract Subprocess Autolink Elements
Automatically Order Branches Inline Subprocess Toggle Gateways
Fig. 1. Accelerators Palette.
Patterns describe frequently used modeling solutions for recurring process scenar-
ios and allow users to model processes by composing basic process fragments. To in-
stantiate a pattern, a wizard is available that contains a picture and description of the
pattern as well as fields to enter parameters such as the names of gateways and activities
and their data inputs or outputs, see Figure 2. In addition, the Alternative and Parallel
Branch patterns allow users to correctly create models with unstructured, i.e., non-block
structured control-flow.
Transformations allow users to easily apply a complex change to a process model.
A transformation can be understood as a macro-editing operation that combines a se-
quence of several editing steps that add, delete, or modify elements in the process
model. For example, the Autolink Elements transformation adds control-flow connec-
tions to elements that are already placed on the canvas following a recommended graph-
ical layout.
Refactoring operations allow users to restructure an existing process model without
changing its external behavior and have been inspired by known software refactoring
practices, see for example [4]. Refactoring operations are used to improve the readabil-
ity and to simplify the structure of the process model. For example, the Close Branches
operation manipulates the flow of a process model, whereas the Extract and Inline Sub-
2
Fig. 2. Wizard of the Alternative Compound Pattern.
process operations allow users to reorganize the model elements across the subprocess
hierarchy found in process model.
3 Control-flow analysis
Composing process models using patterns guarantees that process models are free of
control-flow errors. However, many traditionally created models contain control-flow
errors. As it is likely that users may interleave pattern application with manual edit-
ing steps, it is necessary to make it easier to detect and locate control-flow errors.
Therefore, the accelerators contain a control-flow analysis component that embeds a
soundness checker into a business-user-oriented interface. The checker implements the
classical notion of soundness to characterize the correctness of a process model [5]
and distinguishes two types of control-flow errors: deadlock and lack of synchroniza-
tion. As analysis technique, state-space exploration is used, combined with the parsing
technique provided by the Process Structure Tree (PST) [6] that decomposes a process
model into smaller fragments that can be analyzed in isolation. A recent case study [7]
has shown that models can be checked within a few milliseconds, which allows users
to perform an analysis at any time without slowing down the editing process.
The user triggers the analysis for a process or a process catalog. The analysis re-
sults are displayed in form of a message indicating the error type, the erroneous process
fragment, and, if possible, the cause of the error by some identified model element(s).
By clicking on a message, the error is visualized in the process model by highlighting
the edges of the process fragment in which the error was localized and marking the
identified model element(s), see Figure 3. One run of the analysis can detect several in-
dependent control-flow errors within one process model—up to one error per fragment.
3
Error: Fragment between Work Permit Holder? and Join contains a deadlock
caused by (Work Permit Holder?) and detected on (Join)
Fig. 3. A deadlock in a process model and the corresponding error message.
Once an error has been identified, transformations can be used to correct the error.
By linking some of the transformations to the PST, the behavior of these transforma-
tions can be controlled. For example, the Toggle Gateway transformation toggles AND
and XOR gateway’s logic based on the PST. In an unsound fragment, only a selected
gateway will be toggled, whereas in a sound fragment, all gateways will be toggled that
are necessary to preserve the fragment’s soundness.
4 Conclusion
In this demo, we present the IBM Pattern-based Process Model Accelerators that add
a set of patterns, transformations, refactoring operations, and a control-flow analysis
feature to the IBM WebSphere Business Modeler tool. By using the accelerators, users
move away from traditional process drawing to an approach in which they apply com-
mon best practices. Complex process models can be created much faster and are free
of control-flow errors. The benefits of an improved process model quality are manifold
when simulating processes, translating them into execution language, or executing them
directly by a workflow engine.
References
1. Van Der Aalst, W.M.P., Ter Hofstede, A.H.M., Kiepuszewski, B., Barros, A.P.: Workflow
patterns. Distrib. Parallel Databases 14(1) (2003) 5–51
2. Reichert, M., Rinderle, S., Kreher, U., Dadam, P.: Adaptive process management with
ADEPT2. In: 21st Int. Conference on Data Engineering, IEEE (2005) 1113–1114
3. Gschwind, T., Koehler, J., Wong, J.: Applying patterns during business process modeling. In:
BPM-08. Volume 5240., Springer LNCS (2008) 4–19
4. Fowler, M.: Refactoring — Improving the Design of Existing Code. Addison-Wesley (2008)
5. Aalst, W.M.P.v.d., Hirnschall, A., Verbeek, H.M.W.: An alternative way to analyze workflow
graphs. In: CAiSE-02. Volume 2348., Springer LNCS (2002) 535–552
6. Vanhatalo, J., Völzer, H., Koehler, J.: The refined process structure tree. In: BPM-08. Volume
5240., Springer LNCS (2008) 100–115
7. Fahland, D., Favre, C., Jobstmann, B., Koehler, J., Lohmann, N., Völzer, H., Wolf, K.: Instan-
taneous soundness checking of industrial business process models. In: BPM-09. Accepted.
4