Académique Documents
Professionnel Documents
Culture Documents
services
Chapitre 2: SOA
Dr.Ghada Besbes
Introduction
• Le découpage présentation/traitement/base de données de
l'architecture 3-tiers sert à découpler au maximum une
couche de l'autre mais favorise le cloisonnement en silos
applicatifs indépendants (blocs monolithiques)
2
Introduction
• Les tiers communiquent via un protocole de transport
spécifique qui nécessite une configuration réseau
• Problématique de l’intégration en entreprise
• Entreprises découpées en départements fonctionnels y compris
leurs systèmes d’information
• Processus métiers de plus en plus interdépartementaux
• Les processus qui franchissent les frontières des départements
doivent pouvoir prendre en compte les activités et processus des
autres départements.
3
Introduction
8
Le service
• Le service est un composant clef de l'Architecture Orientée
Services.
• Un service résout un problème donné,
• Expose une interface qui définit le traitement offert sous la
forme d’un message d’entrée et d’un autre de réponse.
• Les services peuvent être combinés pour résoudre des
problèmes de plus en plus complexes,
• Ils sont entièrement transversaux aux plates-formes et très
faiblement couplés.
out
Propriétés des services
2. Couplage faible
• Un service ne peut pas appeler un autre service. Il délègue
cette fonction à un traitement spécialisé dans l’enchaînement
(fonction d’orchestration).
• L’utilisation d’une orchestration évite que les services aient
besoin de connaître les autres services
12
Le couplage fort rend difficile la réutilisation et accroît la complexité des
systèmes
Propriétés des services
➢ L’orchestration favorise l’indépendance des services et
assure que des services n’appellent pas directement
d’autres services
13
Propriétés des services
3. Activation à distance et interopérabilité
• Un service doit être activable à distance indépendamment de sa
technologie
• L’activation se fait par l’envoi (et la réception) d’un message XML
• Le service doit exposer une interface d’utilisation qui est la même
indépendamment de sa localisation sur le réseau
• L’appel au service fonctionne quelque soit le langage et le
système d’exploitation du consommateur (utilisateur du service)
14
Propriétés des services
4. Abstraction
• Fonctionnement du service dit en « boîte noire »
• Seul le contrat exposé au consommateur du service est connue
• Le fonctionnement interne du service ne doit pas être
visible(logique métier et implémentation)
• Il est par conséquent important d’assurer la prédictibilité d’un
service: Pas de variation dans le comportement et dans la
réponse d’un service lors de la réception d’une requête
15
Propriétés des services
5. Sans état (Stateless)
• Un processus ou une application stateless est indépendant.
• Il ne stocke pas de données et ne fait référence à aucune
transaction passée.
• Chaque transaction est effectuée à partir de rien, comme si
c'était la première fois.
• Un service doit être sans état de façon à minimiser la
consommation des ressources
16
Propriétés des services
6. Autonomie
• Un service doit disposer de l’ensembles des informations
nécessaires à son exécution
• Ne doit dépendre d’aucun service externe (couplage lâche)
• Garantir l’autonomie d’un service permet de s’assurer de sa
prédictibilité
17
Synthèse
Depuis… …Vers…
• Orchestration de
• Silos applicatifs
Services
• Couplage fort
• Couplage faible
• Orienté Objet
• Orienté message 18
Service Web
• La notion de « service » est le concept phare, les services Web sont
juste un moyen de les implémenter
• C’est un traitement délivré par un fournisseur et utilisé par un
consommateur
• Implémenté dans n’importe quel langage,
• Déployé sur n’importe quelle plate forme
• Des applications modulaires, auto descriptives :
• Publiées, localisées
• Invoquées de n’importe quel point du web.
• Accessible via des protocoles standards Internet HTTP basés sur le
langage XML
• L’avantage essentiel des services Web concerne le fait que le client
consommateur n’a pas besoin de connaitre l’identité du fournisseur
de service. 19
Service Web
20
SOA: Avantages et limitations
Avantages
L’ouverture et l’interopérabilité, pour partager des modules
applicatifs entre plateformes et environnements.
La réutilisation et la composition, permettant le partage de
modules entre les applications
L’évolutivité, permettant aux applications de greffer de
nouveaux modules afin de répondre aux nouveaux besoins
fonctionnels.
La pérennité, impliquant le support des technologies
existantes et à venir.
21
SOA: Avantages et limitations
Limitations
Obstacle Technique:
Certains anciens systèmes demeurent difficilement compatibles
avec la mise en place de la SOA.
Obstacle Méthodologique:
Il existe encore assez peu de méthodes couvrant l'élaboration et
le déploiement de l’architecture.
22
Développer un modèle
architectural
• Commencer par faire un schéma de l’architecture
• En se basant sur les principaux requis des cas d’utilisation ;
décomposition en sous-systèmes
• Déterminer les principaux composants requis
• Sélectionner un style architectural
• Raffiner l’architecture
• Identifier les principales interactions entre les composants et les
interfaces requises
• Décider comment chaque donnée et chaque fonctionnalité sera
distribuée parmi les différents composants
• Considérer chacun des cas d’utilisation et ajuster l’architecture
pour qu’elle soit réalisable 23
• Détailler l’architecture et la faire évoluer