index

SOA Service-oriented architecture

Le SOA est simple! .

Qu'est ce que SOA ?

Comme son nom l'indique, l'approche SOA repose sur l'organisation des applications en ensembles fonctionnels appelés services.
Un service est une application accessible par une interface XML standard (langages SOAP/WSDL), connue sous le nom de Web Services, couches d'invocation normalisée.
Au sein d'une telle architecture, des services (dits "producteurs") sont ainsi utilisés par d'autres services (dits "consommateurs").

Utilisation des service Web

Le « Service Web » est utilisé pour retourner le résultat d'une fonction de traitement d'un objet Métier.
Concrètement, vous n'aurez pas à modifier vos anciens développements pour transformer votre classe métier en service Web car vous utiliserez les Web Services comme une surcouche.
Cela permet d’éviter les re-développement de l'application.

Une bonne pratique consiste à ne pas appeler directement les classes métiers mais en passant par des «Classes Façades » qui permettent de définir clairement quelles sont les méthodes de accessibles par le Web.

Architectures et technologies equivalentes

Bien souvent, vous mettrez en comparaison les Web Service avec des appels RMI (ou CORBA ) car la fonction première du RMI (Remote Method Invocation) est la même que les services WEB.
Si les "web services" sont moins performants que le rmi, leur simplicité de développement et de déploiement ont fait leur succes.
La performance d'une méthode dépend aussi de la qualité de sa programmation et des tests réalisés: Même si des appels aux WS sont plus coûteux que des appels RMI, il sont plus simples à développer, à tester, et donc à optimiser.

Interrêt des Web Services ?

Par son caractère standard, l'approche SOA améliore la rapidité des développements.
Un composant exposé sous forme de Web Services peut être réutilisé facilement par d'autres applications.

Limite des Web Services

Les WS ne sont pas appropriés pour tous les types de traitements. Ils ne concernent qu’une sous classe de service (Qu’on appelle les services sans état – stateless ) :
Les WS ne conviennent pas: Enfin, il ne faut pas en abuser

Exemple:


La gestion des annuaire d'entreprise, permettant de gérer les droits d'accès aux applications en stockant les profils utilisateur. Une fois publiées par le biais de Web Services, ces fonctions peuvent être aisément intégrées aux différentes applications de l'entreprise.

Lexique

wsdl

wsdl Les spécifs

Un wsdl comporte 7 types d'éléments:

Clients SOAP

Client SOAP en ligne:

A Propos de soap :=))

Les specifs http://www.w3.org/TR/soap/
Soap a Propos

Editeur SOA (BPMN, BPEL...)

http://spagic.org/ spagic Un eclipse configurer avec les plugins STP (SOA Tools Platform)
Oracle propose un IDE pour SOA. Je ne l'ai pas essayé.

Annuaires publics

Microsoft, IBM et SAP ont fermé leurs "UDDI registries".
Mais on peut trouver des annuaires public, de type google, qui essayent de recenser les WS du web:

Exemple de web services en ligne

Quelques Liens

UDDI BPM Business Process Management BPEL http://www.zdnet.fr/actualites/informatique/0,39040745,2123382,00.htm Bus de Service

Exemple: le ws "fortune"