Présentation

Article interactif

1 - QUELQUES DÉFINITIONS POUR DRESSER LE DÉCOR

  • 1.1 - Architectures orientées objets
  • 1.2 - Architectures orientées ressources
  • 1.3 - Architectures orientées services
  • 1.4 - Définition du style d’Architecture Orientée Services (SOA)

2 - COMMENT CHOISIR UN STYLE D’ARCHITECTURE ?

3 - REST

4 - MICROSERVICES

5 - REQUIEM POUR SOAP

6 - TRAVAIL DE L’ARCHITECTE OU COMMENT APPLIQUER LE STYLE SOA

7 - CONCLUSION

8 - ANNEXES

  • 8.1 - Exemples d’utilisation de REST
  • 8.2 - Définition de Services web, XML, SOA, EAI
  • 8.3 - Ressource et Objet

Article de référence | Réf : H6002 v2

Travail de l’architecte ou comment appliquer le style SOA
Architectures orientées services SOA - Microservices et APIs

Auteur(s) : Jean-Paul FIGER

Relu et validé le 14 juin 2021

Pour explorer cet article
Télécharger l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !

Sommaire

Présentation

Version en anglais En anglais

NOTE DE L'ÉDITEUR

Cet article est la version actualisée de l'article du même nom et du même auteur paru dans nos éditions en 2006.

16/05/2018

RÉSUMÉ

La technologie SOA (Service Oriented Architecture ou Architecture orientée services) est un style d’architecture dont l’objectif premier est de fournir un couplage lâche entre les agents logiciels. Le style SOA simplifie et donc pousse à la réutilisation de services existants avec comme conséquence la nécessité de bien définir des standards de données. Après avoir dressé une liste complète de tous les styles et modèles d’architecture existants, cet article détaille l’architecture SOA et explique comment la reconnaître. De nombreux exemples viennent illustrer les propos de l’article.

Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.

Lire l’article

ABSTRACT

Service oriented architecture SOA

SOA (Service Oriented Architecture) is an architectural style whose primary purpose is to provide loose coupling between software agents. The SOA style simplifies existing services and so drives their reuse. The result is a need to properly define data standards. After compiling a list of the main existing architectural styles and models, this article details the SOA architecture and explains how to recognize it and put it into practice. Many examples are given to illustrate the article.

Auteur(s)

INTRODUCTION

Cet article est destiné principalement à tous ceux qui s’intéressent à l’architecture des systèmes informatiques. Il a pour but d’expliquer la « révolution » qui se cache derrière le style SOA, la manière de reconnaître une architecture SOA et les conséquences de son introduction dans les entreprises.

Le sigle SOA (Service Oriented Architecture ou Architecture Orientée Services ou microservices) est devenu à la mode début 2005 grâce aux succès du déploiement de l’Internet dans le public et dans les entreprises. En quelques mois, tous les fournisseurs de produits ou de services se sont découverts plus SOA les uns que les autres. La lecture attentive de leur documentation laisse perplexe car des discours marketing ou techniques insipides démontrent à l’évidence que leurs produits ou méthodes, restés inchangés, ne sont conformes ni de près, ni de loin au style SOA.

Le style SOA peut s’appliquer à toutes les technologies pour tout type de réalisation. Cependant, la révolution SOA est tirée par les standards de l’Internet. C’est donc naturellement ce qui servira de cadre à cet article, en particulier pour les exemples.

Il existe deux groupes de travail du W3C (World Wide Web Consortium http://www.w3.org) qui couvrent le sujet SOA, un sur l’architecture du World Wide Web http://www.w3.org/TR/2004/REC-webarch-20041215/ dont la lecture est indispensable et un autre sur les web services heureusement en voie d’abandon ( https://www.w3.org/standards/techs/soap#w3c_all) dont nous verrons plus loin les graves faiblesses.

Nota

La traduction de certains termes anglais en français n’étant pas encore estampillée par l’Académie française, j’ai mis [entre crochets] le terme anglais dont ma traduction est issue.

Cet article est réservé aux abonnés.
Il vous reste 93% à découvrir.

Pour explorer cet article
Téléchargez l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !


L'expertise technique et scientifique de référence

La plus importante ressource documentaire technique et scientifique en langue française, avec + de 1 200 auteurs et 100 conseillers scientifiques.
+ de 10 000 articles et 1 000 fiches pratiques opérationnelles, + de 800 articles nouveaux ou mis à jours chaque année.
De la conception au prototypage, jusqu'à l'industrialisation, la référence pour sécuriser le développement de vos projets industriels.

KEYWORDS

SOA   |   REST   |   service oriented architecture   |   microservices   |   loose coupling

VERSIONS

Il existe d'autres versions de cet article :

DOI (Digital Object Identifier)

https://doi.org/10.51257/a-v2-h6002


Cet article fait partie de l’offre

Technologies logicielles Architectures des systèmes

(239 articles en ce moment)

Cette offre vous donne accès à :

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques

Des services

Un ensemble d'outils exclusifs en complément des ressources

Un Parcours Pratique

Opérationnel et didactique, pour garantir l'acquisition des compétences transverses

Doc & Quiz

Des articles interactifs avec des quiz, pour une lecture constructive

ABONNEZ-VOUS

Lecture en cours
Présentation
Version en anglais En anglais

6. Travail de l’architecte ou comment appliquer le style SOA

Un service d’une architecture orientée services se définit par son URI et par la représentation d’un type Mime du message ou de la ressource. Ces éléments n’ont pas d’adhérence avec une technologie particulière. Ils doivent être définis par l’architecte. Voici un exemple de check-list qu’il faut personnaliser selon l’environnement :

  • le premier travail de l’architecte consiste à identifier et à nommer les ressources persistantes par des URI logiques. Une ressource persistante a une durée de vie supérieure à celle d’une transaction ou d’une session. En aucun cas, un URI ne doit être la conséquence d’un développement ;

  • il faut bien sûr préférer un nommage logique à un nommage physique des URI pour masquer une implémentation spécifique. Sous Apache, il existe un module mod_rewrite qui permet de manière transparente de rediriger un URL vers un autre. Il faut noter que l’URI logique ne contient pas d’indication sur la manière dont chaque service élabore ses réponses. C’est ce qu’on appelle un couplage lâche [loosely coupled]. C’est un principe général d’architecture des systèmes informatiques, trop souvent oublié, qui devient « naturel » avec SOA ;

  • les ressources doivent être identifiées par des noms, et non par des verbes. Les ressources représentent des états, et non des actions. Le verbe, c’est le GET ou le POST du protocole HTTP. C’est la grande différence avec des techniques du type RPC ou Objet qui détaillent à l’infini des actions (méthodes) ;

  • les URI ne doivent pas changer car vous ne saurez jamais qui détient des vieilles références : liens dans d’autres pages, utilisateurs dans leurs favoris, notes sur un bout de papier. Il est prudent de versionner les services pour que les anciennes versions soient toujours disponibles ;

  • le contenu des bases de données ou des entités métiers doit avoir des URI. Tout navigateur devient un client du pauvre très utile pour les tests. Les références peuvent se trouver dans d’autres médias comme des messages électroniques ou de la documentation. Le XSLT devient utilisable pour présenter, inclure ou transformer les données ;

  • la toute puissance du HTTP GET et de la représentation hypermédia permet grâce à des liens de construire la navigation ou de fournir progressivement des détails....

Cet article est réservé aux abonnés.
Il vous reste 95% à découvrir.

Pour explorer cet article
Téléchargez l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !


L'expertise technique et scientifique de référence

La plus importante ressource documentaire technique et scientifique en langue française, avec + de 1 200 auteurs et 100 conseillers scientifiques.
+ de 10 000 articles et 1 000 fiches pratiques opérationnelles, + de 800 articles nouveaux ou mis à jours chaque année.
De la conception au prototypage, jusqu'à l'industrialisation, la référence pour sécuriser le développement de vos projets industriels.

TEST DE VALIDATION ET CERTIFICATION CerT.I. :

Cet article vous permet de préparer une certification CerT.I.

Le test de validation des connaissances pour obtenir cette certification de Techniques de l’Ingénieur est disponible dans le module CerT.I.

Obtenez CerT.I., la certification
de Techniques de l’Ingénieur !
Acheter le module

Cet article fait partie de l’offre

Technologies logicielles Architectures des systèmes

(239 articles en ce moment)

Cette offre vous donne accès à :

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques

Des services

Un ensemble d'outils exclusifs en complément des ressources

Un Parcours Pratique

Opérationnel et didactique, pour garantir l'acquisition des compétences transverses

Doc & Quiz

Des articles interactifs avec des quiz, pour une lecture constructive

ABONNEZ-VOUS

Lecture en cours
Travail de l’architecte ou comment appliquer le style SOA
Sommaire
Sommaire

BIBLIOGRAPHIE

  • (1) - NETCRAFT -   February 2017 Web Server Survey.  -  (2017) https://news.netcraft.com/archives/2017/02/27/february-2017-web-server-survey.html

  • (2) - W3C -   Architecture of the World Wide Web (2004)  -  https://www.w3.org/TR/webarch

  • (3) - W3C – URIS -   Addressability, and the use of HTTP GET and POST (2004)  -  https://www.w3.org/2001/tag/doc/whenTouseGet-20040321.html

  • (4) - PITAC -   Cyber security : a crisis of Prioritization (2005)  -  https://www.nitrd.gov/pitac/reports

  • (5) - FOWLER (M.), LEVIS (J.) -   *  -  Microservices (2004)

1 Organisations

W3C – World Wide Web Consortium

http://www.w3.org

Architecture du World Wide Web

http://www.w3.org/TR/2004/REC-webarch-20041215

Web Services

https://www.w3.org/standards/techs/soap#w3c_all

Projet Apache

http://apache.org

IFTTT (If This Then That)

https://ifttt.com/discover

Schema.org

schema.org

HAUT DE PAGE

Cet article est réservé aux abonnés.
Il vous reste 93% à découvrir.

Pour explorer cet article
Téléchargez l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !


L'expertise technique et scientifique de référence

La plus importante ressource documentaire technique et scientifique en langue française, avec + de 1 200 auteurs et 100 conseillers scientifiques.
+ de 10 000 articles et 1 000 fiches pratiques opérationnelles, + de 800 articles nouveaux ou mis à jours chaque année.
De la conception au prototypage, jusqu'à l'industrialisation, la référence pour sécuriser le développement de vos projets industriels.

Cet article fait partie de l’offre

Technologies logicielles Architectures des systèmes

(239 articles en ce moment)

Cette offre vous donne accès à :

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques

Des services

Un ensemble d'outils exclusifs en complément des ressources

Un Parcours Pratique

Opérationnel et didactique, pour garantir l'acquisition des compétences transverses

Doc & Quiz

Des articles interactifs avec des quiz, pour une lecture constructive

ABONNEZ-VOUS

Sommaire

QUIZ ET TEST DE VALIDATION PRÉSENTS DANS CET ARTICLE

1/ Quiz d'entraînement

Entraînez vous autant que vous le voulez avec les quiz d'entraînement.

2/ Test de validation

Lorsque vous êtes prêt, vous passez le test de validation. Vous avez deux passages possibles dans un laps de temps de 30 jours.

Entre les deux essais, vous pouvez consulter l’article et réutiliser les quiz d'entraînement pour progresser. L’attestation vous est délivrée pour un score minimum de 70 %.


L'expertise technique et scientifique de référence

La plus importante ressource documentaire technique et scientifique en langue française, avec + de 1 200 auteurs et 100 conseillers scientifiques.
+ de 10 000 articles et 1 000 fiches pratiques opérationnelles, + de 800 articles nouveaux ou mis à jours chaque année.
De la conception au prototypage, jusqu'à l'industrialisation, la référence pour sécuriser le développement de vos projets industriels.

Cet article fait partie de l’offre

Technologies logicielles Architectures des systèmes

(239 articles en ce moment)

Cette offre vous donne accès à :

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques

Des services

Un ensemble d'outils exclusifs en complément des ressources

Un Parcours Pratique

Opérationnel et didactique, pour garantir l'acquisition des compétences transverses

Doc & Quiz

Des articles interactifs avec des quiz, pour une lecture constructive

ABONNEZ-VOUS