2. What is CHOReOS ?
Choreography-centric SOA for Services & Things
4 Main goal: sustaining decentralized service
choreographies
4 Specific context: Future Internet (FI), Ultra Large Scale
(ULS)
4 Focus on Internet of Services and Internet of Things
4 Abstract: It revisits choreography-centric SOAs by
introducing a dynamic development process and
middleware for coordination of services through
Ultra
choreographiesFuture
CHOReOS Large
Internet
Scale
2
3. CHOReOS at a glance
Duration:
4 October 2010 – September 2013
Consortium of 15 partners:
4 7 industrials
4 8 academics
Total budget:
4 8.665.785 €
European programme:
4 Call FP7-ICT-2009-5
4 Grant n°257178
3
5. Outline
1. Orchestration vs. Choreography
2. Foundations: first year achievements
1. Initial architectural style for choreographies
2. Dynamic development model
3. Middleware specification
4. IDRE specification
3. Use cases
4. OW2 impact
1. Community building
2. OW2 ‘Future Internet’ initiative
3. Synergies
5. Prospects
5
6. Outline
1. Orchestration vs. Choreography
2. Foundations: first year achievements
1. Initial architectural style for choreographies
2. Dynamic development model
3. Middleware specification
4. IDRE specification
3. Use cases
4. OW2 impact
1. Community building
2. OW2 ‘Future Internet’ initiative
3. Synergies
5. Prospects
6
7. Orchestration vs. Choreography
Orchestration: Choreography:
4 Local / centralized 4 Global / distributed
perspective perspective
4 "Each player in the 4 “Dancers dance following a
orchestra strictly follows global scenario, without a
instructions from the single point of control“
conductor“ 4 SOA: describes a protocol
4 SOA: Refers to a business for peer-to-peer interactions 7
8. Choreographies help deal with FI “…ities”
Scalability
4 … in the number of users, service instances,
composed services, …
Heterogeneity
4 … in the diversity of service types, technologies, …
Mobility
4 … leading to mobile and volatile services…
Awareness & adapability
4 … overcoming the volatility of services…
8
9. Outline
1. Orchestration vs. Choreography
2. Foundations: first year achievements
1. Initial architectural style for choreographies
2. Dynamic development model
3. Middleware specification
4. IDRE specification
3. Use cases
4. OW2 impact
1. Community building
2. OW2 ‘Future Internet’ initiative
3. Synergies
5. Prospects
9
10. Initial architectural style for choreographies
“The software architecture of a system is the set of structures needed to
reason about the system, which comprise software elements, relations
among them, and properties of both” (Wikipedia)
Define an architectural style for
CHOReOgraphies
4 Identify key architectural abstractions for
choreographies in the FI Revisits the SOA style to
face FI challenges
4 Web-based services at large (WS* & Rest, ...)
Paradigm independent definition of “services”
4 Highly heterogeneous interaction paradigms
CHOReOS Multi-Paradigm Connectors to sustain
interoperability
10
4 Choreography-based composition of services
11. Dynamic development model
Abstract
description of the
CHOReOS
software
development
process
Common activities,
but structured in
a CHOReOS-
specific way
Deployment and
Execution
Technology- 11
12. Middleware specification
A service-oriented middleware to enable the
development and execution of scalable
choreographies by facilitating
4 service discovery
4 service access
4 composition of services
4 deployment in the cloud
…while sustaining scalability, interoperability,
mobility, awareness & adaptability!
Specification defines multiple key “components”:
4 XSD: eXtensible and scalable Service Discovery 12
13. IDRE specification
The CHOReOS Integrated Dev. & Runtime Environment (IDRE)
Formally Dynamic
grounded choreography-
abstractions and models centric
development process
Integrated Development
and Runtime
Environment
Service
governance,
verification, and Service-oriented
validation middleware
13
14. IDRE specification
IDRE is all about…
4 Defining integration requirements
4 Development, design, enactment, governance and monitoring
requirements for a choreography
4 Defining the overall Architecture
4 Identifying the integration Dependencies
4 Defining the integration Plan
4 Implementing the test bed
4 Releasing integrated CHOReOS software
4 Packaging and delivering software prototypes
4 Providing developer and user manuals
14
15. Outline
1. Orchestration vs. Choreography
2. Foundations: first year achievements
1. Initial architectural style for choreographies
2. Dynamic development model
3. Middleware specification
4. IDRE specification
3. Use cases
4. OW2 impact
1. Community building
2. OW2 ‘Future Internet’ initiative
3. Synergies
5. Prospects
15
16. Use cases
3 use-cases, context relevant to CHOReOS
4 Passenger-friendly Airport
4 Context: air transportation / service to passengers
4 Goal: improvements in services provided to passengers
4 Scenario particularly suited to illustrate FI/scalability aspects
n Average of 180.000 passengers per day at an Airport like CDG
n Number that varies greatly depending on the airport, time of the day,
season, etc.
4 CHOReOS innovation highlights
Inside
n To enable dynamic rebinding and replacement of services plane
At home In
airport
n To rely on choreographies for coordination
Image: photostock /
FreeDigitalPhotos.net
16
17. Outline
1. Orchestration vs. Choreography
2. Foundations: first year achievements
1. Initial architectural style for choreographies
2. Dynamic development model
3. Middleware specification
4. IDRE specification
3. Use cases
4. OW2 impact
1. Community building
2. OW2 ‘Future Internet’ initiative
3. Synergies
5. Prospects
17
18. Why Community Building?
The goal: extend project value, sustainability
4 Enable the pursuit of the development activity beyond
the official duration and the budget scope of the
project.
The approach: foster a business ecosystem
4 'An economic community supported by a foundation of
interacting organizations and individuals‘
The method: leverage an ecosystem platform
4 Infrastructure services: technical resources
4 Governance services: decision making rules
4 Marketing services: branding & communication 18
19. A three-stage process
Technical Stage Open Source Stage Ecosystem Stage
Technical stage
4 Define deliverables structure for community sharing
4 Select open source licenses
Open source stage
4 Move project to an open source community
4 Endorse (inside the project) open source governance
Ecosystem stage
4 Open to, attract third-party stakeholders
19
4 Develop business/market outreach
20. Technical stage: open sourcing the IDRE
Why OSS ?
Facilitates deployment of complex technologies
4 Helps combine multiple technologies and know-how
from independent providers
4 Makes multi-tier cooperation easier by enhancing trust
and reducing coordination costs
Lower barriers to access
4 Legal barriers: open source licences enable sharing
4 Economic barriers: no monetary entry cost
IDRE code structure
4 Modular project structure to facilitate third party
contributions 20
21. OSS stage: Leveraging the OW2 Community
An established open source community
4 One of 4 global independent and open communities
4 Community highly driven by European interests
Ramping up the open source community
4 Leverage current OW2 Members within CHOReOS
4 Attract contributors with open source tactics
4 Enhance CHOReOS profile (as a mature project) within
OW2
4 Advertise the OSS strategy on the CHOReOS website
4 Leverage social networks: Twitter, LinkedIn, Facebook
21
22. Ecosystem stage: Future Internet Initiative
“(…) joint efforts by OW2 Members to develop technical integration
between projects and business synergies in order to address specific
market needs”
Leverage OW2 business ecosystem mechanism
4 Initiative led by CHOReOS
4 Grouping of scope-bound projects, CHOReOS is the first in
this initiative
4 Inria and OW2 to lead the initiative
4 Promote solutions not just packages
4 Open up the initiative to non-OW2 members
4 Lower barriers to participation
4 Market the Future Internet initiative
4 Identify initial deployment as Future Internet initiative
achievement
4 Connect with other FP7 projects 22
23. Synergies
Identifying synergies with existing projects
4 Orchestra
4 “...solution to handle long-running, Service Oriented
Processes”
4 JORAM
4 “…distributed MOM… designed with an OSGi based
services architecture to provide a dynamically
adaptable messaging server”
4 Fractal
4 “…a modular, extensible and programming language
agnostic component model that can be used to design,
implement, deploy and reconfigure systems and
applications”
4 SOFA
4 “...used for dynamic reconfiguration of component
architecture and for accessing components under the
SOA concepts”
23
24. Outline
1. Orchestration vs. Choreography
2. Foundations: first year achievements
1. Initial architectural style for choreographies
2. Dynamic development model
3. Middleware specification
4. IDRE specification
3. Use cases
4. OW2 impact
1. Community building
2. OW2 ‘Future Internet’ initiative
3. Synergies
5. Prospects
24
25. Prospects (Y2)
1st integration of CHOReOS platform:
4 Refined CHOReOS architectural style and conceptual
model
4 Feedback loop from the development of IDRE
4 Instantiation of the CHOReOS dynamic development
model
4 Stability and interdependencies analysis to support adaptable
choreographies
4 1st Middleware implementations
4 1st Governance and V&V tools and infrastructure
Use cases design
Training kits 25
26. Community Building Prospects
Technical stage Y2 outlook:
4 Improve website content, SEO; Grow social network
usage in consortium
4 Confirm IDRE structure
Open source stage Y2 outlook:
4 Set-up IDRE project on OW2 forge
4 Promote software in events (exhibitions, conferences)
4 Y3 preview:
4 IDRE available for download
4 Fast track project to “Mature” status
Ecosystem stage Y2 outlook: 26