L’adoption de l’architecture orientée services a pris un essor conséquent depuis sa réintroduction dans les bonnes pratiques d’architecture et la souplesse apportée par les web services. La multiplication d’articles et de documents parfois incohérents et le discours des éditeurs très orientés catalogue rendent très difficile la compréhension des concepts.
La SOA est un ensemble de principes d’architecture SI basés sur l’ouverture, la flexibilité, l’extensibilité et consistant à orchestrer/coordonner des services pour réaliser un processus métier.
Un service est conceptuellement autonome, indépendant des technologies d’accès aux ressources, interopérable, potentiellement réutilisable et possédant une qualité de service. La description et l’implémentation d’un service sont basées sur des interfaces pour permettre le découplage du fournisseur et du consommateur via des protocoles et standards ouverts (ce qui explique son succès actuel par rapport à des initiatives plus anciennes comme CORBA ou DCOM).
Pour aller plus loin dans la compréhension des concepts, le modèle de référence SOA de OASIS constitue une très bonne lecture. En effet, les concepts et les relations définies sont les bases nécessaires pour construire des architectures concrètes en prenant en compte les spécificités imposées par le contexte ou l’environnement de déploiement (standards, protocoles, spécifications, ..).
Les web services grâce à leurs spécificités (standardisation, large adoption dans l’industrie, couplage faible, virtualisation , …) offrent un moyen standard de communication entre les services et de fait constituent une solution technique à la SOA.