Nowadays, business enterprises often need to dynamically reconfigure their internal processes in order to improve the efficiency of the business flow. However, modifications of the workflow usually lead to several problems in terms of deadlock freedom, completeness and security. A solid solution to these problems consists in the application of model checking techniques in order to verify if specific properties of the workflow are preserved by the change in configuration. Our goal in this work is to develop a formal verification procedure to deal with these problems. The first step consists in developing a formal definition of a BPMN model of a business workflow. Then, a given BPMN model is translated into a formal model specified in Promela. Finally, by using the SPIN model checker, the correctness of the reconfigured workflow is verified.
1
Model Checking of BPMN Models for
Reconfigurable Workflows
Juan Carlos Polanco Aguilar1, Koji Hasebe1, Manuel Mazzara2, and Kazuhiko Kato1
1Graduate School of Systems and Information Engineering, University of Tsukuba
2School of Computing Science, Newcastle University, UK
Abstract—Nowadays, business enterprises often
need to dynamically reconfigure their internal
processes in order to improve the efficiency of the
business flow. However, modifications of the workflow
usually lead to several problems in terms of deadlock
freedom, completeness and security. A solid solution
to these problems consists in the application of model
checking techniques in order to verify if specific
properties of the workflow are preserved by the
change in configuration. Our goal in this work is to
develop a formal verification procedure to deal with
these problems. The first step consists in developing a
formal definition of a BPMN model of a business
workflow. Then, a given BPMN model is translated into
a formal model specified in Promela. Finally, by using
the SPIN model checker, the correctness of the
reconfigured workflow is verified.
I. PURPOSE
Web services have recently seen a rapid growth
of
their
usability
and
functionality.
The
advantages that this technology can provide to
the business framework are also growing fast. The
interaction from different services allow the user
to discover and utilize a better transactional side
of the Internet. Web services also provides several
benefits such as interoperability and reusability
across platforms, applications and programming
languages by the introduction of standards and
integration profiles.
Although this technology has provided many
advantages, some of the services still require to
be flexible and available for different changes in
their business logic. Reconfiguration is one way to
achieve such a flexibility and then improving
functionality and efficiency of existing business
process. In [1], [2] and [3], the reconfiguration
issue has been deeply investigated from both the
theoretical and practical point of view. In this
series
of
work
modelling,
analysis
and
implementation have been developed and
discusses for a specific case study of workflow
reconfiguration. In [4], instead, a synopsis of
formalisms is presented and, according to specific
criteria, the formalisms have been evaluated for
their
suitability
to
model
dynamic
reconfiguration.
As detailed in the papers mentioned above,
once the reconfiguration of a business process has
been performed, some (or all) of the system
requirements might not hold anymore. That is
why we will use a verification technique called
model checking. Model checking is useful to verify
correctness since it provides ways for simulating
and testing a systems with data structures which
can assume many different values. Furthermore,
if the requirements are not met in the
reconfiguration, model checking will produce a
counterexample which can be used to pinpoint
the source of the error.
The goal of our research is to develop a formal
method for verifying the correctness of a
reconfigurable business model. This purpose is
achieved by developing a procedure that consists
of several steps. We will now explain our
approach and the procedure we developed. For
further details on what a formal method is, please
consult [5] and [6].
II. OUR APPROACH
Some verification techniques for business
process models have been already presented in
the past. For example, in [7] the behavioral
specification of an application problem has been
analyzed by using model checking. In [8], the same
technique hs been used to detect potential
information leakage in a business model. The
differences between these works and ours are as
follows. First, in this study we investigate the
reconfiguration issue in BPMN model. Second, we
intend to develop an algorithm that will translate
2
the reconfigured BPMN model into a Promela
model and, by using a model checking tool, verify
if the properties are valid in this reconfigured
model. For this purpose we introduce a formal
specification of the BPMN model as an
intermediate language. Fig.1 summarizes our
verification procedure.
Figure 1.
Procedure of the Verification
As for the first part of the procedure, we have
the original (old) configuration of our business
process defined as a BPMN diagram. After we
have introduced the concept of reconfiguration,
we achieve our reconfigured (new) BPMN
diagram. This new model then needs to be
explained by a formal specification. This formal
specification will show the elements necessary to
apply the automatic translation procedure which
will generate a Promela model. This Promela
model is necessary for the verification procedure
together with the system requirements expressed
in a LTL formulas. We will make use of the SPIN
model checker as a tool for verifying the model,
This content is AI-processed based on open access ArXiv data.