Après les services, l'architecture s'oriente vers l'écosystème

Par 23 mars 2009
Mots-clés : Digital Working, Europe

Pour qu'un programme trouve lui-même quels éléments fonctionnels correspondent aux besoins de l'utilisateur, il faudrait qu'il adopte un modèle d'EOA.

Une entreprise lance une nouvelle offre, et doit donc adapter son système de facturation. Le système d'information, doté d'une architecture orientée services (SOA), va trouver seul le service correspondant à la facturation de cette nouvelle offre. L'entreprise vient d'entrer dans l'ère de l'Ecosystem Oriented Architecture (EOA). Ce scénario pourrait se réaliser si la vision de deux chercheurs est menée à terme. A l'heure actuelle, il est impossible de demander au système de trouver automatiquement le service adéquat. Même si, grâce au SOA, le responsable du système n'a plus à réécrire tout le programme, il doit se renseigner, tester plusieurs services pour trouver celui qui lui convient. Pour y remédier, Gerard Briscoe et Phillipe de Wilde* proposent de tirer parti de l'architecture orientée service, où le système d'information est déjà découpée de manière atomique. "L'idée du binôme est de créer des écosystèmes de services, explique Raymond Sclison, directeur technique chez Solucom.
Créer des macro-services
À l'instar des gènes, les services pourraient s'agencer dynamiquement, s'adapter par recomposition. Et finalement créer des macro-services répondant exactement aux besoins de l'utilisateur." Jusqu'à maintenant, lorsqu'un problème était soumis, les algorithmes exploraient toutes les possibilités, une à une. L'algorithme génétique, utilisé dans la démonstration des chercheurs, rend le système capable d'évoluer lui-même : à partir des besoins utilisateurs, les services s'appellent, se combinent et trouvent la meilleure solution. "Actuellement, les services sont déjà techniquement interopérables : il existe des standards nationaux" poursuit Raymond Sclison. On arrive à orchestrer manuellement les services, à les faire coopérer, discuter correctement entre eux, mais l'humain reste indispensable. Il faut comprendre la fonction de chacun des services, et déterminer lequel est optimal pour compléter le système.
Une description sémantique
Pour que le système trouve lui-même quel service est le mieux adapté au besoin, il faudrait pouvoir décrire sémantiquement ce que l'on cherche. Si on arrivait à associer une description sémantique aux services, comme le montre l'article des deux chercheurs, le système serait à même de choisir la meilleure combinaison. "Les services doivent comprendre leur rôle et celui des autres services, pour pouvoir se combiner" explique Raymond Sclison. Même si la simulation des chercheurs a démontré l'efficacité du système, celui-ci reste donc difficilement testable concrètement, tant qu'il n'existe pas de moyen de décrire sémantiquement les services. Selon Raymond Sclison, une autre démarche à entreprendre, pour que cela fonctionne, sera d'ouvrir l'interopérabilité et le marché des services.
* Respectivement Department of Electrical and Electronic Engineering Imperial College London et School of Mathematical and Computer Science Heriot-Watt University.

Mentions légales © L’Atelier BNP Paribas