Vous êtes sur la page 1sur 27

Architecture Oriente Service (SOA)

Principes fondamentaux de larchitecture SOA


SOA est une vision stratgique pour le systme dinformation. Il nexiste pas une recette pour garantir le succs de la mise en

place dune SOA mais des principes respecter :


Discussion entre les activits mtier et le systme dinformation (SI) Utilisation de standards Pas de remise en cause de lexistant lors dvolutions technologiques Dcouplage entre fournisseur et consommateur de services Indpendance des ressources vis vis de ceux qui les utilisent

Quest ce que SOA?


Larchitecture oriente service constitue un style darchitecture

base sur le principe de sparation de lactivit mtier en une srie de services. Ces services peuvent tre assembls et lis entre eux selon le principe de couplage lche pour excuter lapplication dsire. Ces services sont dfinis un niveau suprieur de la traditionnelle approche composants Gartner - Septembre 2005
3

Quest ce quun Service (au sens SOA) ?


Partage les caractristiques suivantes dun objet Modulaire (ensemble de fonctionnalits qui font sens) Partage les caractristiques suivantes dun composant Boite noire (sparation interface/implmentation) Indpendant de la localisation Neutralit vis--vis des protocoles de transport Correspond un primtre fonctionnel que lon souhaite exposer des

consommateurs (il a une granularit plus forte quun composant) Est faiblement coupl (indpendant des autres services) Expose un petit nombre doprations offrant un traitement de bout en bout Sans tat: un service doit minimiser la consommation de ressources en dlguant la gestion des informations dtat quand cela est ncessaire.
4

Dfinition de service
un service est un comportement dfini par contrat,

qui peut tre ralis et fourni par tout composant pour tre utilis par tout composant, sur la base unique du contrat [Bieber and Carpenter 2002].

Principes de SOA (1/2)

Application 1 Application 2

Message traiter

Service

Contrat
Message trait

Implmentation

Service 1 Service 2

Unservicerespecteuncontrat Un service est autonome Unserviceestrutilisable Unserviceestsanstat Les clients et les services ne partagent que des contrats
6

Principes de SOA (2/2) 4 proprits du service retenir


Un Service est Autonome Un Service expose un Contrat
Conditions Gnrales de Vente Rglement Intrieur Vos droits/Vos devoirs

in out

Les Frontires entre services sont Les services communiquent par

Explicites

messages

Exemple de couplage fort : Gestion de prts


Composants
LoanAgent LoanApproval Account Loan SMSGateway

calculateRisk

checkCredit

createLoan sendConfirmation

LoanAgent est li LoanApproval et Loan LoanApproval est li Account Loan est li SMSGateway

Gestion de prts en couplage faible


Services
LoanProcess CheckAccount Balance Calculate LoanRisk CreateLoan Notify ViaSMS

Quest ce que LoanProcess ? Un processus mtier ! Il permet dorchestrer les services => couplage lche
9

Gestion des Processus Mtiers (BPM)


BPM: Business Process Management But : Donner l'Entreprise les moyens de grer ses processus mtiers de

manire informatise

Optimisation, adaptation aux besoins en temps rel

Un processus est compos de sous processus, de rgles mtiers (Business

rules) et dactivits Un sous processus a son propre but, entres et sorties Les rgles mtier sont les sources de dcision de raliser ou non les activits du
processus mtier.
Les activits

correspondent aux parties du processus mtier qui nincluent pas de dcision et sont

associes des rles Sont ralises par des systmes ou des humains

Un processus est le rsultat dune orchestration de services Le processus est lui-mme accessible en tant que service

10

Exemples de Processus mtier


Banque-Finance : ouverture de comptes et gestion des

demandes de crdit avec des circuits de validation-rejet, processus de compensation interbancaires, transfert de devises, collecte et traitement des ordres de bourse, etc. Assurance : gestion des sinistres, ouverture de dossiers avec la prise en compte de rgles complexes de tarification, etc Tlcommunications : processus de prise de commandelivraison-activation de services ADSL, comptage des tickets de facturation, etc Industrie : SAV, dveloppement de produits, fabrication, traitement des commandes et gestion des stocks (rapprovisionnement), etc Sant : processus logistiques de rapprovisionnement en mdicaments, gestion du dossier patient, etc

11

BPM par lexemple

12

Les couches SOA

13

Les couches SOA

14

Bnfices mtier
Amliorer lagilit et la flexibilit du mtier Faciliter la gestion des processus mtier Offrir la capacit casser les barrires organisationnelles

(silos) Rduire en temps le cycle de dveloppement des produits


Amliorer le retour sur investissement Accrotre les opportunits de revenu

15

Bnfices techniques
Rduire la complexit de la solution Construire les services une seule fois et les utiliser

frquemment
Garantir une intgration standardise et le support de clients

htrognes
Faciliter la maintenabilit

16

Points cls de larchitecture


1.a Search for service

Service consumer

1.b Return contract 2.a Create a process instance


Mediation layer/Service bus

Repository
Contract

2.d Send request

2.b Execute process

2.c Retrieve service end-point

Service provider
17

Business service orchestrator

Business process description

Registry

- 17 -

Standards de larchitecture
Les standards sont un lment cl dune SOA, ils assurent

linteroprabilit

SOAP
W3C

WSDL
W3C

UDDI
Microsoft, IBM, HP

BPEL
Oasis

Simple Object Access Protocol Transporte

Web Services Description Language Dcrit le contrat

Universal Description Discovery and Integration Spec pour Repository/Registry

Business Process Execution Language Dcrit les processus mtier

18

Les trois piliers des Services Web

SOA et web services


Attention ne pas confondre les 2 !
SOA est un ensemble de concepts :

Une SOA peut se mettre en uvre sans Web Services


Les WS sont de lordre de la technologie :

On peut utiliser les Web Services sans faire de SOA (architecture point point sans rutilisation)
Les WS constituent la meilleure solution standardise

disponible
Un service mtier = un web service
19

Le langage BPEL
Standard de lOASIS Norme permettant de dcrire des processus en XML Propose les fonctions basiques dun langage de programmation: sequence, flow, loop, switch Identification des Instances de Processus Gestion des transactions Gestion des fautes
20

BPEL le chef dorchestre

21

Enterprise Service Bus (ESB)


ESB est une couche de mdiation
Cest le point dentre vers un service Il doit tre normalis mais on ne sait pas qui fourni le service et

comment il le fourni (implmentation).

Infrastructure qui optimise les changes entre consommateurs et

fournisseurs de services. Il peut prendre en charge :


Routage transformation des donnes transactions, scurit, qualit de service,

Le but dun ESB est de permettre de communiquer de manire simple

et standardise entre des applications htrognes

22

Quelques manires dimplmenter un ESB


Intergiciels de type EAI (Enterprise Application Integration)
Message Broker avec connecteurs propritaires lis au moteur

dintgration

Intergiciels de type Bus tel que CORBA Routeurs Web services tel que WebSphereWeb Services Gateway Intergiciels de type MOM (Message Oriented Middleware) Selon le type dimplmentation retenu, lESB assurera des

services : le choix dpend des besoins

LESB nest pas obligatoire : mais il est fortement recommand

pour viter le couplage entre fournisseur et consommateur

23

Conclusion

24

Du dj vu ?
SOA est une volution des plate-forme passes, tout en prservant les caractristiques russies des architectures traditionnelles
Contractualisation des services Design by Contract (Meyer) Dcouplage Interface/Implmentation, interoprabilit,

transparence des communications,


Middlewares la CORBA

Couplage faible Message Oriented Middleware (MOM) Orchestration des services Travaux autour des workflows, langages de coordination SOA est une volution plutt quune rvolution
25

Chronique dune volution

Assembleur Langages machine

objets Langages procduraux

* *

*
services

composants

services

01011 10100 11000 01011

Niveaux dabstraction grandissant


- 26 -

Synthse

Orient fonctionnalits Conu pour durer Cycle de dveloppement long

Orient processus Conu pour changer Dveloppement et dploiement interactif

Silos applicatifs Couplage fort Orient Objet

Orchestration de Services Couplage faible Orient message

- 27 -

Vous aimerez peut-être aussi