Web Services – L’architecture SOA
Présentation de l’Architecture Orientée Service (SOA)
Présentation de l’Architecture Orientée Service (SOA)
L’architecture des Web Services est principalement orientée autour du modèle SOA (Services Oriented Architecture) et pour beaucoup d’ailleurs, les termes SOA et Web Services sont des synonymes. Il existe tout de même une différence fondamentale entre les deux car SOA n’est pas en soit une technologie, mais plutôt un principe de conception, alors que les Web Services, sont eux, des implémentations technologiques.
SOA est une architecture logicielle mettant en œuvre des connexions de couplage lâche entre divers composants logiciels appelés services. Par définition, un service a pour but de proposer, en faisant éventuellement appel à d’autres services complémentaires ou concurrents, un résultat particulier en fonction des informations qui lui ont été envoyées par les tiers. Chacun de ces services, dont les interfaces et les contrats d’utilisation sont obligatoirement connus, répond à des spécifications précises et est considéré en tant que processus métier.
SOA est né en réponse aux problèmes des systèmes existants qui étaient beaucoup trop liés à un langage ou une plateforme particulière et qui ne permettaient aucune évolution sans causer le disfonctionnement de certaines fonctionnalités et une augmentation drastique des coûts de maintenance.
L’idée de base a donc été de considérer qu’un système d’information était composé de différentes briques fonctionnelles offrant chacune des services à l’ensemble des autres briques. Chaque brique devenant alors responsable de ses données et des règles métiers qui en régissent.
Il n’existe pas à proprement parler de spécifications officielles d’une architecture SOA, néanmoins, comme la mise en œuvre de connexions en couplage lâche implique obligatoirement l’utilisation d’interfaces d’invocation et de description de données communes, certaines caractéristiques apparaissent :
L’architecture SOA comprend trois composants principaux
L’architecture décrit également 3 rôles :
Le modèle d’architecture SOA, même si ce concept n’est pas spécifique aux Web Services, a servit de base pour leurs conceptions. C’est ainsi que naquirent, après le premier accord de l’histoire entre tous les grands acteurs de l’informatique (Microsoft, IBM, SUN, Oracle, HP…), les protocoles SOAP, WSDL et UDDI utilisés par les Web Services, s’apparentant respectivement aux Service Provider, Service Requester et Service Broker.