L’orchestration des services : une révolution en puissance 

Plusieurs termes techniques à la mode sont utilisés à mauvais escient. D'aucuns pensent, par exemple, que le Web 2.0 fait allusion à un changement technique radical, alors qu'il n'en est rien. En fait, la véritable révolution se trouve plutôt du côté de l'application nouvelle de techniques existantes dans les couches médianes. Parmi ces techniques, l'orchestration des services d'affaires (fer de lance de plusieurs grands projets actuels en TI) propose une solution technologique nouvelle et flexible.

L'orchestration des services, généralement couplée avec une architecture orientée service (SOA), change carrément la façon dont les systèmes d'information, grands et petits, sont conçus, et ce, sans nécessairement offrir à l'utilisateur une nouvelle perception de ce qu'il entreprend – à part le fait qu'il peut maintenant accéder à plus de données et de fonctionnalités à partir d'un même point. C'est un changement radical du point de vue de la conception et de la gouvernance des systèmes. Cependant, un de ses pièges est que, pour l'utilisateur moyen, c'est un peu comme si son patron changeait sa voiture en lui disant que la nouvelle en a beaucoup plus sous le capot, alors qu'elle ne semble pas être plus puissante que la précédente. L'utilisateur se dit alors « à quoi bon changer? », et ce raisonnement retentit jusque dans les hautes sphères de la direction.

BPEL : un outil complet et intégré
Le concept d'architecture orientée service est tout simplement génial; il coule de source tout en étant révolutionnaire. Il est l'aboutissement de la réutilisation (caractérisée par la programmation orientée objet) et de l'interopérabilité (caractérisée par la conception de systèmes multiples). Et, grâce à l'outil d'orchestration des services BPEL (Business Process Execution Language), ce concept est poussé encore plus loin. En effet, BPEL permet de créer de nouveaux processus en utilisant ceux déjà existants et ainsi de créer de nouvelles entrées et sorties de données dans un système; exploit complexe, mais qui l'aurait été bien davantage sans le recours à cet outil de manipulation de haut niveau.

Le BPEL et ses considérations techniques
La transposition du concept BPEL à la réalité doit tenir compte d'une foule de facteurs, notamment des facteurs techniques. Permettre à deux applications en apparence distinctes de communiquer entre elles implique, à première vue, qu'elles doivent utiliser le même langage et le même mode de communication, et connaître leurs formats d'échange de données. Le BPEL balaie ces principes d'un coup. En effet, les outils de conception BPEL permettent la configuration de connecteurs pour toutes sortes d'interfaces – en passant par des objets Corba ou DCOM –, des messages en attente, des liens directs vers des bases de données, des connexions TCP/IP, et j'en passe. Chaque système peut donc demeurer ce qu'il est en étant intégré à un tout. De plus, les manipulations de données possibles dans les processus BPEL eux-mêmes permettent de formater les messages entrants et sortants selon un modèle reconnaissable par les acteurs externes concernés. Bref, BPEL est un outil extrêmement puissant qui, s'il est bien maîtrisé, permet une orchestration des services disparates qui crée une symphonie dont les échos dépassent largement la somme de ses parties.

Il y a encore beaucoup à dire sur le sujet. Dans de prochains articles, nous explorerons les avantages d'une architecture orientée service qui s'appuie sur un service d'orchestration ainsi que les défis politiques et logistiques qu'elle représente.

François Verpaelst
Intégrateur, Secteur Défense et Sécurité publique, Projet JCDS
Sun Certified Java Programmer Platform 1.4

 

Tous droits réservés. Copyright @ DMR Conseil 2000 - 2007