PRATIQUE JAVA 
Expliquez-moi... Les orchestrations BPEL
 
Cette spécification clé du monde des échanges métier propose de gérer l'ensemble de la séquence d'interactions entre plusieurs services Web. Mise en lumière. (18/05/2006)
  Forum

Réagissez dans les forums de JDN Développeurs

Le BPEL (pour Business Process Execution Language, ou langage d'exécution des processus métier), est voulu comme la pierre angulaire des services Web liés aux échanges intra-entreprise.

Alors que chaque service, pris indépendamment, ne constitue qu'une interface propre à un composant, une couche supplémentaire de standards était nécessaire pour assurer gérer les liens entre plusieurs de ces services, au sein d'une couche applicative.

BPEL, tout d'abord nommé BPEL4WS (BPEL for a Web Services) et aujourd'hui WS-BPEL, a donc été conçu pour intégrer un grand nombre d'applications, publiées sous forme de service dans un but métier particulier, sans dépendance de plate-forme ou de langage, le tout de manière automatique. Cette spécification n'est pas la seule visant à créer une infrastructure d'orchestration pour services Web, mais c'est la plus en vue, car soumise à l'organisme Oasis par de grands acteurs : IBM, Microsoft, BEA, SAP et Siebel.

BPEL consiste en un langage XML dessiné pour définir et gérer les orchestrations de processus. Dans ce contexte, une orchestration est une collaboration entre deux ou plusieurs services, mise en place et/ou gérée (orchestré) par un tiers - en l'occurrence, BPEL. Ce dernier prend en charge la séquence complète d'invocations des divers services, ou "collaborateurs".

Un processus BPEL dispose donc d'une logique d'invocation, celle-ci pouvant être synchrone ou asynchrone. BPEL fait fortement usage des autres langages liés aux services Web, à commencer par WSDL, SOAP et UDDI. Chaque processus BPEL dispose par ailleurs de sa propre définition WSDL : un processus BPEL est donc un service Web à part entière.

BPEL apporte donc une couche d'abstraction de la logique d'orchestration pour chaque service Web impliqué. Cette couche supplémentaire a bien entendu un coût le rendant surtout intéressant pour les orchestrations complexes. Cela étant, la version actuelle de BPEL ne peut non plus être utilisée pour les orchestrations trop complexes, où de nouveaux services ou activités peuvent être rendus nécessaires en cours de traitement. Un outil du quotidien, donc, mais qui ne peut pas remplacer l'apport humain.
 
Xavier Borderie, JDN Développeurs
 
 
Accueil | Haut de page