SOA : et si votre système communiquait avec l'extérieur ?

Les architectures orientées services gère les flux de données et les processus métiers aussi bien au sein de l'entreprise qu'au-delà de ses frontières organisationnelles. Mais la SOA multi-entreprises ne va pas de soi.

Le concept de SOA a engendré des changements profonds et durables dans les modes de fonctionnement des entreprises, tant au niveau de la façon dont elle opère leur activité que de l’organisation de leurs systèmes informatiques. Toutefois, l’usage de la SOA nécessite aujourd’hui un changement de paradigme : au-delà des architectures et des applications de l’entreprise, des questions plus larges et fondamentalement différentes doivent trouver réponse dans l’espace qui se situe entre les entreprises. Ce nouveau paradigme s’appelle la SOA Multi-Entreprises.

La SOA Multi-Entreprises gère les flux de données et les processus métiers aussi bien au sein de l'entreprise qu'au-delà de ses frontières organisationnelles, géographiques et politiques. Ce qui lui permet de s'adapter rapidement aux évolutions des marchés, des technologies et des environnements législatifs et d'accompagner technologiquement sa croissance. Ce concept contient plusieurs principes que les partisans de la SOA peuvent considérer comme des hérésies.

Hérésie n°1 : Cela n'a pas (autant) d'importance
Pour beaucoup d'entreprises, la façon d'appréhender la SOA est fortement influencée par une vision interne de l'informatique. La SOA est bien souvent considérée, par essence, comme simplement un autre outil de développement et d'intégration inter-applicative. De ce fait, elle est communément utilisée pour intégrer des applications existantes à l'intérieur de l'entreprise.

La SOA est donc un choix parfaitement justifié pour l'intégration interne. Mais en ne concentrant son temps, son budget, l'attention de ses managers, etc. que sur l'intérieur de l'entreprise, celle-ci passe à côté d'un potentiel d'opportunités qui trouvent leur raison d'être au-delà des frontières de l'entreprise.

Opérer à l'international implique, par exemple, un certain nombre de problématiques qui ne peuvent trouver une réponse qu'en dehors des quatre murs de l'entreprise. Lorsqu'on travaille dans un environnement international, il faut savoir s'accommoder d'un certain nombre de contraintes : chaînes logistiques très étendues, législations et règlementations fiscales différentes qu'il faut respecter (et pouvoir s'y adapter quand elle changent), coordination de filiales multiples, relations avec un grand nombre de fournisseurs, de clients et de revendeurs aux pratiques variées... Il s'agit donc d'un environnement multientreprises complexe et en perpétuel mouvement, et l'entreprise qui sait s'y adapter avec le plus d'agilité garde un avantage concurrentiel certain.

Les concepts et les technologies de SOA Multi-Entreprises répondent à ces problématiques et des analystes tels qu'AMR Research et Gartner ont montré que ce type de projets délivre un ROI (retour sur investissement) plus élevé que celui de projets d'intégration des systèmes internes.

Hérésie n°2 : la SOA ne tourne pas (seulement) autour des Web Services
Un autre domaine sur lequel la SOA "interne" entre en conflit avec le concept plus large de SOA dans un environnement multi-entreprises est le choix des technologies. Pour beaucoup, l'expression et le concept de SOA ne sont qu'un synonyme de "Web Services".

Cette technologie de déploiement unique autour des Web Services peut être intéressante lorsqu'on parle de projets internes. Mais si on s'intéresse à ce qui se passe au-dehors de l'entreprise, elle devient totalement inadéquate. Et cela pour une simple raison : une grosse entreprise peut avoir plusieurs centaines de systèmes internes, tous probablement compatibles avec les Web Services ; mais cette même entreprise a des milliers de clients et de fournisseurs, et chacun a sa propre vision de l'intégration des processus et des données. Et espérer faire adhérer tout cet écosystème à une seule et unique forme d'intégration est purement utopique.

Les clients n'accepteront pas, en tout cas pas tous. Ils pourront même, s'ils sont suffisamment gros, imposer leurs propres options, différentes d'un client à un autre. Les fournisseurs pourront accepter, mais augmenteront, directement ou indirectement, leurs frais et leurs tarifs, pour compenser. Et si, par miracle, tous les partenaires de l'entreprise se mettent d'accord sur une même technologie, il est matériellement impossible que tout le monde l'adopte simultanément.

Dans un environnement SOA Multi-Entreprises, les Web Services sont une option parmi d'autres : AS2, AS3, AS4, ebXML, SOAP sur JMS, FTP, RosettaNet, SWIFT, etc. Au final, les Web Services ne seront probablement pas le mode principal de communication multi-entreprises : des standards tel que AS2 s'avèreront mieux indiqués et d'une gestion plus facile. L'important, dans une architecture SOA, c'est sa capacité à supporter de multiples canaux de communication.

Hérésie n°3 : la SOA va devenir une technologie héritée
Pour des projets internes à l'entreprise, la SOA a le vent en poupe. Dans un environnement multientreprises, elle devra être gérée de la même façon que d'autres technologies héritées, car les dynamiques technologiques sont différentes à l'intérieur et à l'extérieur de l'entreprise.

Une entreprise aura tendance, à fins de simplification, à limiter le nombre de technologies et de versions utilisées et à éviter les évolutions trop importantes d'une technologie à une autre. En dehors de l'entreprise, rien n'est contrôlable : les outils, les protocoles multi-entreprises et standards sectoriels évoluent à leur propre rythme.

De plus, un environnement multi-entreprises compte toute une variété de standards et de technologies, anciennes et nouvelles. Les technologies considérées comme les plus récentes et les meilleures par une entreprise, pourront être vues comme "anciennes" par ses partenaires - et inversement. L'un des objectifs de la SOA multi-entreprises est justement de gérer la complexité inévitable de l'écosystème de partenaires d'une entreprise - au lieu de chercher à la réduire - et de rendre plus facile les échanges en son sein - plutôt que de juste diminuer les coûts informatiques.

La SOA en général ne deviendra pas "héritée" avant qu'une prochaine grande révolution dans le domaine de l'architecture ne change cette donne. Mais un environnement multi-entreprises nécessite de pouvoir supporter un grand nombre de technologies anciennes, actuelles et en devenir. Dans ce contexte, les SOA doit donc être pensées et gérées comme le seraient des technologies héritées.

Hérésie n°4 : La SOA Multi-Entreprises est nécessaire à l'intérieur l'entreprise
Les outils et technologies utilisées pour répondre aux besoins de la SOA Multi-Entreprises sont bien souvent également ceux qui répondent le mieux aux besoins internes.

La plupart des entreprises fonctionnent comme un ensemble de petites organisations distinctes, plus que comme une seule et même entité. Et bien souvent, les choix technologiques sont faits par chaque service, indépendamment les uns des autres. L'entreprise se retrouve donc, en interne, dans la même situation qu'avec ses partenaires extérieurs, particulièrement quand elle s'est développée par acquisitions.

Les entreprises qui font appel à des hébergeurs ou à des prestataires externes sont dans la même situation : le prestataire s'apparente alors à une division de l'entreprise fonctionnant avec des technologies différentes. Là encore, la SOA Multi-Entreprises apparaît comme le seul moyen de gérer cette complexité.

Enfin, la plupart des entreprises qui ont des infrastructures SOA font appel à des technologies et des éditeurs SOA différents. Ces infrastructures disparates nécessitent, elles aussi, d'être intégrées. La plupart du temps, les infrastructures SOA disparates de l'entreprise sont capables d'interopérer entre elles. Cependant, si l'écart technologique ou "philosophique" entre les solutions est trop important, la SOA Multi-Entreprises est un choix intéressant pour relier les différents systèmes.

Pour toutes ces raisons, les principes de la SOA Multi-Entreprises sont loin d'être des hérésies. Au contraire, ils sont porteurs de compétitivité pour les entreprises qui sauront les mettre en œuvre et les exploiter habilement et efficacement.