1
© s
cil
lys
tuff
on
fli
ckr
Van
ess
a Z
ah
ori
an
& K
ris
tin
Lo
ng
in D
ive
rtim
en
to N
°15
- P
ho
to (
c)
Eri
k T
om
as
son
Valérie Issarny (Inria) – Scientific Leader
CHOReOS Architectural Stylefor Choreography-based Future Internet
22 February 2012
2
From Future Internet
Ad hoc social netVisit & Go to airport
Adaptive Itinerary
Co-Taxi-ingTraffic mgt
Guided tour
Planet-scale networking Devices
everywhereIncreasingly
mobileUser
empowerment
to ChoreographyFrom Future Internet
3
• Revisiting the SOA style to face FI challenges
• Which types of services to compose
• Which types of interaction protocols for services
• Which types of coordination protocols for
choreographies
CHOReOS Architectural Style
4
Outline
• Software Architecture Style• Baseline styles for CHOReOS
• The CHOReOS Software Architecture Style• A glance at the impact of FI requirements
• CHOReOS Components
• CHOReOS Connectors
• CHOReOS Coordination Protocols
• From Architecture Style to Integrated Development and Runtime Environment (IDRE)
5
Outline
• Software Architecture Style• Baseline styles for CHOReOS
• The CHOReOS Software Architecture Style• A glance at the impact of FI requirements• CHOReOS Components• CHOReOS Connectors• CHOReOS Coordination Protocols
• From Architecture Style to IDRE
6
Baseline Styles for CHOReOSService-Oriented Architecture for the FI
Web-Based Services
WS* (BP), REST (Atomic), …
FI-SpecificsFI-related Event- and Data-driven architectures for
Thing-based services, ….
Others…Modeling
language related (BPMN2, …)
SOA-Focused
Discovery
ServiceProvider
ServiceConsumer CHOReOS SOA
Component ⤳ ServiceConnector ⤳ C/S protocol
Configuration ⤳ Composition
For the FI
7
Outline
• Software Architecture Style• Baseline styles for CHOReOS
• The CHOReOS Software Architecture Style• A glance at the impact of FI requirements
• CHOReOS Components
• CHOReOS Connectors
• CHOReOS Coordination Protocols
• From Architecture Style to IDRE
8
• Scalability
• … in the number of users, service instances, composed services,
…
• Heterogeneity
• … in the diversity of service types, technologies, …
• Mobility
• … leading to mobile and volatile services…
• Awareness & adapability
• … overcoming the volatility of services…
• Privacy, Security & Trust
Recalling the FI ities
9
A Glance at the Impact of FI on SOA
CHOReOSComponents
Web-based services at large (WS* &
Rest, B & T)
CHOReOSConnectors
Highly heterogeneous
interaction paradigms (C/S, P/S,
T/S, …)
CHOReOSCoordination ProtocolChoreography-based
composition of services
10
Impact of FI on Components
CHOReOSConnectors
Highly heterogeneous interaction paradigms
(C/S, P/S, T/S, …)
CHOReOSCoordination ProtocolChoreography-based
composition of services
CHOReOSComponents
Web-based services at large (WS* &
Rest, B & T)
11
Heterogeneous services to aggregate in the FI
• WS* and RESTful Web-based services
• Business and Thing-based services
A paradigm-independent definition
CHOReOS ComponentsServices in the FI
12
CHOReOS ComponentsService Abstractions to Sustain Scale
Functional
abstractions
WS descriptions …
…
Non-functional
abstractions
Service
Base
Developer posing queries
Service registration
13
Functional abstractions that are reverse engineered from collections of services to organize the service
base
CHOReOS Components Service Abstractions to Sustain Scale (2)
14
Impact of FI on Connectors
CHOReOSComponents
Web-based services at large (WS* & Rest,
B & T)
CHOReOSCoordination ProtocolChoreography-based
composition of services
CHOReOSConnectors
Highly heterogeneous
interaction paradigms (C/S, P/S,
T/S, …)
15
CHOReOS ConnectorsMiddleware-based Connector
16
CHOReOS ConnectorsSustaining Interoperability
Connector roles
Middleware
Application
Component port
Middleware
Application
12Component port
2
Connector glue3
C/S Md/w P/S Md/w
17
CHOReOS ConnectorsInteroperability across Interaction Paradigms
CSpeer PSpeer
TSpeer
PSconnector
TSconnector
GAconnectorGA-based
interoperabilityacrossheterogeneousmiddlewareand
paradigms
CSconnector
connectorroleasseenfromtheapplica onviewpoint(legacyinterac onAPI)
18
CHOReOS ConnectorsThe GA Connector – Multi-paradigm Post & Get
Coupling may take oneof the following values:
• Strong (space & time coupling – CS) • Weak (time decoupling - PS)• Very weak (space & time decoupling - TS) • Any
19
CHOReOS ConnectorsThe GA Connector – to/from Legacy Connectors
Example - Synchronous consumption roles
GA CS PS TS
ε
?receive_sync
!subscribe
?get_next
!unsubscribe
?takeorread
!set_get
?get_sync!end_set_get ε
ε
ε
20
Impact of FI on Coordination
CHOReOSComponents
Web-based services at large (WS* & Rest,
B & T)
CHOReOSConnectors
Highly heterogeneous interaction paradigms
(C/S, P/S, T/S, …)
CHOReOSCoordination ProtocolChoreography-based
composition of services
21
CHOReOS Coordination ProtocolsChoreography-based Coordination
22
CHOReOS Coordination ProtocolsCoordination vs Middleware Layer Interoperability
Middleware layer solves interaction paradigm heterogeneity
Coordination layer solves application protocol heterogeneity (aka mediation)
and prevents undesired behavior wrt Choreography specification
23
CHOReOS Coordination ProtocolsPreventing Undesired Behaviour based on LTS Abstraction (1)
Example – Travel Agency Services
0
1
2
3
!getFlight1
!getHotel
!setBookInfo(a)BookingAgency
(mul -threadedspecifica on)
(b1)FlightBooking1
(c)HotelBooking
?ack
0
1
2
?getHotel
?setBookInfo
!ack
0
1
?getFlight1
!flightInfo1
?cancel1
(b2)FlightBooking2
0
1
?getFlight2
!flightInfo2
?cancel2
!getFlight2
0’
1’
!cancel2
?flightInfo10’’
1’’
!cancel1
?flightInfo2
24
CHOReOS Coordination ProtocolsPreventing Undesired Behaviour based on LTS Specification (2)
Example – Flight Hotel Booking Collaboration
A possible undesired execution trace
0 1 2
ba.getFlight1. 1 ba.getFlight2. 23 4
1.flightInfo1.ba 2.flightInfo2.ba
25
CHOReOS Coordination ProtocolsThe Distributed Coordination Algorithm
26
Outline
• Software Architecture Style• Baseline styles for CHOReOS
• The CHOReOS Software Architecture Style• A glance at the impact of FI requirements
• CHOReOS Components
• CHOReOS Connectors
• CHOReOS Coordination Protocols
• From Architecture Style to IDRE
27
• Functional and non-functional abstractions for services to face scale and adaptability requirements
• Multi-paradigm (GA) connector type enabling interoperability across heterogeneous interaction paradigms
• Coordination protocol allowing the automated synthesis of decentralized choreographer aka Coordination Delegates
➠ Informs the development of the IDRE constituents
The CHOReOS Architecture Stylein a Nutshell
28
CHOReOS IDREoverview
29
CHOReOS IDRE detailed view Development
Environment
Runtime
Environment
30
• Issue of security and trusworthiness largely present in the CHOReOS architecture
➠ Need to integrate relevant solutions
CHOReOS & ANIKETOS
31
© s
cil
lys
tuff
on
fli
ckr
Van
ess
a Z
ah
ori
an
& K
ris
tin
Lo
ng
in D
ive
rtim
en
to N
°15
- P
ho
to (
c)
Eri
k T
om
as
son
Thank you
Q&A