Towards Transformations from BPMN to Heterogeneous Systems. Tobias Küster and Axel Heßler

Similar documents
Process modeling. PV207 Business Process Management

BPEL Business Process Execution Language

Notation Standards for TOGAF:

Oracle SOA Suite 11g: Build Composite Applications

Oracle BPM 11g: Implement the Process Model

Eclipse SOA Tools Platform Project

THUR 3:30 PM BUILDING AN AUTOMATED PROCESS THAT INTERACTS WITH DIFFERENT SYSTEMS

Business-Driven Software Engineering Lecture 5 Business Process Model and Notation

Extending BPEL with transitions that can loop

Oracle SOA Suite 12c: Build Composite Applications

JBPM5 - QUICK GUIDE JBPM5 - OVERVIEW

Oracle SOA Suite 12c : Build Composite Applications

Chapter 1 Introduction

BPMN modeler project Creation review. Wednesday, Oct. 29 8am PT. Feedback and communication: eclipse.bpmn-modeler newsgroup

Thoughts about a new UI for the Eclipse BPEL Designer

The etrice Eclipse Project Proposal

Oracle SOA Suite 10g: Services Orchestration

2008 WebSphere System z Podcasts Did you say Mainframe?

Oracle SOA Suite 12c: Build Composite Applications. About this course. Course type Essentials. Duration 5 Days

1 Executive Overview The Benefits and Objectives of BPDM

Meta-Modeling and Modeling Languages

METEOR-S Process Design and Development Tool (PDDT)

IBM Cloud Orchestrator Version Content Development Guide

THUR 9:00 AM UTILIZING BPM FOR MODERNIZATION

Eclipse SOA Tooling Platform: Project Overview. An Overview of the Eclipse STP (SOA Tooling Platform) Project

BPMN2BPEL transformation with Fujaba - a Case Study

Towards a Task-Oriented, Policy-Driven Business Requirements Specification for Web Services

ActiveVOS Technologies

Enterprise Architect Training Courses

INRIA ADT galaxy An open agile SOA platform

Construction of BPMN-based Business Process Model Base

FREQUENTLY ASKED QUESTIONS

Canonization Service for AProMoRe

An Optimized Way for Mapping BPMN to BPEL

Getting started with WebRatio 6 BPM - WebRatio WebML Wiki

Business Process Model and Notation (BPMN)

Process modeling II. PV207 Business Process Management

Developing BPEL Processes Using WSO2 Carbon Studio. Waruna Milinda

Deliverable D4.2. SHAPE MDE Toolset User s Guide

Business Process Modeling. Version /10/2017

MTAT Enterprise System Integration. Lecture 10. Process-Centric Services: Design & Implementation

1Z0-560 Oracle Unified Business Process Management Suite 11g Essentials

Eindhoven University of Technology MASTER. BPMN 2 BPEL research on mapping BPMN to BPEL. Blox, J.J.A. Award date: 2009

Oracle Exam 1z0-478 Oracle SOA Suite 11g Certified Implementation Specialist Version: 7.4 [ Total Questions: 75 ]

IBM Cloud Orchestrator Version 2.5. Content Development Guide IBM

3rd Lecture Languages for information modeling

Implementing a Business Process

BPMN Getting Started Guide

Appendix D: Mapping BPMN to BPD Profile

BPMN Convert User Guide. Version: GA

Christian Doppler Laboratory

Alternatives to programming

Oracle SOA Suite 11g: Build Composite Applications

Investigation of BPEL Modeling

Release notes. IBM Industry Models IBM Banking/Insurance Process and Service Models for Standard Tooling - Utilities Version

Release Notes for Industry Models version Insurance Process and Service for Standard Tooling

INF5120. INF5120 Modellbasert Systemutvikling Modelbased System development. Lecture 4: CIM and PIM (SoaML and SOA) Arne-Jørgen Berre

Release Notes for Industry Models Banking Process and Service Models for Standard Tooling

Release notes. IBM Industry Models IBM Insurance Process and Service Models Version

3. Business Process Diagrams

The report describes a business method for business transformation and tooling that has been developed to enable the business method.

A Model-Driven Framework for Domain Specific Process Design and Governance

Current Issues and Future Trends. Architectural Interchange

BPMN and Business Process Management

Business Process Modeling. Version 25/10/2012

AUTOMATED BEHAVIOUR REFINEMENT USING INTERACTION PATTERNS

Department of Computer

Service Integration course BPMN

White Paper Workflow Patterns and BPMN

Active Endpoints. ActiveVOS Platform Architecture Active Endpoints

Dave DiFranco SOA Frameworks

UML PROFILING AND DSL

Unit 20: Extensions in ActiveBPEL

Consolidation of Interacting BPEL Process Models with Fault Handlers

20. Business Process Analysis (2)

OASIS BPEL Webinar: Frank Leymann Input

The Process Checklist Generator: Establishing Paper-based Process Support

Introduction to EGF. Benoît Langlois / Thales Global Services.

Towards Generating Domain-Specific Model Editors with Complex Editing Commands

Model Driven Engineering (MDE)

Developing Workflow Applications with Red Hat JBoss BPM Suite with exam (JB428)

Data and Process Modelling

Modeling Systems Using Design Patterns

Making Business Process Implementations Flexible and Robust: Error Handling in the AristaFlow BPM Suite

Generation of Web-based Prototypes for Business Applications

Integration of roll-back algorithms into process architecture

Security Requirements Modeling Tool

What s New in ActiveVOS 9.0

Start Up Benoît Langlois / Thales Global Services Eclipse (EMFT) EGF 2011 by Thales; made available under the EPL v1.

Introduction to ALM, UFT, VuGen, and LoadRunner

An Overview of Microsoft Visual Studio 2008

BPEL Research. Tuomas Piispanen Comarch

ActiveWebflow Designer User s Guide

Unifying Agent and Component Concepts - Jadex Active Components

Applying Model Intelligence Frameworks for Deployment Problem in Real-Time and Embedded Systems

Index. Business processes 409. a philosophy of maximum access 486 abstract service management metamodel

Departamento de Engenharia Informática. Systems Integration. Web Services and BPEL Tutorial

Train control language teaching computers interlocking

Best Practices for Testing SOA Suite 11g based systems

BPMN to BPEL case study solution in VIATRA2

Transcription:

Towards Transformations from BPMN to Heterogeneous Systems Tobias Küster and Axel Heßler

BPMN is the new standard modelling notation for all kinds of business processes, and many tools provide a transformation to executable BPEL code. But what about other languages? We present a BPMN modelling and transformation tool, which is generic enough to support not only BPEL, but which can easily be extended with export features targeting other languages, too. 10.10.2008 CC ACT Folie 2

Content Introduction The Visual Service Design Tool The Transformation Framework Transformation to BPEL Conclusion 10.10.2008 CC ACT Folie 3

Content Introduction Motivation The Problem Our Approach The Visual Service Design Tool The Transformation Framework Transformation to BPEL Conclusion 10.10.2008 CC ACT Folie 4

Introduction DAI-Labor, TU Berlin Prof. Dr.-Ing. Sahin Albayrak "Smart Services and Smart Systems" AI, Agents, Networks, Services, Security, http://www.dai-labor.de The SerCHo Project (Service Centric Home) services for the home of tomorrow service creation and deployment http://www.sercho.de 10.10.2008 CC ACT Folie 5

Introduction: Motivation The Business Process Modeling Notation... is a standardised, intuitive process notation. communicates processes between stakeholders, domain experts, and developers. unifies business process modelling. provides a graphical notation for BPEL. What about other executable languages? 10.10.2008 CC ACT Folie 6

Introduction: The Problem Most BPMN editors are specialized on creating executable BPEL code e.g. Intalio BPMS, eclarus SOA Architect, This has some advantages: editor support for e.g. BPEL expression syntax code can easily be generated and deployed But: Loss of language-independence for a transformation to another language the diagram has to be recreated in another editor 10.10.2008 CC ACT Folie 7

Introduction: Our Approach Use sheer BPMN in metamodel and editor Transformations can be 'plugged in' additional export / import features additional editing support for these languages Make it easy to create new export features third-parties can provide a transformation to their execution language 10.10.2008 CC ACT Folie 8

Content Introduction The Visual Service Design Tool Background Basics Features The Transformation Framework Transformation to BPEL Conclusion 10.10.2008 CC ACT Folie 9

The Visual Service Design Tool: Background Motivation: Having a tool to 'bridge the gap' visual creation of distributed systems transformation to Multiagents-Systems (MAS) mapping to MAS still under development export to BPEL as a by-product of this project To be used in the SerCHo-Project at TU Berlin goal: creating and combining ambient home services integrating heterogeneous service technologies First version implemented as a diploma thesis 10.10.2008 CC ACT Folie 10

The Visual Service Design Tool: Basics Metamodel derived from specification fairly Complex, but hidden from the user extension for structures (Sequence, If-Else,...) used for structure recognition and transformation Diagram editor created with Eclipse GMF some customization /additions for improved usability special thanks to eclipse.modeling.gmf and the team of the Eclipse STP BPMN editor! 10.10.2008 CC ACT Folie 11

The Visual Service Design Tool: Screenshot 10.10.2008 CC ACT Folie 12

The Visual Service Design Tool: Features Being independent of BPEL has downsides, too reduced editing support, e.g. no syntax validation Has to be compensated with plugins, e.g. Web Service View: import existing Web services BPEL Expression Editor (planned): Enter and validate an XPath expression Export triggered via Eclipse Export Wizard 10.10.2008 CC ACT Folie 13

Content Introduction The Visual Service Design Tool The Transformation Framework Overview Transformation Stages Transformation Example Transformation to BPEL Conclusion 10.10.2008 CC ACT Folie 14

The Transformation Framework Transf. from graph to code is a difficult task concept. mismatch, different expressive power capture global semantics of control flow create readable code one can work with unstructuredness results in added complexity Topic of many research papers Wouldn't it be a good thing to make this part reusable? 10.10.2008 CC ACT Folie 15

The Transformation Framework: Overview Primary goal: easy to extend and to reuse Split up into several stages Validation, Normalization, Structure Mapping, Element Mapping, Clean Up implementing special Interfaces typically realized as a top-down pass or using graph transformation rules (based on EMT) Individual stages can be reused or extended for use in other transformations 10.10.2008 CC ACT Folie 16

The Transformation Framework: Stage 1-2 Validation check constraints, e.g. multiplicities optional: check expression syntax Normalization put diagram into "normal form" much fewer cases to consider later on Example: 10.10.2008 CC ACT Folie 17

The Transformation Framework: Stage 2 Normalization Rules insert a Gateway, if an Event or Activity has multiple incoming or outgoing Sequence Flows split a Gateway having both multiple incoming and outgoing Sequence Flows in two insert a no-op Task between two Gateways or an Activity with Event Handlers and a Gateway add a final Gateway, merging all branches move a Gate's Assignments into a separate Task 10.10.2008 CC ACT Folie 18

The Transformation Framework: Stage 3 Structure Mapping transformation from graph to block structure following Structure Identification strategy realized using a relatively small set of rules can handle slightly unstructured workflows uses extension of the metamodel to integrate recognized structures directly into the model Example: 10.10.2008 CC ACT Folie 19

The Transformation Framework: Stage 3 Sequence Rule pre: not more than one inc./outg. Seq. Flow, no event handlers put Flow Objects in Sequence structure, reroute Seq. Flows Block Rule look up other branches going from G1 to G2 put Flow Objects and conditions in Block structure, reroute SF Loop Rule put Flow Objects and conditions in Loop structure, reroute SF 10.10.2008 CC ACT Folie 20

The Transformation Framework: Stage 3 Event Handler Block Rule wrap A into EH Block structure Event Handler Comp Rule if A in EH Block, wrap Event and AC into EH Case structure, add to EH Block detach Event from Activity Event Handler Skip Rule if A in EH Block, wrap Event and AC into EH Case, add to EH Block refer to AS as "element to skip" detach Event, remove lower SFs 10.10.2008 CC ACT Folie 21

The Transformation Framework: Stage 4-5 Element Mapping create the target model (e.g. a BPEL process) from the normalized, structured process diagram map each element, e.g. a Task, to its equivalent in the target language Clean-Up improve readability of generated code, remove redundant code flatten nested sequences, resolve singleton sequences,... 10.10.2008 CC ACT Folie 22

The Transformation Framework: Example Examples of transformable workflows 10.10.2008 CC ACT Folie 23

Intermezzo: Example, Step 1 Our starting workflow: 10.10.2008 CC ACT Folie 24

Intermezzo: Example, Step 2 First, insert a Gateway before the Task 'Receive' to simplify the identification of the loop. 10.10.2008 CC ACT Folie 25

Intermezzo: Example, Step 3 Now, two 'Empty' Activities are inserted between the consecutive Gateways. 10.10.2008 CC ACT Folie 26

Intermezzo: Example, Step 4 That was the Normalization. The Structure Mapping starts with identifying three Sequences 10.10.2008 CC ACT Folie 27

Intermezzo: Example, Step 5 Now that the Gateways are only one Flow Object apart, the Loop is identified. 10.10.2008 CC ACT Folie 28

Intermezzo: Example, Step 6 Each Activity with an attached Intermediate Event is recognized as an Event Handler Block. 10.10.2008 CC ACT Folie 29

Intermezzo: Example, Step 7 The Compensation Flow is detached from the Activity and put into the Event Handler Block, together with a reference to the Activity to skip. 10.10.2008 CC ACT Folie 30

Intermezzo: Example, Step 8 Two more Sequences are wrapped around the branches of the large decision block 10.10.2008 CC ACT Folie 31

Intermezzo: Example, Step 9 and in the next step the block itself is identified. 10.10.2008 CC ACT Folie 32

Intermezzo: Example, Step 10 By identifying the outermost sequence the Structure Mapping is finished. 10.10.2008 CC ACT Folie 33

Intermezzo: Example, Step 11 Finally, the 'Empty' Activities inserted earlier are removed. The result is the input for the Element Mapping stage. 10.10.2008 CC ACT Folie 34

Content Introduction The Visual Service Design Tool The Transformation Framework Transformation to BPEL Stages Coverage Tool Demonstration Conclusion 10.10.2008 CC ACT Folie 35

Transformation to BPEL: Stages Transformation Stages in the BPEL case 10.10.2008 CC ACT Folie 36

Transformation to BPEL: Coverage Covers nearly the whole mapping Event Handlers, Event-based XOR, OR, for some elements the mapping is not clear Rule Event, MI Loop, Independent Subprocess, mapped as described in the specification, but will require some manual rework creates WSDL file holding desc. of orchestr. services <binding> and <service> blocks have to be added manually Variable name substitution: Given Process p with Property x, Expression $x+1 is changed to bpws:getvariabledata('p_processdata','x')+1. 10.10.2008 CC ACT Folie 37

Transformation to BPEL Tool Demonstration 10.10.2008 CC ACT Folie 38

Content Introduction The Visual Service Design Tool The Transformation Framework Transformation to BPEL Conclusion Conclusion Future Work 10.10.2008 CC ACT Folie 39

Conclusion Introducing the 'Visual Service Design Tool' pure BPMN editor, mappings and language-specific editing support can be plugged in advantage: One BPMN diagram can be exported to arbitrary target languages and a versatile Transformation Framework easy creation and integration of new transformations reusable mapping of graph structure can create readily executable BPEL code more to come! 10.10.2008 CC ACT Folie 40

Conclusion: Future Work Future Work further improvement of structure mapping better support for (complex) data types widely disregarded in the BPMN specification both in the editor and during the transformation import from executable code to BPMN still problems with back-transformation of event handlers transformation to further languages focus: Multiagent-Systems Long-term goal: Transforming BPMN to Heterogeneous Systems 10.10.2008 CC ACT Folie 41

Contact Dipl.-Inform. Tobias Küster Dipl.-Inform Axel Heßler Researcher Competence Center Agent Core Technologies +49 (0) 30 / 314 74 033 +49 (0) 30 / 314 74 003 tobias.kuester@dai-labor.de Researcher Competence Center Agent Core Technologies +49 (0) 30 / 314 74 028 +49 (0) 30 / 314 74 003 axel.hessler@dai-labor.de 10.10.2008 CC ACT Folie 42