HAMMAMI DONIA
LETAIF ALYA
Architecture Orientée Services(SOA)
Ecole Supérieure de Commerce Tunisie
Plan
Pourquoi SOA ?
Apport de l’SOA
Limites de SOA
Notion de Web Services
Principes de SOA
Conclusion
Principe général
POO
Objet
-
1980
POC
Composant
-
1990
POS
Service
-
2000
•Polymorphisme
•Encapsulation
•Héritage
•Faible couplage
•Réutilisation
•Message
•Contrat
•Interopérabilité
Historique
3
Hier : Plat de Spaghetti
Développements coûteux Grande complexité
Interconnexions redondantes Maintenance difficile
4
5
SOA = Innovation
Qu’est-ce que SOA ? (1/2)
6
SOA ( Architecture Orientée Services)
Style d ’architecture organisé à partir de services métiers communs mutualisés
pour un ensemble de lignes métiers ou d’applications,
Permet d ’intégrer et de manipuler les différentes briques et composants
applicatifs d’un système informatique et de gérer les liens qu’ils entretiennent.
Objectifs
Décomposer une fonctionnalité en un ensemble de fonctions basiques
(services) fournies par des composants,
Décrire finement le schéma d ’interaction entre ces services.
Qu’est-ce que SOA ? (2/2)
7
Dirigeant
Architecte
Développeur
Intégrateur
Des services que l’entreprise
souhaite exposer à ses clients et
partenaires, ou à d’autres
parties de l’organisation
Une architecture basée sur un
fournisseur, un consommateur et
une description de service
Un style de programmation avec
ses standards, paradigmes,
technologies et outils associés
Un intergiciel offrant des
fonctionnalités en terme
d’assemblage, d’orchestration,
de surveillance et de gestion des
services
Principes de SOA (1/2)
8
Diviser pour régner
Substituer la découpe strictement applicative par une structuration en composants plus
réduits et potentiellement plus simples à faire évoluer.
Neutralité technologique
Assurer une indépendance totale entre les interfaces et les implémentations.
 L’élément qui utilise un service ne doit pas être contraint ni par la technologie
d’implémentation, ni par sa localisation (potentiellement distribué).
Principe de SOA (2/2)
9
Mutualisation
Favoriser la réutilisation de services métiers par plusieurs lignes métiers ou applications.
Permettre la construction de services de haut niveau par combinaison de services existants.
Echanges orientés Document
Les informations échangées par les services possèdent une structure propre, guidée par les
besoins métiers.
On privilégie la transmission de contenus complets et utilisables au profit d ’accès direct aux
structures de type objet ou relationnel.
Apports de SOA
10
 Améliorer la rapidité ainsi que la productivité des développements
 Une modularité permettant de remplacer facilement un service par un autre
 Une réutilisabilité possible des services
 De meilleures possibilités d'évolution
 Une maintenance facilitée
 Couplage faible entre les services
 Architecture basée sur des standards ouverts
 L’indépendance par rapport aux aspects technologiques
Limites de SOA
11
Sécurité
Technique
Certains anciens
systèmes
demeurent
difficilement
compatibles
avec les Web
Services, et donc
ne peuvent
s'inscrire dans
une telle
architecture
Les services web
sont des
technologies
récentes, ceci
implique de
nouvelles
vulnérabilités et
attaques ou
menaces.
Encore assez peu
de méthodes qui
couvrent
l'élaboration et le
déploiement
l’architecture,
sans doute par
manque de
retours
d'expérience
Méthodologique
12
Notion de Web Service (1/7)
Qu’est ce que c’est?
 Un service Web est un système logiciel identifié par un URI, dont les interfaces publiques et les
bindings sont définies et décrites en XML.
 Il est basés sur l’échange de messages :
• écrits en XML
• transmis par HTTP, FTP, SMTP, etc.
 C’est un standard pour les systèmes répartis basés sur XML+HTTP
Notion de Web Services (2/7)
13
Caractéristiques
Les Web services sont réutilisables
Indépendamment de :
la plate -forme (UNIX, Windows,…)
leur implémentation (Java, C++, Visual Basic, …)
 l’architecture sous-jacente (.NET, J2EE,…)
Notion de Web Services (3/7)
14
Pourquoi faire? (1)
 Faire interagir des composants hétérogènes, distants, et indépendants avec un
protocole standard (SOAP)
 Plus concrètement:
 Permettre à une application de trouver automatiquement sur Internet le service dont
elle a besoin et d'échanger des données avec lui
15
Notion de Web Services (4/7)
Pourquoi faire ? (2)
Les Web Services ont été conçus pour intégrer la dimension d'Internet, et la
standardisation des échanges.
Les services Web permettent d ’interconnecter :
Différentes entreprises
Différents matériels
Différentes applications
Différents clients
16
Notion de Web Services (5/7)
WS: une architecture orientée service
 Le fournisseur de service (service provider) définit le service ,publie sa description dans
l’annuaire et réalise les opérations.
 L'annuaire de service(discovery agency) reçoit et enregistre les descriptions de services
publiées par les fournisseurs, reçoit et répond aux recherches de services lancées par les
clients.
 Le consommateur de service (service requestor)accède à l'annuaire de service pour
effectuer une recherche afin de trouver les services désirés. Ensuite, il se lie au fournisseur
pour invoquer le service.
Notion de Web Services (6/7)
17
18
Les quatre principales technologies des Services Web
 Langage XML : Décrit les informations.
 Protocole SOAP (Simple Object Access Protocol) : c’est un protocole de transport de ces
données basé sur HTTP Exécute les services à distance.
 Langage WSDL(Web Services Description Language) :dialecte XML permettant de
décrire un service web .
 Norme UDDI (Universal Data Description Interface) : annuaire permettant d’enregistrer et
de rechercher des descriptions de services web .
Notion de Web Services (7/7)
19
Notion de Web Services : Vue générale
Standard de web service: REST (1/2)
20
 REST (Representational State Transfer) :C’est une style d’architecture dans le quel un composant lit
ou modifie une ressource en utilisant une représentation de cette ressource.
 L’application de cette architecture au web se comprend sur :
- Chaque URL unique est une représentation d’un objet.
- HTTP fournit toutes les opération nécessaires(GET, POST, PUT et DELETE essentiellement).
-Utlisation des stantdards hyermédias : HTML, XML ou JSON qui permettent de relire les
ressources et d’aasurer ainsi la navigation REST
21
 SOAP (Simple Object Access Protocol) est un parmi les standards de services web. C’est
un protocole de RPC (Remote Procedure Call) orienté objet bâti sur XML. Ce protocole est utilisé dans le
modéle client-serveur et permet de gérer les différents messages entre ces entités. Le
protocole SOAP est composé de deux parties :
– une enveloppe, contenant des informations sur le message lui-même afin de permettre son
acheminement et son traitement.
– un modèle de données, définissant le format du message, c’est-à-dire les informations à
transmettre.
Quel que soit le standard de web service utilisé, le principe de programmation est le même.
Standard de web service: SOAP (2/2)
Conclusion
22
SOA
 Architecture adaptative
 Réutilisation du code
 Utilisation de standards
 Productivité importante
Conclusion
23
Web services
Ensemble assez simple de propositions
Le Web comme environnent de développement
Il manque de nombreuses choses dans l’architecture de base :
Sécurité : identification l’envoyeur , garantie de l’intégrité du contenu
Fiabilité : être sûr que les messages arrivent !
24
Merci pour votre attention


Architectures orientées services

  • 1.
    HAMMAMI DONIA LETAIF ALYA ArchitectureOrientée Services(SOA) Ecole Supérieure de Commerce Tunisie
  • 2.
    Plan Pourquoi SOA ? Apportde l’SOA Limites de SOA Notion de Web Services Principes de SOA Conclusion Principe général
  • 3.
  • 4.
    Hier : Platde Spaghetti Développements coûteux Grande complexité Interconnexions redondantes Maintenance difficile 4
  • 5.
  • 6.
    Qu’est-ce que SOA? (1/2) 6 SOA ( Architecture Orientée Services) Style d ’architecture organisé à partir de services métiers communs mutualisés pour un ensemble de lignes métiers ou d’applications, Permet d ’intégrer et de manipuler les différentes briques et composants applicatifs d’un système informatique et de gérer les liens qu’ils entretiennent. Objectifs Décomposer une fonctionnalité en un ensemble de fonctions basiques (services) fournies par des composants, Décrire finement le schéma d ’interaction entre ces services.
  • 7.
    Qu’est-ce que SOA? (2/2) 7 Dirigeant Architecte Développeur Intégrateur Des services que l’entreprise souhaite exposer à ses clients et partenaires, ou à d’autres parties de l’organisation Une architecture basée sur un fournisseur, un consommateur et une description de service Un style de programmation avec ses standards, paradigmes, technologies et outils associés Un intergiciel offrant des fonctionnalités en terme d’assemblage, d’orchestration, de surveillance et de gestion des services
  • 8.
    Principes de SOA(1/2) 8 Diviser pour régner Substituer la découpe strictement applicative par une structuration en composants plus réduits et potentiellement plus simples à faire évoluer. Neutralité technologique Assurer une indépendance totale entre les interfaces et les implémentations.  L’élément qui utilise un service ne doit pas être contraint ni par la technologie d’implémentation, ni par sa localisation (potentiellement distribué).
  • 9.
    Principe de SOA(2/2) 9 Mutualisation Favoriser la réutilisation de services métiers par plusieurs lignes métiers ou applications. Permettre la construction de services de haut niveau par combinaison de services existants. Echanges orientés Document Les informations échangées par les services possèdent une structure propre, guidée par les besoins métiers. On privilégie la transmission de contenus complets et utilisables au profit d ’accès direct aux structures de type objet ou relationnel.
  • 10.
    Apports de SOA 10 Améliorer la rapidité ainsi que la productivité des développements  Une modularité permettant de remplacer facilement un service par un autre  Une réutilisabilité possible des services  De meilleures possibilités d'évolution  Une maintenance facilitée  Couplage faible entre les services  Architecture basée sur des standards ouverts  L’indépendance par rapport aux aspects technologiques
  • 11.
    Limites de SOA 11 Sécurité Technique Certainsanciens systèmes demeurent difficilement compatibles avec les Web Services, et donc ne peuvent s'inscrire dans une telle architecture Les services web sont des technologies récentes, ceci implique de nouvelles vulnérabilités et attaques ou menaces. Encore assez peu de méthodes qui couvrent l'élaboration et le déploiement l’architecture, sans doute par manque de retours d'expérience Méthodologique
  • 12.
    12 Notion de WebService (1/7) Qu’est ce que c’est?  Un service Web est un système logiciel identifié par un URI, dont les interfaces publiques et les bindings sont définies et décrites en XML.  Il est basés sur l’échange de messages : • écrits en XML • transmis par HTTP, FTP, SMTP, etc.  C’est un standard pour les systèmes répartis basés sur XML+HTTP
  • 13.
    Notion de WebServices (2/7) 13 Caractéristiques Les Web services sont réutilisables Indépendamment de : la plate -forme (UNIX, Windows,…) leur implémentation (Java, C++, Visual Basic, …)  l’architecture sous-jacente (.NET, J2EE,…)
  • 14.
    Notion de WebServices (3/7) 14 Pourquoi faire? (1)  Faire interagir des composants hétérogènes, distants, et indépendants avec un protocole standard (SOAP)  Plus concrètement:  Permettre à une application de trouver automatiquement sur Internet le service dont elle a besoin et d'échanger des données avec lui
  • 15.
    15 Notion de WebServices (4/7) Pourquoi faire ? (2) Les Web Services ont été conçus pour intégrer la dimension d'Internet, et la standardisation des échanges. Les services Web permettent d ’interconnecter : Différentes entreprises Différents matériels Différentes applications Différents clients
  • 16.
    16 Notion de WebServices (5/7) WS: une architecture orientée service  Le fournisseur de service (service provider) définit le service ,publie sa description dans l’annuaire et réalise les opérations.  L'annuaire de service(discovery agency) reçoit et enregistre les descriptions de services publiées par les fournisseurs, reçoit et répond aux recherches de services lancées par les clients.  Le consommateur de service (service requestor)accède à l'annuaire de service pour effectuer une recherche afin de trouver les services désirés. Ensuite, il se lie au fournisseur pour invoquer le service.
  • 17.
    Notion de WebServices (6/7) 17
  • 18.
    18 Les quatre principalestechnologies des Services Web  Langage XML : Décrit les informations.  Protocole SOAP (Simple Object Access Protocol) : c’est un protocole de transport de ces données basé sur HTTP Exécute les services à distance.  Langage WSDL(Web Services Description Language) :dialecte XML permettant de décrire un service web .  Norme UDDI (Universal Data Description Interface) : annuaire permettant d’enregistrer et de rechercher des descriptions de services web . Notion de Web Services (7/7)
  • 19.
    19 Notion de WebServices : Vue générale
  • 20.
    Standard de webservice: REST (1/2) 20  REST (Representational State Transfer) :C’est une style d’architecture dans le quel un composant lit ou modifie une ressource en utilisant une représentation de cette ressource.  L’application de cette architecture au web se comprend sur : - Chaque URL unique est une représentation d’un objet. - HTTP fournit toutes les opération nécessaires(GET, POST, PUT et DELETE essentiellement). -Utlisation des stantdards hyermédias : HTML, XML ou JSON qui permettent de relire les ressources et d’aasurer ainsi la navigation REST
  • 21.
    21  SOAP (SimpleObject Access Protocol) est un parmi les standards de services web. C’est un protocole de RPC (Remote Procedure Call) orienté objet bâti sur XML. Ce protocole est utilisé dans le modéle client-serveur et permet de gérer les différents messages entre ces entités. Le protocole SOAP est composé de deux parties : – une enveloppe, contenant des informations sur le message lui-même afin de permettre son acheminement et son traitement. – un modèle de données, définissant le format du message, c’est-à-dire les informations à transmettre. Quel que soit le standard de web service utilisé, le principe de programmation est le même. Standard de web service: SOAP (2/2)
  • 22.
    Conclusion 22 SOA  Architecture adaptative Réutilisation du code  Utilisation de standards  Productivité importante
  • 23.
    Conclusion 23 Web services Ensemble assezsimple de propositions Le Web comme environnent de développement Il manque de nombreuses choses dans l’architecture de base : Sécurité : identification l’envoyeur , garantie de l’intégrité du contenu Fiabilité : être sûr que les messages arrivent !
  • 24.
    24 Merci pour votreattention 