Slides of my presentation at the 5th International Workshop on Interplay of Model-Driven and Component-Based Software Engineering (ModComp@MODELS 2018)
The full paper is available here: http://ceur-ws.org/Vol-2245/modcomp_paper_2.pdf
On the Model-driven Synthesis of Adaptable Choreographies [ModComp@MODELS 2018]
1. On the Model-driven Synthesis of
Adaptable Choreographies
Marco Autili,Amleto Di Salle, Francesco Gallo, Claudio
Pompilio, Massimo Tivoli
University of L’Aquila, Italy
Claudio Pompilio
Ph.D. Student in Computer Science
University of L’Aquila
Email: claudio.pompilio@graduate.univaq.it
2. »Title: Automated Synthesis of Dynamic and Secured
Choreographies for the Future Internet
»Follow up FP7 EU project CHOReOS
»Period: January 2015 - January 2018
»Web site: http://www.chorevolution.eu
2
6. BPMN2 choreography diagram
6
Task in BPMN2
- atomic activity
- two participant roles (one is initiating)
- XML Schema used internally, e.g.,
for discovery purposes
Parallel flow
- Diverging Parallel Gateway
- Converging Parallel Gateway
Alternative branches
- Diverging Exclusive Gateway
- Converging Exclusive Gateway
7. Choreography realizability enforcement
Automatic realizability enforcement:
‘‘given a choreography specification and a set of existing
services to be reused, externally coordinate and adpat
their interaction so to fulfill the collaboration
prescribed by the choreography specification, in a fully
distributed way’’
7
8. CHOReVOLUTION synthesis process
» Set of code generation phases
» INPUT: choreography specification + set of
services as possible candidates to play the
choreogrpahy roles
» OUTPUT: a set of software entities interposed
among the services according to a predefined
architectural style
− Coordination Delegates (CDs):
coordination entities that guarantee the
collaboration specified by the choreogrpahy
specification
− Adapters (As): solve possible protocol
mismatches between services and choreography
roles
8
10. Approach - 1
10
Adapter Model [1]
ChoreographyDiagram
Service
Description
Gap
represented
by
[1] – Marco Autili,Amleto Di Salle, Francesco Gallo, Claudio Pompilio and Massimo Tivoli. Model-driven adaptation of service choreographies. SAC 2018.
13. Adapter component transformation
»Input: Adapter model
»Output: Adapter component model
»Main Steps:
− parse the adapter model to detect the required adaptation
scenario
− define the adapter channels as a chain of adapter components
implementing EIPs
13
14. Adaptation scenarios - 1
»Adapters are connected with the Coordination
Delegates (CDs)
»Adapter mediates two kinds of interactions: CD-to-
Service and Service-to-CD
»Adaptation scenarios symmetric according to the
mediated interaction
»Channel labelled with an EIP-based noun
−indicate the main EIP applied
14
29. Conclusions and future works
»Model-driven approach that combines EIPs as adaptation
primitives to achieve choreography adaptation
»Approach at work in the Smart Mobility and Tourism domain
»Extend the supported implementation technologies
»Automatically indentify the protocol mismatches to derive the
Adapter model
− exploit a modified version of the Strawberry tool [1]
− exploit ontological information [2]
29
[1] - Antonia Bertolino,Paola Inverardi,Patrizio Pelliccione,and MassimoTivoli.Automatic Synthesis of Behavior Protocols for Composable Web-services.
ESEC/FSE 2009.
[2] - Paola Inverardi and Massimo Tivoli.Automatic Synthesis of Modular Connectors via Composition of Protocol Mediation Patterns. ICSE 2013.
30. Thank You!
Any questions?
Claudio Pompilio
Ph.D. Student in Computer Science
University of L’Aquila
Email: claudio.pompilio@graduate.univaq.it