
Comme son nom le suggère, l’élément clé de SOA (Service Oriented Architecture) est le Service. Il est pourtant difficile de faire le consensus autour de la notion de service et il est souvent difficile de répondre à cette simple question “Qu’est-ce qu’un service ?”. Ce sujet débouche invariablement sur, au choix : Un blanc ; Une réponse alambiquée et incertaine ; Une discussion enflammée (ou un débat stérile).
On pourrait proposer la définition suivante : “Un Service est un composant logiciel distribué, exposant les fonctionnalités à forte valeur ajoutée d’un domaine métier”. Malheureusement, les définitions aussi courtes (bien qu’exactes) sont nécessairement incomplètes et amènent un florilège de questions.
Pour répondre plus précisément à la question, nous vous proposons, dans cette série d’articles parus sur le blog de Xebia, de passer en revue les huit aspects qui caractérisent un service :
- Contrat standardisé : L’ensemble des services d’un même Système Technique sont exposés au travers de contrats respectant les mêmes règles de standardisation.
- Couplage lâche : Le contrat d’un service doit imposer un couplage lâche de ses clients.
- Abstraction : Le contrat d’un service ne doit contenir que les informations essentielles à son invocation. Seules ces informations doivent être publiées.
- Réutilisabilité : Un service exprime une logique agnostique et peut ainsi être positionné comme une ressource réutilisable.
- Autonomie : Un service doit exercer un contrôle fort sur son environnement d’exécution sous-jacent. Plus ce contrôle est fort, plus l’exécution d’un service est prédictible.
- Stateless (sans état) : Un service doit minimiser la consommation de ressources en déléguant la gestion des informations d’état quand cela est nécessaire.
- Découvrabilité : Un service est complété par un ensemble de métas données de communication au travers desquelles il peut être découvert et interprété de façon effective.
- Composabilité : Un service doit être conçu de façon à participer à des compositions de services.
Ces 8 aspects sont issus du livre “SOA Principles of Service Design” de Thomas Erl, également auteur du site SOA Principles.
Christophe Heubès SOA SOA
Alain Clapaud m’a fait le plaisir de m’interviewer dans le cadre de son article “Tibco porte sa plate-forme SOA sur Amazon EC2“ parru dans 01 Informatique.
Christophe Heubès SOA Amazon EC2, Cloud, SCA, Silver, SOA, Tibco
Tout simplement géniale, cette vidéo fait le tour de la blogosphère SCRUM / Agile : Le retour de 6 mois d’expérience d’une équipe SCRUM.
Tout y est :
- L’équipe.
- Les cérémonies.
- Les artefacts.
- Le fun.
La réalisation très soignée et la BO ne gâchent rien.
A regarder absolument !
Christophe Heubès Méthodes agiles Méthodes agiles, Scrum
L’objectif initial des Web Services est de fournir un ensemble de standards permettant d’exposer des services de manière interopérable.
La mode du tout Web Service a rapidement mis en exergue les manques du triptyque de départ (WSDL, SOAP, UDDI) qui n’est plus qu’un diptyque. Par exemple, les aspects transactionnels en sont absents, ce qui impose de gérer des mécanismes de compensation. C’est alors que se sont mis à fleurir les WS-*. Même après consolidation et épuration, la confusion autour de ces standards est palpable et il semble illusoire d’aboutir à un modèle qui soit interpéropérable out-of-the-box.
C’est face à ce constat que s’est créée la Web Service Interoperability Organization (WS-I org.), consortium industriel dont l’objectif est d’établir et de diffuser un ensemble de best practices autour des standards Web Service, en vue de garantir l’interopérabilité des différentes implémentations et utilisations qui sont faites de cette pile de standards.
Dans ce billet, publié sur le blog de Xebia, nous reviendrons rapidement sur la galaxie des standards Web Services, avant de présenter la Web Service Interoperability Organization (WS-I org.) et ses travaux.
Nous nous attarderons ensuite sur les profils proposés par le WS-I puis sur les outils qu’il met à disposition.
Nous terminerons avec quelques recommandations quant à l’implémentation de Web Services conformes aux profils du WS-I.
Christophe Heubès SOA Web Services, WS-I
C’était il y a un an déjà. Le Paris JUG réunit maintenant près de 150 personnes chaque mois et semble avoir fait des émules avec près de dix Java User Groups en France.
Antonio Goncalves, David Dewalle et Zouheir Cadi organisent, pour fêter cet anniversaire, une soirée exceptionnelle le mardi 10 février 2009 dans les locaux de la Fiap.
Au programme :
- 20h00 à 21h00 : 1ère session de quickies :
- Le Paris JUG, 1 an déjà par Antonio Goncalves, David Dewalle et Zouheir Cadi.
- Les JUGs en France avec L’équipe du Paris JUG, Christophe Jollivet (Tours JUG), Xavier Hanin (Bordeaux JUG), Nicolas Leroux et Stephane Epardaud (Riviera JUG), Nicolas de Loof (BreizhJug), Sebastien Roul (Nantes JUG), Christophe Meyer, JM Doudoux et Xavier Roy (Lorraine JUG), Gaël Blondelle (Toulouse JUG).
- Présentation du Framework Wicket par Tarik Filali Ansary.
- Jazoon’09 - présentation de la conférence et des dernières news par Christian Frei.
- 21h45 à 22h45 : 2e session de quickies :
- Parleys par Stephan Janssen.
- Présentation de Java SE 7 Dolphin par Thomas Chamas.
- Comment créer un jeu vidéo en 3D en Java avec OpenGL ? par Julien Gouesse.
- 23h à … : 3ème mi-temps des juggers, cette fois-ci il est préférable (voire nécessaire) pour y participer de s’inscrire.
Venons nombreux et merci encore à Antonio, David, Zouheir, aux speakers, aux sponsors et aux partenaires !
Les inscriptions sont ouvertes : pour assister à la soirée et pour la 3e mi-temps (Châtaignes et Cassis - 34 rue Gassendi - 75014 Paris - à côté de la rue Daguerre).
Christophe Heubès Java / J2EE Paris JUG
—
Entrée originale publiée dans la revue de presse Xebia du 12 janvier 2009.
—
Anne Thomas Manes, s’est fait son petit plaisir de début d’année en publiant lundi dernier, sur le blog “Application Platform” du Burton Group, un billet intitulé “SOA is Dead; Long Live Services“.
Elle y annonce la couleur d’entrée de jeux : “SOA met its demise on January 1, 2009, when it was wiped out by the catastrophic impact of the economic recession.”. En substance, alors que les SOAs étaient annoncées comme le paradigme d’architecture qui allait sauver les SI, elles ont en fait, après moult millions investis, empirées les choses (à quelques exceptions).
Les causes de ce fiasco ? D’après Anne Thomas Manes, pas les SOAs en tant que telles, rassurez vous. Si aujourd’hui, le métier ne croit plus aux promesses des SOAs, c’est avant tout un problème d’approche : Ceux qui ont compris que les SOAs n’étaient qu’un des outils du changement (changement organisationnel profond) ont profités d’un ROI énorme. Ouf !
Ce n’est donc pas aux funérailles des Architectures Orientées Services que le Burton Group nous convie en ce début d’années mais à celles de l’acronyme “SOA”, dont nous avons oublié le sens premier.
Lire la suite…
Christophe Heubès SOA SOA
L’article du Touilleur Express (aka Nicolas Martignole) intitulé Exadel Flamingo : JBoss Seam et Adobe Flex ensembles m’a donné envie de tester les capacité de flamingo d’Exadel.
Exadel Flamingo fournit un ensemble de scripts, basés sur Maven, visant à simplifier le démarrage de projets RIA. Ces scripts permettent de générer le code initial et redondant d’un projet. La promesse est donc d’offrir la capacité de créer une application CRUD dotée d’une interface riche très rapidement et sans effort de développement.
Les technologies couvertes aujourd’hui sont :
- Flex et JavaFX pour partie cliente,
- AMF et Hessian pour la communication,
- JBoss Seam et Spring pour la partie serveur.
Question de contexte et de goût, j’ai pour ma part porté mon attention sur le triplet Flex / AMF / Spring.
Même si certains aspects méritent des améliorations, la promesse est tenue. Bien que n’ayant jamais pratiqué Flex (ou presque), il ne m’a pas fallu longtemps pour monter mon CRUD Flex / Spring / Hibernate. Le billet Exadel Flamingo - Applications Flex, AMF, Spring, publié sur le blog de Xebia France, présente le déroulé de mes premiers essais.
Christophe Heubès Java / J2EE
Comme annoncé sur le blog de Xebia france dans le billet “Spring Integration - L’avènement des ‘lightweight ESB’ ?“, SpringSource a annoncé fin 2007 le lancement de Spring Integration, une implémentation légère des Enterprise Integration Patterns.
Le projet est aujourd’hui dans sa phase finale (la version courante est 1.0.0.M4). Mark Fisher apporte les dernières touches à Spring Integration : bugfix, refactoring, configuration, documentation, samples, …
L’occasion d’une introduction à Spring Integration, la plate-forme de messaging de SpringSource.
Christophe Heubès SOA ESB, Intégration, SOA, Spring
Les mois de mai et juin ont été l’occasion de dérouler sur le blog de Xebia France une série intitulée “Les 10 pièges de la SOA”. Cette série, à l’initiative de mes collègues hollandais, Gero Vermaas, Viktor Grgic, Rik de Groot et Vincent Partington a pour objectif de faire partager nos expériences issue de l’implication des consultants Xebia dans des projets SOA (Service Oriented Architecture).
La liste complète de ces pièges peut être ordonnée en trois catégories :
Les pièges liés à l’implémentation :
Les pièges liés à l’architecture et au design :
Les pièges liés à l’organisation :
Comme toujours dans ce genre de “classement”, cette liste n’est ni exhaustive ni définitive.
—
Article original : “Les 10 pièges de la SOA“ sur le le blog de Xebia France.
Christophe Heubès SOA
Incontournable aujourd’hui, Ajax montre pourtant d’ores et déjà ses limites. Quelle technologie privilégier pour soutenir le développement des RIA (Rich Internet Application) ? Face à cette question, Xebia a choisi de miser sur Flex.
Guillaume Bodet, directeur technique de Xebia, revient pour TV4IT sur les raisons de ce choix. Sans mettre de côté les difficultés que posent encore les défauts de jeunesse de Flex.
Christophe Heubès Java / J2EE