From BPMN Process Models to BPEL Web Services
- ISBN: 0769526691
- DOI: 10.1109/ICWS.2006.67
Abstract
The business process modelling notation (BPMN) is a graph-oriented language in which control and action nodes can be connected almost arbitrarily. It is supported by various modelling tools but so far no systems can directly execute BPMN models. The business process execution language for Web services (BPEL) on the other hand is a mainly block-structured language supported by several execution platforms. In the current setting, mapping BPMN models to BPEL code is a necessary step towards unified and standards-based business process development environments. It turns out that this mapping is challenging from a scientific viewpoint as BPMN and BPEL represent two fundamentally different classes of languages. Existing methods for mapping BPMN to BPEL impose limitations on the structure of the source model. This paper proposes a technique that overcomes these limitations. Beyond its direct relevance in the context of BPMN and BPEL, this technique addresses difficult problems that arise generally when translating between flow-based languages with parallelism
From BPMN Process Models to BPEL Web Services
Chun Ouyang, Marlon Dumas, Arthur H.M. ter Hofstede
Faculty of Information Technology
Queensland University of Technology
Brisbane, Australia
{c.ouyang,m.dumas,a.terhofstede}@qut.edu.au
Wil M.P. van der Aalst
Department of Technology Management
Eindhoven University of Technology
Eindhoven, The Netherlands
{w.m.p.v.d.aalst}@tm.tue.nl
Abstract
The Business Process Modelling Notation (BPMN) is a
graph-oriented language in which control and action nodes
can be connected almost arbitrarily. It is supported by
various modelling tools but so far no systems can directly
execute BPMN models. The Business Process Execution
Language for Web Services (BPEL) on the other hand is a
mainly block-structured language supported by several ex-
ecution platforms. In the current setting, mapping BPMN
models to BPEL code is a necessary step towards unified
and standards-based business process development envi-
ronments. It turns out that this mapping is challenging
from a scientific viewpoint as BPMN and BPEL represent
two fundamentally different classes of languages. Existing
methods for mapping BPMN to BPEL impose limitations
on the structure of the source model. This paper proposes
a technique that overcomes these limitations. Beyond its di-
rect relevance in the context of BPMN and BPEL, this tech-
nique addresses difficult problems that arise generally when
translating between flow-based languages with parallelism.
1. Introduction
The Business Process Execution Language for Web Ser-
vices (BPEL) [4] is emerging as a de-facto standard for
implementing business processes on top of web services
technology. Numerous platforms support the execution of
BPEL processes. Some of these platforms also provide
graphical editing tools for defining BPEL processes. How-
ever, these tools directly follow the syntax of BPEL with-
out elevating the level of abstraction to make them usable
during the analysis and design phases of the development
cycle. On the other hand, the Business Process Modelling
Notation (BPMN) [10] has attained some level of adop-
tion among business analysts and system architects as a
language for defining business process blueprints for sub-
sequent implementation. Despite being a recent proposal,
BPMN is already supported by more than 30 tools (see
∗This work is supported by the Australian Research Council under the
Discovery Grant “Expressiveness Comparison and Interchange Facilitation
between Business Process Execution Languages” (DP0451092).
www.bpmn.org). Consistent with the level of abstraction
targeted by BPMN, none of these tools supports the exe-
cution of BPMN models directly. Instead, some of them
support the translation of BPMN to BPEL.
Close inspection of existing translations from BPMN to
BPEL, e.g. the one sketched in [10], shows that these trans-
lations fail to fulfill the following key requirements: (i)
completeness, i.e. applicable to any BPMN model; (ii) au-
tomation, i.e. capable of producing target code without re-
quiring human intervention to identify patterns in the source
model; and (iii) readability, i.e. consistently producing tar-
get code that is understandable by humans. The last require-
ment is important since the BPEL definitions produced by
the translation are likely to require refinement (e.g. to spec-
ify data manipulation expressions) as well as testing and
debugging. If BPEL was only intended as a language for
machine consumption and not for human use, it could be re-
placed by mainstream programming languages or even ma-
chine languages, but this would defeat the purpose of BPEL
as a domain-specific language for service composition.
The limitations of existing BPMN-to-BPEL translations
are not surprising as BPMN and BPEL represent two fun-
damentally different classes of languages. BPMN is graph-
oriented while BPEL is mainly block-structured (albeit pro-
viding graph-oriented constructs with syntactical limita-
tions). Mapping from graph-oriented to block-structured
languages is challenging. In the case of flowcharts, map-
ping unstructured flowcharts to structured ones is a well-
understood problem. However, graph-oriented process def-
inition languages extend flowcharts with parallelism and
other constructs such as deferred choice [1].
This paper proposes a translation from BPMN to BPEL
addressing the above requirements. This is a first step to-
wards model-driven, standards-based tools for developing
process-oriented web services. Beyond its direct relevance
in this context, the proposed technique addresses difficult
problems that arise when translating from graph-oriented
process languages to block-structured ones.
Section 2 gives an overview of BPMN and BPEL and
reviews related work. Section 3 presents an algorithm for
translating BPMN into BPEL. The translation algorithm is
then illustrated through a case study in Section 4. Finally,
Section 5 concludes and outlines future work.
IEEE International Conference on Web Services (ICWS'06)
0-7695-2669-1/06 $20.00 © 2006
Sign up today - FREE
Mendeley saves you time finding and organizing research. Learn more
- All your research in one place
- Add and import papers easily
- Access it anywhere, anytime



