Extending BPMN 2.0
-
Upload
lstroppi -
Category
Technology
-
view
3.762 -
download
6
description
Transcript of Extending BPMN 2.0
Extending BPMN 2.0:Method and Tool Support
Centro de Investigación y Desarrollo de Ingeniería en Sistemas de Centro de Investigación y Desarrollo de Ingeniería en Sistemas de InformaciónInformación
Universidad Tecnológica Nacional – Facultad Regional Santa Fe
Stroppi, L.J.R., Chiotti, O., Villarreal, P.D.: Extending BPMN 2.0: Method and Tool Support. In: BPMN 2011: Proceedings of the 3rd International Workshopand Practitioner Day on BPMN. (November 2011)
Agenda Introduction
Method for the Development of BPMN Extensions
Tool Support
Conclusions
Introduction The BPMN 2.0 metamodel provides an
extension mechanism.
Supports the approach of Extension by Addition.
This approach differsfrom the Extension by Specialization providedby UML Profiles.
Introduction
MOF representation XSD representation
Comparison of the two representations of the BPMN Extension Mechanism.
Introduction
MOF representation XSD representation
Comparison of the two representations of the BPMN Extension Mechanism.
BPMN Extension Mechanism There are two major pitfalls in the
development BPMN extensions:
Lack of methodological guides supporting the BPMN extension approach.
Lack of graphical notations for representing the structure of extensions.
Goals To propose a method for the
development of BPMN extensions that enables:
The conceptualization of extensions. Their graphical representation in terms
of the BPMN extension mechanism. Their transformation into XSD
Documents that can be processed by BPMN tools.
To develop a tool supporting the proposed method.
MDA-based Method for the Development of BPMN 2.0
Extensions
STEPS:
1. Definition of a Conceptual Domain Model of an Extension by using UML (CDME).
2. Definition of a BPMN Extension Model (BPMN+X ).
3. Transformation of a BPMN+X model into an XML Schema Extension Definition Model.
4. Transformation of an XML Schema Extension Definition Model into an XML Schema Extension Definition Document.
MDA-based Method for the Development of BPMN Extensions
STEPS:
1. Definition of a Conceptual Domain Model of an Extension by using UML (CDME).
2. Definition of a BPMN Extension Model (BPMN+X ).
3. Transformation of a BPMN+X model into a XML Schema Extension Definition Model.
4. Transformation of an XML Schema Extension Definition Model into an XML Schema Extension Definition Document.
MDA-based Method for the Development of BPMN Extensions
Create a UML model describing: The concepts of the domain to be
represented disregarding any restriction imposed by the BPMN extension mechanism.
The concepts of a CDME are then preliminarily characterized as: BPMN Concepts: Defined in the BPMN
metamodel. Extension Concepts: Exclusive of the
modeled domain.
MDA-based Method for the Development of BPMN Extensions
BPMN Concept Extension Concept
MDA-based Method for the Development of BPMN Extensions
Case Study: Work Distribution Extension Alternative conceptual models
STEPS:
1. Definition of a Conceptual Domain Model of an Extension by using UML (CDME).
2. Definition of a BPMN Extension Model (BPMN+X ).
3. Transformation of a BPMN+X model into a XML Schema Extension Definition Model.
4. Transformation of an XML Schema Extension Definition Model into an XML Schema Extension Definition Document.
MDA-based Method for the Development of BPMN Extensions
MDA-based Method for the Development of BPMN Extensions
BPMN+X is a UML Profile for the specification of BPMN extensions: It is based on the BPMN extension
mechanism. It consists of the following stereotypes:
Procedure to derive a BPMN+X model from a CDME. First Stage:
Create an ExtensionModel named as the CDME
Populate it with the BPMN+X elements that map directly to the characterized concepts of the CDME.
MDA-based Method for the Development of BPMN Extensions
CDME UML Package
BPMN+X ExtensionModel
BPMN ConceptCDME UML Class
BPMN ConceptCDME UML Enum
BPMN+XBPMNElement
BPMN+XBPMNEnum
Extension ConceptCDME UML Enum
BPMN+XExtensionEnum
Case Study: Work Distribution Extension
MDA-based Method for the Development of BPMN Extensions
Procedure to derive a BPMN+X model from a CDME. Second Stage: Apply rules to decide the representation of CDME properties:
Class c Property p
Type t Representation of p
1 BPMN Concept Original Data Type BPMN Concept
BPMNElement Property
2 BPMN Concept New a) Data Typeb) BPMN Concept
c) Ext. Concept
ExtensionAttributeDefinition
3 BPMN Concept New Ext. Concept ExtensionRelationship
4 Extension Concept
New a) Data Type
b) BPMN Concept
c) Ext. Concept
ExtensionElement Property /
ExtensionAttributeDefinition
MDA-based Method for the Development of BPMN Extensions
The representation of c and t is the inferred based on the representation of p
Subclass c Generalization g
Superclass s Representation of g
5 BPMN Concept Original BPMN Concept BPMNElement Generalization
6 BPMN Concept New BPMN Concept Invalid
7 BPMN Concept New a) Ext. Conceptb) BPMN Concept
ExtensionRelationship
8 Extension Concept
New a) Ext. Conceptb) Ext. Concept
ExtensionElement / ExtensionDefinition Generalization
MDA-based Method for the Development of BPMN Extensions
The representation of c and s is then inferred based on the representation of g
Procedure to derive a BPMN+X model from a CDME. Second Stage: Apply rules to decide the representation of CDME generalizations:
MDA-based Method for the Development of BPMN Extensions
Rule 3Rule 2 Rule 7
Case Study: Work Distribution Extension
STEPS:
1. Definition of a Conceptual Domain Model of an Extension by using UML (CDME).
2. Definition of a BPMN Extension Model (BPMN+X ).
3. Transformation of a BPMN+X model into a XML Schema Extension Definition Model.
4. Transformation of an XML Schema Extension Definition Model into an XML Schema Extension Definition Document.
MDA-based Method for the Development of BPMN Extensions
Transformation of a BPMN+X model into a XML Schema Extension Definition Model.
MDA-based Method for the Development of BPMN Extensions
BPMN+X Profile Metamodel of XML Schema
MDA-based Method for the Development of BPMN Extensions
Case Study: Work Distribution Extension
STEPS:
1. Definition of a Conceptual Domain Model of an Extension by using UML (CDME).
2. Definition of a BPMN Extension Model (BPMN+X ).
3. Transformation of a BPMN+X model into a XML Schema Extension Definition Model.
4. Transformation of an XML Schema Extension Definition Model into an XML Schema Extension Definition Document.
MDA-based Method for the Development of BPMN Extensions
An XML Schema document is generated. By means of a straightforward model to
code transformation.
The Structure of the resulting documents is the following:
MDA-based Method for the Development of BPMN Extensions
instanceOf XML Schema BPMN Metamodel Definition Document
XML BPMN Model Definition Document
XML Schema Extension Definition Document
import
import
XSD Document Defining the Extension
MDA-based Method for the Development of BPMN Extensions
BPMN Model Importing an Extension
MDA-based Method for the Development of BPMN Extensions
Tool Support
Tool Support
Structure of the developed tool Available at: http://code.google.com/p/bpmnx/
EMF
Eclipse Platform
UML2 / UML2 Tools Plugins
QVT JET
BPMN+XEclipse-based
Plug-in
BPMN+XTo XML Schema M2M
Transformation
XML Schema M2C
Transformation
1
2 3 4
Conclusions
This work proposed an MDA-based method for the development of BPMN 2.0 extensions
It encourages to start by developing a conceptual model of the extension (CDME).
It defines a procedure for deriving a unique BPMN+X model representing an extension from potentially different CDMEs by applying different rules.
It enables producing XML Schema Documents defining extensions that can be processed by compliant BPMN tools.
Conclusions
This work also proposed the BPMN+X profile
It enables defining BPMN extensions graphically.
It is better suited than XML Schema to be used by people.
Conclusions
A tool supporting the method was also developed:
It allows creating BPMN+X models based on conceptual models and enables the automatic generation of XML Schema Documents defining BPMN extensions.
It makes use of different plugins provided by the Eclipse platform such as UML2, QVT and JET.
It was demonstrated that the method can be supported by using currently available tools.
The use of ontologies to conceptualize extensions and define Conceptual Domain Models of Extensions.
The development of approaches for extending the BPMN notation to depict instances of extensions in BPMN diagrams.
Future Work