SlideShare una empresa de Scribd logo
1 de 15
Descargar para leer sin conexión
WOA: Web Oriented Architecture
Chapitre 6 - eServices
GL5
2015/2016
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 1
SOA est…
•  Une architecture logicielle modulaire où les modules sont des
services interagissant les uns avec les autres
•  Une approche top-down
•  Contient des constructions de haut niveau:
•  Applications composites, orchestration, coordination…
•  Basée sur des standards ouverts pour encourager
l'interoperabilité
•  LE modèle organisationnel dominant pour une architecture
d'entreprise
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 2
SOA vs Web
On the other hand, le Web…
•  Défini par:
•  Un protocole de transfert simple: HTTP (HyperText Transfer
Protocol)
•  Le langage HTML (HyperText Markup Language) pour décrire les
ressources disponibles
•  Un identifiant unique pour chaque ressource : URI (Unique
Resource Identifier)
•  Ne présente pas de limites pour les types de données
transférées via HTTP
•  Ne présente pas de limites sur la quantité de données
transférées
•  HTTP est extensible: il suffit de voir la taille du web
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 3
SOA vs Web
Convergence entre Web 2.0 et SOA
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 4
SOA vs Web
SOAP ou REST, that is the question!
SOAP
Tout est dans le message
(entête, infos de sécurité…)
XML
WSDL : description de service
(peut être très complexe)
Spécification WS-*
REST
Tout est ressource,
adressable via URI
Interface uniforme (GET, POST,
PUT, DELETE…)
Client/Serveur
Stateless
Les réponses peuvent être
stockées en cache
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 5
REST
Pourquoi REST?
•  Règle générale : "Unless you have a definitive reason to use SOAP, use
REST"
•  REST est beaucoup plus simple, car basé sur le standard HTTP
•  REST autorise plusieurs formats de données, alors que SOAP n'accepte
que XML
•  Son support pour JSON, par exemple, lui donne un meilleur support pour les
navigateurs web
•  Meilleure performance, car ses lectures peuvent être stockées en
mémoire cache
•  Utilisation de REST:
•  Yahoo l'utilise pour tous ses services
•  Amazon et eBay fournissent les deux types de services web
•  Google a changé vers REST en 2006
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 6
REST
Pourquoi SOAP?
•  WS-Security
•  SOAP et REST supportent SSL
•  Support des autres caractéristiques fournies par WS-Security, ce que REST
ne fait pas
•  REST fait juste du point-to-point, et ne supporte que SSL/TLS
•  WS-AtomicTransaction
•  Manipulation des transactions ACID sur un service
•  REST est limité par HTTP, qui ne peut pas fournir un two-phase commit à
travers des ressources distribuées (la plupart des applications internet n'en
ont pas besoin, mais les applications entreprise, si)
•  WS-ReliableMessaging
•  SOAP supporte la gestion des fautes pour les messages: logique
successful/retry interne
•  REST laisse aux utilisateurs le soin de gérer les problèmes de
communication en réessayant
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 7
REST
Définition de la WOA
•  Style d'architecture logicielle qui étend la SOA pour les applications
Web
•  Considéré comme une version légère de la SOA
•  Utilise l'architecture REST
"En d'autres termes, le modèle Web fournit une architecture unique,
ouverte, et unifiée, qui est à la fois consistante, facilement consommée,
extrêmement extensible, sécurisable, très réutilisable, résiliente, et
hautement fédérée"
Dion Hinchcliffe
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 8
WOA
WOA: Seulement REST?
•  REST est le protocole de base pour WOA
•  WOA inclut également un ensemble de modèles de consommation extraits
du web, comme:
•  Mashup: Agrégation de contenu provenant d'autres sites grâce à des APIs ou
flux RSS
•  Web Widgets (ou Gadgets): un bout de code portable qui peut être installé et
exécuté dans une page web
•  WOA inclut un ensemble de standards largement utilisés pour la
représentation, l'échange et la portabilité des données que REST ne supporte
pas:
•  OpenID: Système d'authentification décentralisé permettant l'authentification
unique et le partage d'attributs
•  O-Auth: protocole permettant à un site consommateur de manipuler les
données d'un utilisateur dans un autre site fournisseur, mais seulement à sa
demande (délégation d’autorisation)
•  Microformats: Approche de formatage de données dans des pages web pour
standardiser leur contenu en utilisant des classes et attributs de balises HTML
et XHTML
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 9
WOA
WOA: SOA + Web 2.0
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 10
WOA
La pile WOA
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 11
WOA
Distribu(on	
  :	
  Feeds,	
  APIs,	
  Widgets	
  
Composi(on	
  :	
  Intégra3on,	
  Mashup,	
  Web	
  
	
  Widgets	
  
Sécurité:	
  SSL,	
  O-­‐Auth,	
  HMAC-­‐SHA-­‐1	
  
Portabilité	
  des	
  données:	
  OPML	
  
Représenta(on	
  des	
  données	
  :	
  XML,	
  JSON,	
  etc.	
  
Méthodes	
  de	
  transfert	
  :	
  HTTP/REST,	
  BitTorrent	
  	
  
Mais WOA, c’est aussi de la SOA!
Elle respect les 8 principe de la Service Orientation
•  Service Reusability
•  Service Contract
•  Service Loose Coupling
•  Service Abstraction
•  Service Composability
•  Service Autonomy
•  Service Statelessness
•  Service Discoverability
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 12
WOA
… avec quelques différences…
SOA a en général un petit ensemble bien défini de terminaisons
(endpoints) à travers lesquels plusieurs données et types de données
peuvent passer
•  WOA alloue à chaque ressource une terminaison, représenté par une URI
SOA construit une couche de messages au dessus de HTTP grâce à SOAP
et WS-*
•  WOA utilise HTTP et ses mécanismes de transfert associés comme la
meilleure abstraction pour la plupart des applications
SOA est conçu comme étant Top-down par les vendeurs
•  WOA est créée par une communauté de développeurs (bottom-up)
SOA utilise WS-Security et autres standards sophistiqués pour la sécurité
WOA utilise juste HTTPS, OAuth et HMAC-SHA-1
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 13
WOA
À quoi ressemble une organisation utilisant WOA?
•  Une toile riche de ressources REST
•  Un ensemble d'outils pour "tisser" cette toile de ressources
dans les nouvelles applications
•  Un ensemble de composants WOA consommables et
réutilisables incluant des widgets, gadgets, réseaux sociaux
intégrés…
•  Un ensemble d'APIs web publiques exposées sur Internet
aux éventuels partenaires
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 14
WOA
Articles
REST vs SOAP, The difference between SOAP and REST, par Steve Francia,
http://spf13.com/post/soap-vs-rest vu le 14/12/2014
Web Oriented Architecture, une transmutation des pratiques de construction
des systèmes d'information, par Jerôme Valloire, publié le 05/05/12 et vu le
14/12/2014
Présentations
Dion Hinchcliffe: Web-Oriented Architecture, Qcon 2009 – London
Emiliano Pecis: Web Oriented Architecture at Oracle, 2008
15
Sources

Más contenido relacionado

La actualidad más candente

Rapport thèse ilef ben slima
Rapport thèse ilef ben slimaRapport thèse ilef ben slima
Rapport thèse ilef ben slima
Ilef Ben Slima
 

La actualidad más candente (20)

eServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementeServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API Management
 
Chp5 - Sécurité des Services
Chp5 - Sécurité des ServicesChp5 - Sécurité des Services
Chp5 - Sécurité des Services
 
Formation JAVA/J2EE
Formation JAVA/J2EEFormation JAVA/J2EE
Formation JAVA/J2EE
 
Java Server Faces 2
Java Server Faces 2Java Server Faces 2
Java Server Faces 2
 
Rapport thèse ilef ben slima
Rapport thèse ilef ben slimaRapport thèse ilef ben slima
Rapport thèse ilef ben slima
 
Les architectures client serveur
Les architectures client serveurLes architectures client serveur
Les architectures client serveur
 
Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)
 
Architecture réparties et les services web
Architecture réparties et les services webArchitecture réparties et les services web
Architecture réparties et les services web
 
diagramme de classe
diagramme de classediagramme de classe
diagramme de classe
 
Architecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependancesArchitecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependances
 
Maven et industrialisation du logiciel
Maven et industrialisation du logicielMaven et industrialisation du logiciel
Maven et industrialisation du logiciel
 
Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka StreamsTraitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
 
Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...
 
Introduction à JPA (Java Persistence API )
Introduction à JPA  (Java Persistence API )Introduction à JPA  (Java Persistence API )
Introduction à JPA (Java Persistence API )
 
Appalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSPAppalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSP
 
Entreprise Java Beans (EJB)
Entreprise Java Beans (EJB)Entreprise Java Beans (EJB)
Entreprise Java Beans (EJB)
 
Architectures 3-tiers (Web)
Architectures 3-tiers (Web)Architectures 3-tiers (Web)
Architectures 3-tiers (Web)
 
Exigences de qualité des systèmes / logiciels
Exigences de qualité des systèmes / logicielsExigences de qualité des systèmes / logiciels
Exigences de qualité des systèmes / logiciels
 
Microservices avec Spring Cloud
Microservices avec Spring CloudMicroservices avec Spring Cloud
Microservices avec Spring Cloud
 
Introduction aux architectures des SI
Introduction aux architectures des SI Introduction aux architectures des SI
Introduction aux architectures des SI
 

Destacado

Big Data Real Time Applications
Big Data Real Time ApplicationsBig Data Real Time Applications
Big Data Real Time Applications
DataWorks Summit
 

Destacado (12)

eServices-Tp4: esb++
eServices-Tp4: esb++eServices-Tp4: esb++
eServices-Tp4: esb++
 
eServices-Chp4: ESB
eServices-Chp4: ESBeServices-Chp4: ESB
eServices-Chp4: ESB
 
eServices-Tp5: api management
eServices-Tp5: api managementeServices-Tp5: api management
eServices-Tp5: api management
 
eServices-Tp1: Web Services
eServices-Tp1: Web ServiceseServices-Tp1: Web Services
eServices-Tp1: Web Services
 
eServices-Chp3: Composition de Services
eServices-Chp3: Composition de ServiceseServices-Chp3: Composition de Services
eServices-Chp3: Composition de Services
 
eServices-Chp1: Introduction
eServices-Chp1: IntroductioneServices-Chp1: Introduction
eServices-Chp1: Introduction
 
eServices-Chp2: SOA
eServices-Chp2: SOAeServices-Chp2: SOA
eServices-Chp2: SOA
 
eServices-Tp2: bpel
eServices-Tp2: bpeleServices-Tp2: bpel
eServices-Tp2: bpel
 
eServices-Tp3: esb
eServices-Tp3: esbeServices-Tp3: esb
eServices-Tp3: esb
 
Getting Started with Real-time Analytics
Getting Started with Real-time AnalyticsGetting Started with Real-time Analytics
Getting Started with Real-time Analytics
 
Real Time Analytics: Algorithms and Systems
Real Time Analytics: Algorithms and SystemsReal Time Analytics: Algorithms and Systems
Real Time Analytics: Algorithms and Systems
 
Big Data Real Time Applications
Big Data Real Time ApplicationsBig Data Real Time Applications
Big Data Real Time Applications
 

Similar a eServices-Chp6: WOA

Les plateformes de développement des web services
Les plateformes de développement des web servicesLes plateformes de développement des web services
Les plateformes de développement des web services
oussemos
 
Web 2.0 Wikipedia 2000
Web 2.0 Wikipedia 2000Web 2.0 Wikipedia 2000
Web 2.0 Wikipedia 2000
Formationcsc
 
2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services
Camus LANMADOUCELO
 
Cours services web_fabrice_mourlin
Cours services web_fabrice_mourlinCours services web_fabrice_mourlin
Cours services web_fabrice_mourlin
angeeLee
 

Similar a eServices-Chp6: WOA (20)

Web services SOAP et REST
Web services  SOAP et RESTWeb services  SOAP et REST
Web services SOAP et REST
 
Architectures orientées services
Architectures orientées servicesArchitectures orientées services
Architectures orientées services
 
Services web rest_support_cours_nfaoui_el_habib
Services web rest_support_cours_nfaoui_el_habibServices web rest_support_cours_nfaoui_el_habib
Services web rest_support_cours_nfaoui_el_habib
 
Soap
SoapSoap
Soap
 
Introduction à Cloud Foundry et au PaaS
Introduction à Cloud Foundry et au PaaSIntroduction à Cloud Foundry et au PaaS
Introduction à Cloud Foundry et au PaaS
 
Les plateformes de développement des web services
Les plateformes de développement des web servicesLes plateformes de développement des web services
Les plateformes de développement des web services
 
S51 vos projets web services ibm i a l aide de php
S51   vos projets web services ibm i a l aide de phpS51   vos projets web services ibm i a l aide de php
S51 vos projets web services ibm i a l aide de php
 
RII Technologies du Web - convergence des technologies du Web et du Cloud Com...
RII Technologies du Web - convergence des technologies du Web et du Cloud Com...RII Technologies du Web - convergence des technologies du Web et du Cloud Com...
RII Technologies du Web - convergence des technologies du Web et du Cloud Com...
 
0570-les-services-web.pdfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
0570-les-services-web.pdfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb0570-les-services-web.pdfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
0570-les-services-web.pdfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
 
De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)
 
Web 2.0 Wikipedia 2000
Web 2.0 Wikipedia 2000Web 2.0 Wikipedia 2000
Web 2.0 Wikipedia 2000
 
soapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
soapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnsoapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
soapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
 
Chap1 p1-introduction
Chap1 p1-introductionChap1 p1-introduction
Chap1 p1-introduction
 
DevoxxFR Présentation des portails en 2014
DevoxxFR Présentation des portails en 2014DevoxxFR Présentation des portails en 2014
DevoxxFR Présentation des portails en 2014
 
Investir sur son API web (in French)
Investir sur son API web (in French)Investir sur son API web (in French)
Investir sur son API web (in French)
 
2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services
 
De l'open source à l'open API avec Restlet
De l'open source à l'open API avec RestletDe l'open source à l'open API avec Restlet
De l'open source à l'open API avec Restlet
 
Cours services web_fabrice_mourlin
Cours services web_fabrice_mourlinCours services web_fabrice_mourlin
Cours services web_fabrice_mourlin
 
Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017
 
Innover par et pour la donnée - Logilab ADBU Bibcamp 2015
Innover par et pour la donnée - Logilab ADBU Bibcamp 2015Innover par et pour la donnée - Logilab ADBU Bibcamp 2015
Innover par et pour la donnée - Logilab ADBU Bibcamp 2015
 

Más de Lilia Sfaxi

Más de Lilia Sfaxi (20)

chp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdfchp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdf
 
Plan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdfPlan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdf
 
Lab3-DB_Neo4j
Lab3-DB_Neo4jLab3-DB_Neo4j
Lab3-DB_Neo4j
 
Lab2-DB-Mongodb
Lab2-DB-MongodbLab2-DB-Mongodb
Lab2-DB-Mongodb
 
Lab1-DB-Cassandra
Lab1-DB-CassandraLab1-DB-Cassandra
Lab1-DB-Cassandra
 
TP2-UML-Correction
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-Correction
 
TP1-UML-Correction
TP1-UML-CorrectionTP1-UML-Correction
TP1-UML-Correction
 
TP0-UML-Correction
TP0-UML-CorrectionTP0-UML-Correction
TP0-UML-Correction
 
TD4-UML
TD4-UMLTD4-UML
TD4-UML
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-Correction
 
TD3-UML-Séquences
TD3-UML-SéquencesTD3-UML-Séquences
TD3-UML-Séquences
 
TD3-UML-Correction
TD3-UML-CorrectionTD3-UML-Correction
TD3-UML-Correction
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - Correction
 
TD1 - UML - DCU
TD1 - UML - DCUTD1 - UML - DCU
TD1 - UML - DCU
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correction
 
Android - Tp1 - installation et démarrage
Android - Tp1 -   installation et démarrageAndroid - Tp1 -   installation et démarrage
Android - Tp1 - installation et démarrage
 
Android - Tp2 - Elements graphiques
Android - Tp2 - Elements graphiques Android - Tp2 - Elements graphiques
Android - Tp2 - Elements graphiques
 
Android - Tp3 - intents
Android - Tp3 -  intentsAndroid - Tp3 -  intents
Android - Tp3 - intents
 
Android - TPBonus - web services
Android - TPBonus - web servicesAndroid - TPBonus - web services
Android - TPBonus - web services
 
Android - Tp4 - graphiques avancés
Android - Tp4 - graphiques avancésAndroid - Tp4 - graphiques avancés
Android - Tp4 - graphiques avancés
 

eServices-Chp6: WOA

  • 1. WOA: Web Oriented Architecture Chapitre 6 - eServices GL5 2015/2016 Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 1
  • 2. SOA est… •  Une architecture logicielle modulaire où les modules sont des services interagissant les uns avec les autres •  Une approche top-down •  Contient des constructions de haut niveau: •  Applications composites, orchestration, coordination… •  Basée sur des standards ouverts pour encourager l'interoperabilité •  LE modèle organisationnel dominant pour une architecture d'entreprise Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 2 SOA vs Web
  • 3. On the other hand, le Web… •  Défini par: •  Un protocole de transfert simple: HTTP (HyperText Transfer Protocol) •  Le langage HTML (HyperText Markup Language) pour décrire les ressources disponibles •  Un identifiant unique pour chaque ressource : URI (Unique Resource Identifier) •  Ne présente pas de limites pour les types de données transférées via HTTP •  Ne présente pas de limites sur la quantité de données transférées •  HTTP est extensible: il suffit de voir la taille du web Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 3 SOA vs Web
  • 4. Convergence entre Web 2.0 et SOA Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 4 SOA vs Web
  • 5. SOAP ou REST, that is the question! SOAP Tout est dans le message (entête, infos de sécurité…) XML WSDL : description de service (peut être très complexe) Spécification WS-* REST Tout est ressource, adressable via URI Interface uniforme (GET, POST, PUT, DELETE…) Client/Serveur Stateless Les réponses peuvent être stockées en cache Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 5 REST
  • 6. Pourquoi REST? •  Règle générale : "Unless you have a definitive reason to use SOAP, use REST" •  REST est beaucoup plus simple, car basé sur le standard HTTP •  REST autorise plusieurs formats de données, alors que SOAP n'accepte que XML •  Son support pour JSON, par exemple, lui donne un meilleur support pour les navigateurs web •  Meilleure performance, car ses lectures peuvent être stockées en mémoire cache •  Utilisation de REST: •  Yahoo l'utilise pour tous ses services •  Amazon et eBay fournissent les deux types de services web •  Google a changé vers REST en 2006 Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 6 REST
  • 7. Pourquoi SOAP? •  WS-Security •  SOAP et REST supportent SSL •  Support des autres caractéristiques fournies par WS-Security, ce que REST ne fait pas •  REST fait juste du point-to-point, et ne supporte que SSL/TLS •  WS-AtomicTransaction •  Manipulation des transactions ACID sur un service •  REST est limité par HTTP, qui ne peut pas fournir un two-phase commit à travers des ressources distribuées (la plupart des applications internet n'en ont pas besoin, mais les applications entreprise, si) •  WS-ReliableMessaging •  SOAP supporte la gestion des fautes pour les messages: logique successful/retry interne •  REST laisse aux utilisateurs le soin de gérer les problèmes de communication en réessayant Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 7 REST
  • 8. Définition de la WOA •  Style d'architecture logicielle qui étend la SOA pour les applications Web •  Considéré comme une version légère de la SOA •  Utilise l'architecture REST "En d'autres termes, le modèle Web fournit une architecture unique, ouverte, et unifiée, qui est à la fois consistante, facilement consommée, extrêmement extensible, sécurisable, très réutilisable, résiliente, et hautement fédérée" Dion Hinchcliffe Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 8 WOA
  • 9. WOA: Seulement REST? •  REST est le protocole de base pour WOA •  WOA inclut également un ensemble de modèles de consommation extraits du web, comme: •  Mashup: Agrégation de contenu provenant d'autres sites grâce à des APIs ou flux RSS •  Web Widgets (ou Gadgets): un bout de code portable qui peut être installé et exécuté dans une page web •  WOA inclut un ensemble de standards largement utilisés pour la représentation, l'échange et la portabilité des données que REST ne supporte pas: •  OpenID: Système d'authentification décentralisé permettant l'authentification unique et le partage d'attributs •  O-Auth: protocole permettant à un site consommateur de manipuler les données d'un utilisateur dans un autre site fournisseur, mais seulement à sa demande (délégation d’autorisation) •  Microformats: Approche de formatage de données dans des pages web pour standardiser leur contenu en utilisant des classes et attributs de balises HTML et XHTML Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 9 WOA
  • 10. WOA: SOA + Web 2.0 Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 10 WOA
  • 11. La pile WOA Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 11 WOA Distribu(on  :  Feeds,  APIs,  Widgets   Composi(on  :  Intégra3on,  Mashup,  Web    Widgets   Sécurité:  SSL,  O-­‐Auth,  HMAC-­‐SHA-­‐1   Portabilité  des  données:  OPML   Représenta(on  des  données  :  XML,  JSON,  etc.   Méthodes  de  transfert  :  HTTP/REST,  BitTorrent    
  • 12. Mais WOA, c’est aussi de la SOA! Elle respect les 8 principe de la Service Orientation •  Service Reusability •  Service Contract •  Service Loose Coupling •  Service Abstraction •  Service Composability •  Service Autonomy •  Service Statelessness •  Service Discoverability Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 12 WOA
  • 13. … avec quelques différences… SOA a en général un petit ensemble bien défini de terminaisons (endpoints) à travers lesquels plusieurs données et types de données peuvent passer •  WOA alloue à chaque ressource une terminaison, représenté par une URI SOA construit une couche de messages au dessus de HTTP grâce à SOAP et WS-* •  WOA utilise HTTP et ses mécanismes de transfert associés comme la meilleure abstraction pour la plupart des applications SOA est conçu comme étant Top-down par les vendeurs •  WOA est créée par une communauté de développeurs (bottom-up) SOA utilise WS-Security et autres standards sophistiqués pour la sécurité WOA utilise juste HTTPS, OAuth et HMAC-SHA-1 Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 13 WOA
  • 14. À quoi ressemble une organisation utilisant WOA? •  Une toile riche de ressources REST •  Un ensemble d'outils pour "tisser" cette toile de ressources dans les nouvelles applications •  Un ensemble de composants WOA consommables et réutilisables incluant des widgets, gadgets, réseaux sociaux intégrés… •  Un ensemble d'APIs web publiques exposées sur Internet aux éventuels partenaires Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 14 WOA
  • 15. Articles REST vs SOAP, The difference between SOAP and REST, par Steve Francia, http://spf13.com/post/soap-vs-rest vu le 14/12/2014 Web Oriented Architecture, une transmutation des pratiques de construction des systèmes d'information, par Jerôme Valloire, publié le 05/05/12 et vu le 14/12/2014 Présentations Dion Hinchcliffe: Web-Oriented Architecture, Qcon 2009 – London Emiliano Pecis: Web Oriented Architecture at Oracle, 2008 15 Sources