Model data conversions can be achieved with a pattern-based transformation engine, a component included into the BPM-Xchange® enterprise application integration (EAI) software.
Russian Call Girls In Gurgaon ❤️8448577510 ⊹Best Escorts Service In 24/7 Delh...
BPM-X Pattern-based model transformations (v2)
1. 1 Whitepaper – Pattern-based model transformations
Pattern-based model transformations
Software for the interoperability of enterprise management tools
and model interchange
Whitepaper
July 2011, by
Dr. Franz Kammermeier
Volker Rautenberg
Heinz-Jürgen Scherer
BPM-X | www.bpm-x.com | Public
2. 2 Whitepaper – Pattern-based model transformations
Table of Contents
Abstract 3
Motivation 3
Interchange of model data and diagrams 4
Enterprise service bus technology 4
Object-based transformations 5
Pattern-based transformations 7
General model transformations to BPMN™ 10
Use cases for pattern-based transformations 14
Summary 14
Bibliography 15
BPM-X | www.bpm-x.com | Public
3. 3 Whitepaper – Pattern-based model transformations
Abstract
Globally acting businesses have a strong need for the interoperability of business processes on the one
hand and a tight process integration for running B2B processes (like supply chain processes) on the other
hand side. Business process management (BPM) is a management discipline which allows to align, to
structure and to optimize business processes. BPM is supported by enterprise management tools
designed for business process analysis or process integration and execution employing business process
management systems. Such tools visually represent business processes in diagrams. The underlying
visual modeling languages implement have meta-models of their own, embracing modeling rules and a
symbol-based graphical notation to express the business logic at certain levels of abstraction.
As many companies use different enterprise management tools for various purposes, a general
interoperability goal is to overcome the divide between different modeling languages and standards.
A good example is the use of process models in different domains like process analysis, software
engineering or business process execution. Each domain has its own tools, modeling languages and
focuses such as business aspects, technical details or process implementation facets.
A typical use case within a process model’s life cycle is the conversion from a vendor-specific modeling
language to a more future-oriented, open standard like the Business Process Model and Notation™
(BPMN™) maintained by the Object Management Group® (OMG®).
Such model conversions can be achieved with a pattern-based transformation engine, a component that
bridges the gap between different modeling languages, their specific meta-models and notations. The
pattern-based transformation engine is an important component included into the BPM-Xchange®1 (or
just BPM-X) enterprise application integration (EAI) software. BPM-X technology actively supports the
interoperability between different enterprise management tools by transforming enterprise architecture
and business process models not only to different data formats, but even more important transform
them between different modeling languages.
Motivation
During the past two decades the issue of model transformation has progressively moved into the scope
of interest of the scientific community as well as private companies. Particular effort has been made by
the software engineering community in facilitating vertical transformations from platform-independent
models via platform-specific models up to the generation of code. Examples for model transformation
platforms being developed for this purpose are the Meta Object Facilities Query View Transformations
(MOF QVT) of the Object Management Group [OMG2007] and the Atlas Transformation Language (ATL)
of the Atlas Group [Atlas2006].
Recently, the need for model transformations has also emerged in other domains. Especially in the field
of BPM several research efforts have been made, e.g. on the concept of a transformer connecting
1
www.bpm-x.com
BPM-X | www.bpm-x.com | Public
4. 4 Whitepaper – Pattern-based model transformations
different BPM tools, especially with respect to the ADONIS tool [KühnMurzekBayer2004].
[VanderhaegenZangScheer2005] and [HoyerBuchererSchnabel2008] both consider collaborative e-
business environments which employ different model types for internal BPMS (for example extended
event-driven process chains or eEPC models) and the external exchange platform; the authors also
introduced a process abstraction upon transforming private to public platform models. Despite of this
possible abstraction process, all proposals essentially address a horizontal transformation concept
performing transformations between models of the same type: graphical models of business processes.
[VanderhaegenZangScheer2005] proposes to connect different BPM platforms via their respective XML
export formats directly via XSLT transformation rule sets. This approach mixes two different aspects of
the transformation: reading and writing the native XML schemes for the model serializations on the one
hand and transforming abstract graph structures on the other hand. This and the fact that XSLT is not a
dedicated formalism for graph structure transformations lead to transformation rule representations
which are difficult to read and maintain.
Better suited is an approach which connects the native XML representations of the model platforms to a
dedicated generic graph-oriented representation on which transformations involving graph structure
modifications can be performed.
Interchange of model data and diagrams
The modular BPM-X software covers an EAI component especially designed for the interchange of model
data and visual diagrams between different enterprise management tools and repositories.
Enterprise service bus technology
BPM-X software employs an industry-standard enterprise service bus (ESB) technology which establishes
a classical hub-and-spoke architecture for connecting quite different enterprise management tools, e.g.
enterprise architecture (EA), business process analysis (BPA), business process management systems
(BPMS), software design, web service repositories or configuration management databases (CMDB).
The ESB consists of inbound adapters for reading and outbound adapter for writing specific data formats
connecting their native formats like XML or web service and to store the data in an intermediate neutral
format into an internal repository. This internal repository is used for the processing of a sequence of
model transformations including graphical transformations of diagrams. The adapters are designed as
software plug-ins for dynamic execution in the ESB and they basically provide the extract transform load
(ETL) functionality for converting the data scheme from a specific source format into a generic internal
format. This implements the data scheme conversion on a first transformation level not changing the
meta-model of the processed model data, followed by two additional transformation levels.
BPM-X stores the neutral format of model data including the diagrams in its internal repository using a
highly normalized graph-oriented, generic model representation. Herein a model consists of objects,
BPM-X | www.bpm-x.com | Public
5. 5 Whitepaper – Pattern-based model transformations
their data and object relationships; a diagram is a visual representation of the model with a specific
modeling language-specific notation using graphical symbols and connectors.
Figure 1: Topology scheme of the BPM-X EAI component with ESB technology
In the following the terms “model” and “diagram” are used synonymously because the applied
transformations work on both process model representations. Based on the internal generic model
representation, BPM-X performs a second level of model transformations supported by two different
transformation concepts:
1. Object-based transformations,
2. Pattern-based transformations.
Object-based transformations
A first mapping of objects, connections and attribute types is done by an object-based transformation
from the source model into the consumer model. This feature permits to interchange model data
between enterprise management platforms that using quite similar modeling languages, e.g. the
conversion of Microsoft® Office Visio® swim lane diagrams into ARIS® eEPC diagrams. This
transformation is also very useful for the interchange of model data coming from e.g. a CMDB into an
enterprise architecture (EA) tool.
BPM-X | www.bpm-x.com | Public
6. 6 Whitepaper – Pattern-based model transformations
Figure 2: Two examples for the mapping of objects
The object mapping can be flexibly combined with an attribute-based mapping of data. This allows for
conditional transformations depending on an attribute value of the source object to be mapped into
consumer objects. A split mapping creates different consumer object types from a given source object
type; a join mapping creates one consumer object type from different source object types. If the source
object type is stored as value in a data attribute of the consumer object, then round-trip transformations
are possible.
Figure 3; Attribute-based object mappings with split and join mappings
This allows for injective mapping between modeling languages even if the source and consumer meta-
models do not map the object types. The object-based mapping rules are managed by the BPM-X
Administrator’s Mapping Editor tool.
The following figures show some examples which maps a MEGA® business organizational process model
to a Microsoft® Visual Studio® UML® activity model.
BPM-X | www.bpm-x.com | Public
7. 7 Whitepaper – Pattern-based model transformations
Figure 4: Mapping of MEGA® business process organizational model to Microsoft® Visual Studio® UML® activity for software
design
The next figure describes a practical example using Sparx® Enterprise Architect with UML® activity with
BPMN™ notation mapped to TIBCO Business Studio™ BPMN™ process model. This examples converts the
model from Enterprise Architect used XMI® format into the TIBCO® used XPDL format.
Figure 5: Sparx® Enterprise Architect model converted to TIBC®O Business Studio™ BPMN™
However, there are limitations in the usage of object-based transformations: if the model graph is very
different between the source and consumer meta-model, a stronger transformation that allows
structural changes of the model graph is needed.
Pattern-based transformations
This mapping concept is implemented as an atomic operation for the improvement of the second
transformation level. Here, not only a source object type can be mapped to a correspondent consumer
object-type (respectively the mapping of connection or attribute types), but also the whole patterns
building the source model graph structure can be mapped to deviating patterns of consumer model
graph structures. Hereby objects or connections are removed and/ or newly created in the consumer
model. In the following the eEPC and the BPMN™ modeling languages are used to explain the mechanics
BPM-X | www.bpm-x.com | Public
8. 8 Whitepaper – Pattern-based model transformations
of pattern-based transformations. Nevertheless pattern-based transformations are fully independent
from the implemented source and consumer modeling languages.
Figure 6: Semi-formal graphical transformation rule for a basic pattern
The figure shows a source pattern in eEPC on the left and a corresponding target pattern in BPMN™ on
the right. The eEPC model graph structure is quite different from the BPMN™ one: the pattern-based
transformation removes the eEPC Event-1 object; its label text becomes the label of the outgoing
connection of the BPMN™ Activity A object. Hence this transformation concept facilitates the conversion
of eEPC models to a very different model language like BPMN™. Moreover, the usage of the internal
graph-oriented representation permits a user-friendly configurability of mapping rules to describe source
and consumer patterns.
The next pattern shows a more complex source pattern with a standard eEPC exclusive-or XOR branch
pattern mapped to BPMN using the implicit XOR-branch pattern.
Figure 7: Semi-formal graphical rule for a XOR-branch pattern
BPM-X | www.bpm-x.com | Public
9. 9 Whitepaper – Pattern-based model transformations
The paper “Enterprise Architecture based on Design Primitives and Patterns. Guidelines for the Design
and Development of Event-Trace Descriptions (DoDAF OV-6c) using BPMN” [ZurMuehlen2009] points
out the lack of technical interoperability between different BPA tools for the interchange of BPMN™
process models using the XML Process Definition Language (XPDL) format, standardized by the Workflow
Management Coalition (WfMC).
To overcome these existing limitations, the pattern-based mapping rules can depend on a specific
customization of a modeling language, individual modeling conventions of an organization or specific
implementations of model language standards of enterprise management tools. This flexibility for
instance allows for mapping models between different BPMN™ versions or vendor specific BPMN™
implementations.
The third transformation level is built upon model object consistency transformations e.g. to eliminate
duplicate object definitions and to consolidate object instance relationships. This concept is not further
discussed in this whitepaper.
The following figure summarizes the three levels of transformations BPM-X uses for high quality tool
interoperability and model interchange:
1. Data scheme transformations with inbound and outbound adapters.
2. Model mapping with meta-model transformation based on:
a. Object-based transformations,
b. Pattern-based transformations.
3. Model consistency transformations.
Figure 8: Three levels of transformations
BPM-X | www.bpm-x.com | Public
10. 10 Whitepaper – Pattern-based model transformations
General model transformations to BPMN™
The transformation of models to the BPMN™ modeling language involves fundamental structural
changes of the source model. The following figure shows the example of an eEPC model fragment and
the created equivalent BPMN™ model:
Figure 9: eEPC model and the thereof created BPMN model
The structural differences are striking, particularly the missing intermediate events in the BPMN™ and
the representation of organizational units or applications as pools and swim lanes.
As indicated above, the converter-internal, graph-oriented representation of models allows for the
specification of the necessary transformation rules in an easy-to-read and -configure manner. Instead of
using XSLT rules with their procedural (or functional) semantics, declarative graph-oriented XML
transformation rules or even a visual representation of the rules as graph-fragments are employed.
Nevertheless, XSLT processing is used internally to transform the declarative XML rules into executable
rules for the transformation engine, which are performed directly on the repository to identify source
patterns within a model and transform them to target patterns by a best-practice approach. Basic
patterns (e.g. described by [ZurMuehlen2009]) are used where possible and more dedicated solutions
where necessary.
In the following figure a real-life example from a BPMS application shows a more complex semi-formal
visual representation of a mapping rule from an eEPC pattern to a BPMN™ pattern.
BPM-X | www.bpm-x.com | Public
11. 11 Whitepaper – Pattern-based model transformations
Figure 10: Semi-formal graphical representation of a mapping rule
Three aspects are of importance here:
eEPC event Event-1 without an outgoing connection will be mapped to a BPMN™ end event.
The XOR rule with multiple exits will be removed and replaced by a mere BPMN™ “conditional
flow” connection labeled with the name of the corresponding eEPC event Event-1 object.
The names of organizational units Name-i will be assigned to eEPC Function-A, concatenated and
included in the name of BPMN™ voting Activity-A and additionally the test is assigned to a
BPMN™ resource of the activity object.
The eEPC Event-k objects are only included in the source pattern to point out that the XOR has multiple
exits. These objects themselves are not covered using this specific rule. They will be processed by other
mapping rules.
Fragments of the graph-oriented XML representation of the simple transformation rule given example is
shown as follows:
<TransformationRule>
<SourcePattern>
<Graph>
<Elements>
<Object name="Function1">
<type>'ST_EV'</type>
<id_object> <variable name=" idFunct"/> </id_object>
<Attribute name="functName">
<name>'AT_NAME'</name>
<value><variable name="functName"/></value>
</Attribute>
…
</Object>
<Object name="Event1">
BPM-X | www.bpm-x.com | Public
13. 13 Whitepaper – Pattern-based model transformations
The mapping rules are managed in the BPM-X Administrator tool inside the mapping rule editor. This
tool offers a graphical user interface to manage the rules stored in configuration files.
Figure 11: BPM-X Administrator pattern-based mapping rule editor
The following example shows a use case converting Metastorm® ProVision® workflow process model, a
BPMN™ like modeling language into an ARIS® EPC swim lane model. The exchange is done using open
interfaces, the ProVision® Common Interface Format (CIF) and the ARIS® import format ARIS® Markup
Language (AML).
Figure 12: Metastorm® ProVision® workflow converted to ARIS® EPC swimlane
This example shows the structural changes applied to the consumer model graph e.g. by creating the
required events to be EPC-compliant in terms of XOR split branch pattern.
BPM-X | www.bpm-x.com | Public
14. 14 Whitepaper – Pattern-based model transformations
Use cases for pattern-based transformations
There are a number of use-cases for applications using pattern-based transformations.
Migration scenario
An organization wants to deploy a new enterprise management tool into its landscape and likes to
protect its investment into the existing model repository for further use in the next tool. Or an
organization wants to convert its models from a proprietary or vendor specific modeling language into a
more future-oriented open standard like BPMNTM still using the same enterprise management tool.
Integration scenario
In collaborative B2B e-business environments interoperability has to be established between
cooperating partners using different BPM tools and modeling languages. A common case is the model
interchange between business architecture teams and software or process execution design teams for
re-use of descriptive process models in the technical environment.
Abstraction scenario
E-business cooperation partners with different BPM platforms use different notations for their private
internal business processes. An interchange of models among partners will include an abstraction
process when transforming the private models to public models using a common notation as interchange
standard. This need is particularly important for building an infrastructure based upon a service-oriented
architecture (SOA).
The abstraction scenario indicates the necessity for a more vertically-oriented transformation process,
i.e. connecting more abstract process models with models given by implementation-oriented workflow
specification or execution schemes like XPDL or BPEL.
Summary
The modular architecture of the BPM-Xchange® EAI system distinguishes adapters for reading and writing
proprietary tool-specific or standardized XML schemes like XMI® or XPDL. The actual mapping
mechanism is based on a graph-oriented, internal model representation. This separation allows for an
easy-to-maintain representation and execution on a pattern-based transformation platform. The
transformation is described by mapping rules which can be expressed in terms of a human-maintainable
graph-oriented XML format or a user friendly graphical notation.
Using this extended exchange platform enables the migration, integration and abstraction of models
from different enterprise management tools which is particularly important in the strongly growing
collaborative e-business environments of a global economy.
BPM-X | www.bpm-x.com | Public
15. 15 Whitepaper – Pattern-based model transformations
Bibliography
[OMG2007] OMG: Meta Object Facility (MOF) 2.0 Query/View/Transformation
Specification. Final Adopted Specification ptc/07-07-07. Needham,
MA: Object Management Group, July 2007
[Atlas2006] ATLAS group LINA & INRIA: ATL: Atlas Transformation Language ATL
User Manual,- version 0.7 – Nantes, February 2006
[KühnMurzekBayer2004] H.Kühn, M.Murzek, F.Bayer: Horizontal Business Process Model
Interoperability using model transformation, Position Paper for
Workshop INTERREST 2004 at ECOOP 2004, Oslo, June 2004
[VanderhaegenZangScheer2005] Dominik Vanderhaegen, Sven Zang, August-Wilhelm Scheer:
Interorganisationales Geschäftsprozessmanagement durch
Modelltransformation, Veröffentlichungen des Instituts für
Wirtschaftsinformatik, IWi Heft Nr. 182, Saarbrücken, Februar 2005
[HoyerBuchererSchnabel2008] Volker Hoyer, Eva Bucherer, Florian Schnabel: Collaborative e-
Business Process Modelling: Transforming Private EPC to Public
BPMN Business Process Models. In: Business Process Management
Workshops : BPM 2007 International Workshops, BPI, BPD, CBP,
ProHealth, RefMod, semantics4ws, Brisbane, Australia, September
24, 2007, Revised Selected Papers. Berlin : Springer, 2008.- ISBN
978-3-540-78237-7, S. 185-196
[ZurMuehlen2009] Michael zur Muehlen: Enterprise Architecture based on Design
Primitives and Patterns. Guidelines for the Design and
Development of Event-Trace Descriptions (DoDAF OV-6c) using
BPMN, 17.12.2009: US Department of Defense, Business
Transformation Agency
BPM-X | www.bpm-x.com | Public
16. 16 Whitepaper – Pattern-based model transformations
Legal notice
The product names used in this document are for identification purposes only. All trademarks and registered
trademarks are the property of their respective owners. The following trademarks may or may not be marked in
this document:
ARIS is a trademark or registered trademark of Software AG in Germany and in many countries all over the world.
BPM-Xchange is a trademark or registered trademark of BPM-X GmbH in Germany and/or other countries.
MEGA is a trademark of MEGA International S.A. in France and/or other countries.
Metastorm and ProVision are trademarks or registered trademarks of OpenText Corporation in Canada and/or other
countries.
Microsoft, Visio and Visual Studio are registered trademarks of Microsoft Corporation in the United States and/or
other countries.
Object Management Group, OMG, BPMN, Business Process Modeling Notation, Unified Modeling Language, UML and
XMI are trademarks or registered trademarks of the Object Management Group Inc. in the United States and/or
other countries.
Sparx and Enterprise Architect are trademarks or registered trademarks of Sparx Systems Pty Ltd in Australia
and/or other countries.
TIBCO and TIBCO Business Studio are either registered trademarks or trademarks of TIBCO Software Inc. and/or its
affiliates in the United States and/or other countries.
Other company, product, and service names may be trademarks, registered trademarks, or service marks of other
owners.
BPM-X | www.bpm-x.com | Public