Home
Explore
Submit Search
Upload
Login
Signup
Advertisement
Check these out next
Oracle University - Your Complete Training Source for Oracle Software and Har...
ORACLE USER GROUP ESTONIA
EclipseCon2010 - Painless Metamodel Evolution
Marc Dutoo
Oracle Corporation Summary Presentation eduVision Sept. 2011
Freelance PR
GroovyDSLs
Paul King
SOA Testing Challenges
Scott Barber
Service Integration Goes Social with EasySOA - OpenWorldForum 2011
Marc Dutoo
Reconfigurable Service-Oriented Architectures
lseinturier
Servidores de Aplicação: por que ainda precisamos deles?
Bruno Borges
1
of
72
Top clipped slide
FraSCAti@rivieradev
Oct. 24, 2011
•
0 likes
0 likes
×
Be the first to like this
Show More
•
1,422 views
views
×
Total views
0
On Slideshare
0
From embeds
0
Number of embeds
0
Download Now
Download to read offline
Report
Technology
Education
SOA to SCA with OW2 FraSCAti. Talk @ rivieradev 2011, Sophia, France
demarey
Follow
Advertisement
Advertisement
Advertisement
Recommended
Soa Offerings
Imaginea
350 views
•
20 slides
Radovan Janecek R E S Tor S O A Pv1
SOA Symposium
225 views
•
12 slides
Easier SOA with EasySOA - OW2 Conference 2010 – 23-24 November, Paris
Marc Dutoo
765 views
•
17 slides
Dynamic Language Practices
Paul King
4.6K views
•
127 slides
Service Integration Goes Social - Solutions Linux 2012 (OW2 Track)
Marc Dutoo
833 views
•
12 slides
Corporate overview the services story
ORACLE USER GROUP ESTONIA
1.1K views
•
39 slides
More Related Content
Slideshows for you
(6)
Oracle University - Your Complete Training Source for Oracle Software and Har...
ORACLE USER GROUP ESTONIA
•
3K views
EclipseCon2010 - Painless Metamodel Evolution
Marc Dutoo
•
1.8K views
Oracle Corporation Summary Presentation eduVision Sept. 2011
Freelance PR
•
1.1K views
GroovyDSLs
Paul King
•
4.8K views
SOA Testing Challenges
Scott Barber
•
1.2K views
Service Integration Goes Social with EasySOA - OpenWorldForum 2011
Marc Dutoo
•
1K views
Similar to FraSCAti@rivieradev
(20)
Reconfigurable Service-Oriented Architectures
lseinturier
•
826 views
Servidores de Aplicação: por que ainda precisamos deles?
Bruno Borges
•
1K views
Infrastructure Consolidation and Virtualization
Bob Rhubart
•
1.5K views
EasySOA thanks to OW2 - OW2Con 2011
Marc Dutoo
•
710 views
OW2con11 Use Case SOA, Nov 24-25, Paris
OW2
•
773 views
Extending The Value Of Oracle Crm On Demand Through Cloud Based Extensibility
Jerome Leonard
•
2.5K views
Fusion app tech_con8707_pdf_8707_0001
jucaab
•
3.3K views
The Build vs. Buy Decision for SaaS Delivery
OpSource
•
2.1K views
Cloud Computing and Electronic Design: Xuropa EDPS, 2010
James Colgan
•
487 views
21st Century SOA
Bob Rhubart
•
1.1K views
Tw Technology Radar Qtb Sep11
Adrian Treacy
•
436 views
An Introduction to IaaS Framework
Inocybe Technologies inc.
•
1.3K views
Self-Driving Data Center
Sergey A. Razin
•
991 views
Microservices and Container
Wolfgang Weigend
•
377 views
Oracle
TaiHussain
•
241 views
Oracle Fusion Middleware - pragmatic approach to build up your applications -...
ORACLE USER GROUP ESTONIA
•
879 views
Oracle Staffing Practice
guest5c9d51
•
232 views
Peter Wyatt_
IPv6 Summit 2010
•
726 views
#dbhouseparty - Should I be building Microservices?
Tammy Bednar
•
124 views
Handling Service Orchestration in the Cloud for GlassFish - JavaOne, San Fran...
Sivakumar Thyagarajan
•
1.3K views
Advertisement
Recently uploaded
(20)
Best Healthcare App Development Company for Medical Apps
qsstechnosoft1
•
0 views
PTManu.pdf
abrhsh abadi
•
0 views
ImmortalGameDeck.pdf
Jun-You Liu
•
0 views
Ga4 Recommended ecommerce events.pdf
Codilar Technologies
•
0 views
kamil.pdf
AzeemAslam11
•
2 views
DNN Community Newsletter: An In-Person Review of Recent Open-Source Activity
Will Strohl
•
0 views
Automate the Oracle Cloud Applications.pdf
RohitBhandari66
•
0 views
Perform Mensuration and Calculation PPT.pptx
PauloAngeles4
•
2 views
5c_BigData_Hadoop_HDFS.PPTX
Miguel720844
•
0 views
WordPress Coding Standards
Jonathan Bossenger
•
0 views
Chapter 1
Aman564573
•
0 views
A comprehensive guide to prompt engineering.pdf
AnastasiaSteele10
•
0 views
901721_ch1.ppt
ThnhNguynVn97
•
0 views
REPORT: Heating appliances market in Poland 2022
SPIUG
•
2 views
SAUTER certified buildings.pptx
GraziellaCathleen
•
4 views
Transforming Math Education: Harnessing the Power of Innovative Math Learning...
RobertWalsh104
•
0 views
Build an LLM-powered application using LangChain.pdf
AnastasiaSteele10
•
0 views
ISO 27001 How to accelerate the implementation.pdf
Andrey Prozorov, CISM, CIPP/E, CDPSE. LA 27001
•
0 views
Dual Wall Insulated EBXL Cables for Electric Locomotive by Rohit Damodaran
Karupaswamy1
•
0 views
State of PrintCSS - MarkupUK 2023.pdf
Andreas Jung
•
0 views
FraSCAti@rivieradev
1 From SOA to
SCA with FraSCAti Christophe Demarey, Philippe Merle INRIA ADAM RivieraDev, Sophia Antipolis, France, 20th October 2011 © Copyright 2011 INRIA/ADAM
2 About • Adaptive Distributed
Applications and Middleware • SPL, FOD, MDE, CBSE, AOSD, SOA, CAC, reflective middleware • Joint project-team between U. Lille 1, CNRS and INRIA • Created in 2008 • 2 prof + 1 CR + 2 MdC • 2 postdocs + 10 PhD + 7 engineers + 2 students • Research activities • CALICO • CAPucine • FraSCAti • … • http://adam.lille.inria.fr © Copyright 2011 INRIA/ADAM
3 About me • Research
engineer at INRIA since 2004 • Engineer at U. Lille 1 (2002 - 2004) • Background • Component models and frameworks – OMG CCM – OpenCCM – OW2 Fractal and FraSCAti • JVM for embedded-systems – JITS (Pops team) • Model Driven Engineering • Software tools & pratices – Build tools, forge, continuous integration, code analysis, … © Copyright 2011 INRIA/ADAM
4 About you • Who
knows SOA? • Who applies SOA? • Who would like to apply SOA? • Who knows SCA? • Who uses SCA? • Who would like to use SCA? • Who knows FraSCAti? • Who uses FraSCAti? • Who would like to use FraSCAti? © Copyright 2011 INRIA/ADAM
5 Outline 1. Service-Oriented Architecture
– SOA 2. Service Component Architecture – SCA 3. OW2 FraSCAti © Copyright 2011 INRIA/ADAM
6
From SOA… Service-Oriented Architecture
7
From SOA challenges… • IT architectures • Complexity • Managing 10n lines of code • Monolithic • Breaking application «silos» • Seldom evolvable • Freeing systems from immutable dependencies • SPL, MDE, CBSE, AOSD, … © Copyright 2011 INRIA/ADAM
8 Software decomposition
© Copyright 2011 INRIA/ADAM
9 SOA and SPL,
MDE, CBSE, AOSD, … © Copyright 2011 INRIA/ADAM
10 Software composition
© Copyright 2011 INRIA/ADAM
11 Tools, skills or
contexts? © Copyright 2011 INRIA/ADAM
12 …to existing SOA,
but… SOA leverages complexity and promotes flexibility • Loose coupling • Service composition and orchestration • Well defined and contractualized interfaces • Standard tools and technologies « This is the SOLUTION !!! » Source: oasis-open.org! © Copyright 2011 INRIA/ADAM
13 © Copyright 2011
INRIA/ADAM
14 …Still a partial
solution Today's SOA need to be… • Deployable in different environments • Ensure security and reliability • Adaptable to changing business needs …and thus, SOA lack… • Structured architectures – What is behind the scene? • Reuse capabilities – Reuse the wheel when possible… • Flexibility support – …Or tune it if not! You want SCA! for your business © Copyright 2011 INRIA/ADAM
15 Four challenges for
SOA • Structuring reusable flexible architectures • What is behind the scene? You want • Reuse the wheel when possible… SCA and • …Or tune it if not! FraSCAti! • Interoperability • Orchestrate heterogeneous services – The weather of the city where a Twitter user lives? – REST Twitter user account + SOAP weather service • Integration • Compose heterogeneous piece of software to build a new service – e.g., compose a BPEL process, an OSGi bundle and a Xquery script • Dynamically reconfigurable runtime architectures • research challenge #1 in Service foundations [Papazoglou 07] © Copyright 2011 INRIA/ADAM
16 Service Component Architecture
SCA
17
SCA in a Nutshell SCA (Service Component Architecture) • Aka a «Component Model for SOA» • Since 11/2005 Hosted by the Open SOA consortium • http://www.osoa.org Standardised at OASIS • http://www.oasis-opencsa.org Existing platform providers • Open Source (4): Apache Tuscany, Newton, Fabric3, FraSCAti • Vendors (7): IBM WebSphere FP for SOA, TIBCO ActiveMatrix, Covansys SCA Framework, Paremus, Rogue Wave HydraSCA, Oracle Fusion Middleware © Copyright 2011 INRIA/ADAM
18
Service Component Architecture (SCA) An OASIS’s standard programming model for SOA Network! Sec. log Trans. Network! • Technology-agnostic, adaptability, variability • Interface languages (Java, WSDL, OMG IDL, etc.) • Implementation languages (Java, Spring, OSGi, BPEL, C/C++, etc.) • Binding protocols (WS, REST, JSON-RPC, Java RMI, CORBA, etc.) • Non functional aspects, aka SCA intents and policies • Packaging formats and deployment targets (JAR, JBI, WAR, OSGi, etc.) © Copyright 2011 INRIA/ADAM
19
SCA in a Nutshell (cont’d) RMI/IIOP AccountsComposite External Services External Binding Payment Payments Banking Order Entry Points Loosely coupled Service Component Reference OrderProcessing Processing Component Service Closely coupled Java EE Accounts Ledger SOAP/HTTP BPEL Multi-level Component Loosely coupled composition External Service WarehouseComposite External Warehouse Reference Entry Points Warehouse Warehouse Warehouse Mixed: Broker Service Wire Component Component - technologies JMS - app locations C++ Shipping Wire Reference External Service © Copyright 2011 INRIA/ADAM
Modelling with Eclipse
SCA Tools 20 © Copyright 2011 INRIA/ADAM
21 SCA Hello World
Example © Copyright 2011 INRIA/ADAM
22 SCA Hello World
Example (cont’d) © Copyright 2011 INRIA/ADAM
23 SCA Hello World
Example (cont’d) © Copyright 2011 INRIA/ADAM
24 SCA Hello World
Example (cont’d) © Copyright 2011 INRIA/ADAM
25 SCA Hello World
Example (cont’d) © Copyright 2011 INRIA/ADAM
26 SCA Hello World
Example (cont’d) © Copyright 2011 INRIA/ADAM
27 SCA Hello World
Example (cont’d) © Copyright 2011 INRIA/ADAM
28 SCA Hello World
Example (cont’d) © Copyright 2011 INRIA/ADAM
29 SCA Benefits A Component
Model… • Hierarchic compositions • Configurable properties • Provided/required ports • Synchronous/asynchronous invocations • Communication bindings • Intent and policy supports …for SOA • OASIS standard • Industry acceptance (Apache Tuscany, IBM, Eclipse, …) 4 degrees of flexibility / adaptability • Implementation language (Java, C++, BPEL, etc.) • Interface description language (Java, WSDL, etc.) • Communication protocol (SOAP, IIOP, etc.) • Non-functional properties (security, transactions, etc.) © Copyright 2011 INRIA/ADAM
30 SCA Limitations Static configuration
& deployment • XML file for describing composite components • Lack of deployment API No runtime adaptation & reconfiguration • Lack of introspection API • Lack of reconfiguration API SCA is not a reflective component model You want FraSCAti! © Copyright 2011 INRIA/ADAM
31 FraSCAti
32 FraSCAti Overview • A
framework for SOA interoperability and integration • A reflective SCA component model and framework • Runtime adaptability • Lightweight, efficient, predictable, scalable • Components everywhere • Adaptability of all software layers • An open source SCA implementation • LGPLv2 at http://frascati.ow2.org © Copyright 2011 INRIA/ADAM
33
Middleware made from middleware API Middleware for integrating middleware Interoperability Integration Apache CXF OW2 . Java OSGi Easy Java JMS JSON Spring SOA stack PEtALS . Script Apache Felix BPEL RMI JORAM RPC . Framework (WS, REST) JBI ESB Engines Equinox Engine © Copyright 2011 INRIA/ADAM
34 Interoperability with FraSCAti •
Interoperability is supported by SCA bindings • Web Service / SOAP / WSDL via Apache CXF • JMS via OW2 JORAM • REST / WADL • JSON-RPC • UPnP • Java RMI © Copyright 2011 INRIA/ADAM
35 Integration with FraSCAti •
Integration is mainly supported by SCA implementations • SCA composite • Java POJO and @SCA • BPEL • Spring • Fractal • OSGi • Script – BeanShell, Fscript, Groovy, JavaScript, Jython, Jruby, Xquery • Scala • HTTP servlet binding • C interface/implementation/binding • JMX © Copyright 2011 INRIA/ADAM
36 Multiple programming languages •
FraSCAti is implemented in Java • need a JVM at runtime • But not limited to Java only • BPEL • Spring • BeanShell, Fscript, Groovy, JavaScript, Jython, JRuby, Xquery, … • Scala • C © Copyright 2011 INRIA/ADAM
Adaptability, reconfiguration,
37 reflective systems • Adaptability at runtime is reconfiguration • Examine and modify running systems • “A system which can examine and modify its own state is said to be reflective” [google] • Introspection is “examine” • Intercession is “modify” • Reconfiguration is introspection then intercession on reflective systems • FraSCAti brings reflexivity and reconfiguration to SCA © Copyright 2011 INRIA/ADAM
38 FraSCAti: The marriage
of SCA and Fractal ANR 2007-2009 FraSCAti An open SCA runtime platform built on top of OW2 Fractal Reflective SCA Applications SOA for Fractal © Copyright 2011 INRIA/ADAM
An open reflective
SCA platform 39 FraSCAti FraSCAti REST FraSCAti FraSCAti JMX API FScript Explorer Ad-hoc manual & anticipated scripted reconfiguration Reflective SCA component model API Middleware for integrating middleware Interoperability Integration Apache CXF OW2 . Java OSGi Easy Java JMS JSON Spring SOA stack PEtALS . Script Apache Felix BPEL RMI JORAM RPC . Framework (WS, REST) JBI ESB Engines Equinox Engine © Copyright 2011 INRIA/ADAM
FraSCAti Explorer -
an SCA microscope 40 © Copyright 2011 INRIA/ADAM
FraSCAti Explorer more
than just 41 an SCA microscope © Copyright 2011 INRIA/ADAM
42
FraSCAti Explorer Load SCA composites Visualize, introspect, navigate within SCA composites • Components • Services / References / Bindings / Wires • Properties • Intents Reconfiguration actions • Start/stop SCA components • Add/remove SCA components / wires / bindings / intents • Update SCA properties / intents • Update SCA bindings – Web service address – Java RMI port and exported name © Copyright 2011 INRIA/ADAM
FraSCAti JMX
43 © Copyright 2011 INRIA/ADAM
Reconfiguring SCA applications
with 44 FraSCAti • Interactively via FraSCAti Explorer or JMX • Programmatically via FraSCAti API or Fscript © Copyright 2011 INRIA/ADAM
Fscript/Fpath for SCA
45 composite = $domain/scachild::MyComposite; account = $composite/scachild::AccountFacade; accountRef = $account/scareference::AccountData; stop($account); // (1) unwire($accountRef); // (2) newAccountData = sca-new(«NewAccountDataServiceComponent»); // (3a) add($composite, $newAccountData); // (3b) wire($accountRef, $newAccountData/scaservice::Data); // (4) start($account); // (5) © Copyright 2011 INRIA/ADAM
46 FraSCAti
Aspect Components (FAC) • Non functional concerns as shared & reflective FraSCAti composites • AOP for crosscutting concerns © Copyright 2011 INRIA/ADAM
FraSCAti UML Diagram
Sequence Aspect 47 © Copyright 2011 INRIA/ADAM
48
OW2 FraSCAti SCA-based Architecture
49 OW2 FraSCAti • Itself
an SCA application • 13 composites • 91 components • Biggest SCA application to our knowledge • Most of features implemented by one SCA component © Copyright 2011 INRIA/ADAM
Self-introspecting with FraSCAti
Explorer 50 © Copyright 2011 INRIA/ADAM
Self-introspecting with FraSCAti
JMX 51 © Copyright 2011 INRIA/ADAM
52 FraSCAti « à
la carte » • Support the extensible nature of SCA • <sca:implementation> • <sca:interface> • <sca:binding> • SCA intents • Select the right subset of FraSCAti features to meet application requirements and system constraints • Add new application-specific FraSCAti features • FraSCAti is self implemented © Copyright 2011 INRIA/ADAM
53 FraSCAti Extensible Architecture
in SCA © Copyright 2011 INRIA/ADAM
54 FraSCAti « à
la carte » disk footprint • 256Kb FraSCAti reflective kernel – API + membrane controllers • 500Kb + mininal FraSCAti architecture • 2,4Mb + minimal FraSCAti architecture – Around 2Mb for EMF & SCA MM • 2,9Mb + membrane generation on the fly – Using JDK6 compiler • 6,9Mb + Eclipse Java compiler (JDT) – Around 4Mb for JDT • … + FraSCAti features you need • 40Mb All FraSCAti 1.4 features © Copyright 2011 INRIA/ADAM
55 Use Cases
56 FraSCAti industrial users •
Demonstrators from SCOrWare, Cappucino, ITEmIS, SALTY, Macchiato, EasySOA, SocEDA projects • Embedded as a JBI Service Engine in OW2 PEtALS (EBM WS) • Deploying SCA composites on PEtALS ESB • Embedded as an SOA library in OW2 Scarbo (Open Wide) • FraSCAti as an SOA binding factory • Component framework for EasyVIPER, EasyBPEL and EasyESB (Petals Link) • Easy* components implemented as FraSCAti components © Copyright 2011 INRIA/ADAM
EasyViper
57 http://research.petalslink.org/display/easybpel © Copyright 2011 INRIA/ADAM
FraSCAti and EasyBPEL
58 © Copyright 2011 INRIA/ADAM
EasyESB
59 http://research.petalslink.org/display/easyesb © Copyright 2011 INRIA/ADAM
60
61 FraSCAti tooling • OW2
Forge (SVN, Mailing lists, releases distribution, web site) • OW2 Jira (bug tracker, tasks planner) • Jenkins (continuous integration) • Nexus (repository manager) • Sonar (code quality) © Copyright 2011 INRIA/ADAM
62 FraSCAti tooling
© Copyright 2011 INRIA/ADAM
63 Conclusion
64 What you should
keep in mind about • A framework for SOA interoperability and integration • A middleware of middleware • A reflective component model for SOA • FraSCAti = SCA + Fractal + FAC + ACO + CBM • Used at any software level • SOA applications • FraSCAti platform and its plugins • Non functional crosscutting concerns, aka SCA intents • Component-based reflective membranes • New middleware, e.g., EasyBPEL/EasyViper • Visit the FraSCAti Web site: http://frascati.ow2.org • Read [SCC’09] and [SPE’11] © Copyright 2011 INRIA/ADAM
65 Large scale software
systems need • Interoperability • Integration • Configuration • Deployment • Observation • Reconfiguration You want FraSCAti! for your business • . . . • Various forms of flexibility/adaptability © Copyright 2011 INRIA/ADAM
66 New features for
OW2 FraSCAti 1.5 • See http://jira.ow2.org/browse/FRASCATI • <implementation.osgi> with Concierge • <implementation.velocity> with Apache Velocity • <interface.wadl> • <binding.osgi> • <binding.jgroup> • Deployment on OSGi • Deployment on J2ME • Web-based FraSCAti Explorer © Copyright 2011 INRIA/ADAM
67 FraSCAti Technical Perspectives •
EasySOA FUI project • FraSCAti running on OSGi • SCA-based Web components and bindings • Google RPC binding • Data-oriented components with Talend • Deployment from Jetty to GAE • Improving scripting language support • Web-based FraSCAti Explorer • Other projects within ADAM • Security • J2ME © Copyright 2011 INRIA/ADAM
68 Demonstration FraSCAti @ cloudbees
69 Thanks for your
attention • Who would like to use SCA? • Who would like to try FraSCAti? • Any questions? © Copyright 2011 INRIA/ADAM
70 FraSCAti everywhere, what
else? Visit http://frascati.ow2.org Contact • Philippe Merle: Philippe.Merle@inria.fr • Lionel Seinturier: Lionel.Seinturier@univ-lille1.fr © Copyright 2011 INRIA/ADAM
71 SCA References SCA Specifications
• OpenSOA http://www.osoa.org • OASIS OpenSCA http://www.oasis-opencsa.org OSS Implementations • Tuscany http://tuscany.apache.org • Newton http://newton.codecauldron.org/site/index.html • Fabric3 http://xircles.codehaus.org/projects/fabric3 • FraSCAti http://frascati.ow2.org SCA Resources • http://www.osoa.org/display/Main/SCA+Resources • http://www-128.ibm.com/developerworks/library/specification/ws-sca • http://www.davidchappell.com/articles/Introducing_SCA.pdf • http://www-128.ibm.com/developerworks/websphere/techjournal/0510_brent/ 0509_brent.html • http://events.oasis-open.org/home/sites/events.oasis-open.org.home/files/ Flexible_Agile_Composition_01.ppt [Mike Edwards] • http://www.osoa.org/download/attachments/250/ Power_Combination_SCA_Spring_OSGi.pdf?version=3 © Copyright 2011 INRIA/ADAM
72 Acknowledgements • Slides from
• Philippe Merle - INRIA • Lionel Seinturier – University of Lille • Romain Rouvoy – University of Lille • Rémi Melisson – Orange Labs • Rémi Druilhe – Orange Labs • All FraSCAti team members • Christophe Demarey (INRIA), Michel Dirix (INRIA), Nicolas Dolet (INRIA), Damiel Fournier (INRIA), Christophe Munilla (INRIA), Nicolas Petitprez (INRIA), Valerio Schiavoni (INRIA), Guillaume Surrel (ScalAgent) • Mahmoud Ben Hassine (INRIA), Pierre Carton (INRIA), Jonathan Labejof (Thalès), Adel Noureddine (INRIA), Russel Nzekwa (INRIA), Nicolas Pessemier (INRIA), Clément Quinton (INRIA), Daniel Romero (INRIA) • … © Copyright 2011 INRIA/ADAM
Advertisement