chorevolution studio poss demo

25
CHOReVOLUTION Studio Automatic and distributed composition of business services and things Amleto Di Salle University of L’Aquila ITALY e-mail: [email protected]

Upload: chorevolution

Post on 13-Apr-2017

100 views

Category:

Software


0 download

TRANSCRIPT

Page 1: CHOReVOLUTION Studio POSS Demo

CHOReVOLUTION Studio

Automatic and distributed composition of business services and things

Amleto Di SalleUniversity of L’Aquila

ITALY

e-mail: [email protected]

Page 2: CHOReVOLUTION Studio POSS Demo

CHOReVOLUTION

• Title: Automated Synthesis of Dynamic and Secured Choreographies for the Future Internet

• Follow up FP7 EU project CHOReOS

• Period: January 2015 - January 2018

• Site: http://www.chorevolution.eu

Page 3: CHOReVOLUTION Studio POSS Demo

Outline

• Setting the context

• Development approach (high-level view)

• Synthesis process

• CHOReVOLUTION platform

• CHOReVOLUTION Studio

Page 4: CHOReVOLUTION Studio POSS Demo

Service composition approaches

Orchestration (centralized) Choreography (fully distributed)

Local centralized view

from the perspective of

one participant

Global decentralized view from a

multi-participant perspective (albeit

without a central controller)

Setting the context

Page 5: CHOReVOLUTION Studio POSS Demo

Reusing existing services and things

(often black-box)

Distributed composition

Support for automation is needed

(time-to-market, correctness by construction, etc.)

Aiding software producers to realize, deploy,

execute, and monitor choreography-based

systems by (possibly) reusing existing services

Setting the context (cont’d)

Page 6: CHOReVOLUTION Studio POSS Demo

Development approach

Choreography modelers cooperate each

other to set business goals, e.g.,

- assisting travelers from arrival, to

staying, to departure

Page 7: CHOReVOLUTION Studio POSS Demo

Development approach (cont’d)

Reserve Taxi

Find POI

Reserve Table

Check Flight

… ...

… ...

… ...

Identify tasks and participants required to

achieve the goal, e.g.,

- reserving a taxi from the local taxi

company,

- purchasing digital tickets at the

train station,

- performing transactions through

services based on near field

communication in a shop

Page 8: CHOReVOLUTION Studio POSS Demo

Development approach (cont’d)

Reserve Taxi

Find POI

Reserve Table

Check Flight

… ...

… ...

… ...

Specify how participants must

collaborate as admissible flows

of the identified business tasks

through:

- BPMN2 Choreography

Diagrams

Model

BPMN2 Specification - http://www.omg.org/spec/BPMN/2.0/

Page 9: CHOReVOLUTION Studio POSS Demo

inventory contains services/things

published by providers, e.g.,

- transportation companies

- airport retailers

Development approach (cont’d)

ModelInventory

Page 10: CHOReVOLUTION Studio POSS Demo

• Out of the specified business goal, and

• the set of services available in the

inventory ...

Synthesis

Processor

Choreography

developer

Synthesis Processor

automatically produces (if

possible) a choreography-

based application achieving

the specified goal

Synthesis phaseModelling phase

CHOReVOLUTION

Cloud InfrastructureModel

Inventory

Page 11: CHOReVOLUTION Studio POSS Demo

Synthesis Process

Choreography Specification

Validation

ChoreographyProjection

Selection

BC Generation

SF Generation

Adapter Generation

BC

Service/ThingDescription

Inventory

Participant Model(BPMN2 Choreography

Diagram)

SF

A

CD Generation

CD

BPMN2 Choreography

Diagram

Messages XML Schema

Choreography Architecture Generation

BCService/Thing SF A

ChoreographyDeployment Generation

Choreography Architecture Description

Choreography Deployment Description

CD

OVERALL GOAL provide automatic support to the

realization of choreography-based systems by

realizing a synthesis process

Page 12: CHOReVOLUTION Studio POSS Demo

Synthesis Process (cont’d)

Choreography Specification

Validation

ChoreographyProjection

Selection

BC Generation

SF Generation

Adapter Generation

BC

Service/Thing Description

Inventory

Participant Model(BPMN2 Choreography

Diagram)

SF

A

CD Generation

CD

BPMN2 Choreography

Diagram

Messages XML Schema

GOAL check the choreography realizability

and its enforceability by the process

Page 13: CHOReVOLUTION Studio POSS Demo

Synthesis Process (cont’d)

Projection of "Tourist Agent" participant

Choreography Specification

Validation

ChoreographyProjection

Selection

BC Generation

SF Generation

Adapter Generation

BC

Service/ThingDescription

Inventory

Participant Model(BPMN2 Choreography

Diagram)

SF

A

CD Generation

CD

BPMN2 Choreography

Diagram

Messages XML Schema

GOAL derive a (sub-) BPMN2 Choreography

Diagram that contains only the choreography

flows involving the considered participant

Page 14: CHOReVOLUTION Studio POSS Demo

Synthesis Process (cont’d)

Service/Thing specification process

Participant Model(BPMN2 Choreography

Diagram)

Choreography Specification

Validation

ChoreographyProjection

Selection

BC Generation

SF Generation

Adapter Generation

BC

Service/Thing Description

Inventory

SF

A

CD Generation

CD

BPMN2 Choreography

Diagram

Messages XML Schema

Interface Specification

Interface Description

Interaction ProtocolSpecification

InteractionProtocol

Description

QoSSpecification

QoSDescription

Security Specification

Security Description

Inventory

GOAL querying the Service Inventory in order

to select concrete services (or things) that can

play the roles of the choreography participant

Page 15: CHOReVOLUTION Studio POSS Demo

Synthesis Process (cont’d)

Participant Model(BPMN2 Choreography

Diagram)

Choreography Specification

Validation

ChoreographyProjection

Selection

BC Generation

SF Generation

Adapter Generation

BC

Service/Thing Description

Inventory

SF

A

CD Generation

CD

BPMN2 Choreography

Diagram

Messages XML Schema

GOAL generate BCs when the interaction style

(e.g., REST) of a selected service (or thing) is

different from SOAP

S1 S2

CD1 CD2

BC1 BC2

Page 16: CHOReVOLUTION Studio POSS Demo

Synthesis Process (cont’d)

Participant Model(BPMN2 Choreography

Diagram)

Choreography Specification

Validation

ChoreographyProjection

Selection

BC Generation

SF Generation

Adapter Generation

BC

Service/Thing Description

Inventory

SF

A

CD Generation

CD

BPMN2 Choreography

Diagram

Messages XML Schema

GOAL generate SFs to filter the services

interactions according to the specified security

requirements (e.g., different authentication &

authorization attributes)

S1 S2

CD1 CD2

BC1 BC2

SF1 SF2

Page 17: CHOReVOLUTION Studio POSS Demo

Synthesis Process (cont’d)

Choreography Specification

Validation

ChoreographyProjection

Selection

BC Generation

SF Generation

Adapter Generation

BC

Service/ThingDescription

Inventory

Participant Model(BPMN2 Choreography

Diagram)

SF

A

CD Generation

CD

BPMN2 Choreography

Diagram

Messages XML Schema

GOAL generate adapters that bridge the gap

between the abstract interface and concrete

interface of a selected service (or thing)

S1 S2

BC1 BC2

SF1 SF2

CD1 CD2

A1 A2

Page 18: CHOReVOLUTION Studio POSS Demo

Synthesis Process (cont’d)

Choreography Specification

Validation

ChoreographyProjection

Selection

BC Generation

SF Generation

Adapter Generation

BC

Service/Thing Description

Inventory

Participant Model(BPMN2 Choreography

Diagram)

SF

A

CD Generation

CD

BPMN2 Choreography

Diagram

Messages XML Schema

GOAL generate CDs that coordinate the

interactions among the selected services (or

things) in order to fulfill the global collaboration

prescribed by the choreography specification,

in a fully distributed way

S1 S2

BC1 BC2

SF1 SF2

CD1 CD2

A1 A2

Page 19: CHOReVOLUTION Studio POSS Demo

Synthesis Process (cont’d)

Architectural description of the use case

GOAL generate an architectural description of

the choreographed system

Choreography Architecture Generation

BCService/Thing SF A

ChoreographyDeployment Generation

Choreography Architecture Description

Choreography Deployment Description

CD

Page 20: CHOReVOLUTION Studio POSS Demo

Synthesis Process (cont’d)

Choreography Deployment Description of the use case

Choreography Architecture Generation

BCService/Thing SF A

ChoreographyDeployment Generation

Choreography Architecture Description

Choreography Deployment Description

CD

GOAL generate the Choreography Deployment

Description

Page 21: CHOReVOLUTION Studio POSS Demo

CHOReVOLUTION platform

CHOReVOLUTION Front-end provides

CHOReVOLUTION Studio

• design a choreography with BPMN2

• drive the generation of additional artifacts

exploiting the Synthesis Processor

CHOReVOLUTION Console

• manage running services and choreographies

• monitor the execution of a choreography

• monitor the execution of a cloud

Page 22: CHOReVOLUTION Studio POSS Demo

CHOReVOLUTION platform

CHOReVOLUTION Back-end provides

• Generation of the Concrete Choreography

specification and all the required BCs, Ads, CDs,

SFs (Synthesis Processor)

• Deployment, configuration and control of BCs, Ads,

CDs, SFs on the CHOReVOLUTION cloud

infrastructure (Enactment Engine)

• Management of authentication and authorization

for services at run-time that uses different security

mechanisms at protocol level (Identity Manager)

• Propagation/synchronizion of service/user profiles

to/from external resources and provision of

managed services (Federation Server)

Page 23: CHOReVOLUTION Studio POSS Demo

CHOReVOLUTION platform

Execution time, for each choreography, in the

CHOReVOLUTION cloud, there are

• A set of choreography instances at different

execution states

• A set of virtual machines executing a custom-

tailored mix of services and middleware

components to serve different parts of the

choreography

Page 24: CHOReVOLUTION Studio POSS Demo

CHOReVOLUTION Studio

Page 25: CHOReVOLUTION Studio POSS Demo

References

• Web Sitehttp://www.chorevolution.eu

• Twitterhttps://twitter.com/CHOR_eVOLUTION

• Source Code (GIT repositories)https://goo.gl/kQUXgk

• OW2 JIRAhttps://goo.gl/9FxVSj