Avantages
L’architecture SOA offre de nombreux avantages sur différents plans.
Plan Architectural
Couplage faible : les services entretiennent une relation qui minimise les dépendances et ne font que s’informer mutuellement
Abstraction : les services n’expose que leur contrat au monde extérieur. Ils cachent leur logique interne
Réutilisation : la logique est divisée en services dans le but de promouvoir la réutilisation
Autonomie : les services contrôlent la logique qu’ils encapsulent
Composition : les services peuvent être assemblés et coordonnés pour former un service plus complexe
Découverte : les services sont conçus pour être décrits de l’extérieur afin de pouvoir être trouvés et évalués par le biais des mécanismes de découverte.
Plan Business
Diminution du coût : Ajouter de la valeur en tirant parti des services existants
- Les nouveaux systèmes peuvent être construits plus rapidement et à moindre coût car
- Réduire les dépenses d’intégration
- Construit pour la flexibilité
- Valeur à long terme de l’interopérabilité
Conçu pour les partenariats :
- Basé sur des normes (e.g. SOAP, WSDL)
- L’intégration est motivée par ce qui est nécessaire, et non par ce qui est techniquement possible
Agilité : Conçu pour le changement
- Permet aux applications d’évoluer dans le temps et de durer
- Abstraire le backend et le remplacer au fil du temps
- Sous-traitance pour créer des services
Plan Technique
Scalable
Gérer des systèmes complexes
- Ne nécessite pas de services centralisés
Utilisation de platforms indépendantes
Utilisation de standard pour communiquer entre les services (HTTP, SOAP, etc …)
Le couplage faible permet une forte flexibilité
partage de données et de fonctionnalité, ceci n’était pas possible avec une architecture monolithique qui était fermée au monde extérieur