Execution Semantics of BPMN through MDE Web Application Generation, using BPMN and WebML. BPMN...

12
Brambilla, Fraternali: Execution Semantics of BPMN through MDE Web Application Generation 1 Execution Semantics of BPMN through MDE Web Application Generation Marco Brambilla, Piero Fraternali Dipartimento di Elettronica e Informazione, Politecnico di Milano Contact: marco.brambilla@poli mi.it marcobrambi marcobrambi BPMN Workshop, Luzern, November 21, 2011

description

We describe a pragmatic approach based on Model Driven Engineering (MDE) principles for implmenting the execution semantics of BPMN. The approach is based on a two-step model transformation that transforms BPMN models into Web application models specified according to the WebML notation and then into running Web applications. Thanks to the proposed chain of model transformations it is also possible to fine tune the final application in several ways by refining the intermediate WebML application models.

Transcript of Execution Semantics of BPMN through MDE Web Application Generation, using BPMN and WebML. BPMN...

Page 1: Execution Semantics of BPMN through MDE Web Application Generation, using BPMN and WebML. BPMN workshop 2011

Brambilla, Fraternali: Execution Semantics of BPMN through MDE Web Application Generation 1

Execution Semantics of BPMN through MDE Web Application Generation

Marco Brambilla, Piero FraternaliDipartimento di Elettronica e Informazione, Politecnico di Milano

Contact:[email protected]

BPMN Workshop, Luzern, November 21, 2011

Page 2: Execution Semantics of BPMN through MDE Web Application Generation, using BPMN and WebML. BPMN workshop 2011

Brambilla, Fraternali: Execution Semantics of BPMN through MDE Web Application Generation 2

• Introduction

• Model-driven BPM development cycle

• Conclusions

Outline

Page 3: Execution Semantics of BPMN through MDE Web Application Generation, using BPMN and WebML. BPMN workshop 2011

Brambilla, Fraternali: Execution Semantics of BPMN through MDE Web Application Generation 3

Web applications, Web services, and BPM are the de facto standard of modern enterprise integration

Web services enable system-to-system interaction; Web applications allow distributed and ubiquitous user interaction Business process specification languages ease the definition of the

business constraints, by orchestrating service execution

We offer a model-driven approach for multiparty business processes, based on Web Service orchestration and Web user interface design.

BPMN WebML

Introduction

3

Page 4: Execution Semantics of BPMN through MDE Web Application Generation, using BPMN and WebML. BPMN workshop 2011

Brambilla, Fraternali: Execution Semantics of BPMN through MDE Web Application Generation 4

Business Process Design representing processes (of heterogeneous nature) in terms of

related, structured activities or tasks that produce a specific service or product

several proposals for visual modeling languages (e.g., UML, YAML, BPMN)

Model Driven Architectures abstraction (separation of platform independent and platform

dependent concerns) and models in Web application design and development

Web Engineering use of models (and model transformations) as the key artifacts for

application developments several proposals (e.g., UML, Hera, OOHDM, UWE, W2000, WebML)

Background

4

Page 5: Execution Semantics of BPMN through MDE Web Application Generation, using BPMN and WebML. BPMN workshop 2011

Brambilla, Fraternali: Execution Semantics of BPMN through MDE Web Application Generation 5

Model transformation and code generation techniques to implement and deploy the process on an open platform

Approach

5

Page 6: Execution Semantics of BPMN through MDE Web Application Generation, using BPMN and WebML. BPMN workshop 2011

Brambilla, Fraternali: Execution Semantics of BPMN through MDE Web Application Generation 6

• Models are amenable to be transformed into running applications, enabling fast prototyping and early assessment of alternative process socialization strategies directly by the stakeholders

• Model-Driven Engineering is the discipline that supports a generative approach to the creation and maintenance of application from abstract, platform-independent models

• Implementation exploited WebRatio (www.webratio.com), an industrial MDE tool that manages app development in three steps:

Model Driven Engineering of BPM applications

Designthe Model

Customizethe Rules

Generatethe Application

Page 7: Execution Semantics of BPMN through MDE Web Application Generation, using BPMN and WebML. BPMN workshop 2011

Brambilla, Fraternali: Execution Semantics of BPMN through MDE Web Application Generation 7

• Manual specification of BPMN process model

• Automatic transformation of BPMN to WebML

• Possible manual refinement of WebML models

• Automatic running code generation on J2EE platform

• Virtuous development cycle

Model-driven Development Process

Page 8: Execution Semantics of BPMN through MDE Web Application Generation, using BPMN and WebML. BPMN workshop 2011

Brambilla, Fraternali: Execution Semantics of BPMN through MDE Web Application Generation 8

Process Model

It is used to define:•Organization and roles•Activities and assignments•Business rules•Business workflowIt is based on BPMN notation

Application Model

It is used to define:•Page contents•Business logic•User interface & Visual identity•IntegrationIt is based on WebML modelling language

Two types of models concur to define the application requirements:

Models for BPM

Page 9: Execution Semantics of BPMN through MDE Web Application Generation, using BPMN and WebML. BPMN workshop 2011

Brambilla, Fraternali: Execution Semantics of BPMN through MDE Web Application Generation 9

The generated model artifacts

Page 10: Execution Semantics of BPMN through MDE Web Application Generation, using BPMN and WebML. BPMN workshop 2011

Brambilla, Fraternali: Execution Semantics of BPMN through MDE Web Application Generation 10

Generative approach and runtime architecture

IBMWebSphere

Caucho Resin

ApacheTomcat

OracleApplication

Server

JBossApplication

Server

Process layer

Servicelayer

Presentation layer

Datalayer

Integrationlayer

Standard JavaWeb application

Visual identity

Business layerSocial networks or other third-party

services or applications

Page 11: Execution Semantics of BPMN through MDE Web Application Generation, using BPMN and WebML. BPMN workshop 2011

Brambilla, Fraternali: Execution Semantics of BPMN through MDE Web Application Generation 11

DEMO

http://www.webratio.com

Page 12: Execution Semantics of BPMN through MDE Web Application Generation, using BPMN and WebML. BPMN workshop 2011

Brambilla, Fraternali: Execution Semantics of BPMN through MDE Web Application Generation 12

Contact:Marco Brambilla

[email protected]

Thanks.

Questions?