Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web...

32
Revue. Volume X – n° x/année, pages 1 à X Les Web Services Sémantiques : Automate et Intégration Partie 2 : Applications industrielles –Composition de services web –Technologies et plateformes - Conclusions t Feuille de route e Freddy Lécué* Alain Léger* Ramy Ragab Hassen ** * France Telecom R&D, 14 rue du clos courtel, F-35512 Cesson-Sévigné, France [email protected] [email protected] ** LIMOS, Université Blaise Pascal, Clermont-Ferrand, France [email protected] RÉSUMÉ. Les avancées récentes des technologies « NTIC » (Nouvelles Technologies de l’Information et des Télécommunications) ont (ré)-ouvert la voie à de nouvelles solutions pour le développement d’architectures de traitement distribué dont l’impact industriel et commercial semble cette fois très prometteur. En effet, la conjonction de la maturité des architectures logicielles à composants distribués, la très forte pénétration des technologies du Web et enfin la forte pression de l’économie mondiale ont conduit à une irrésistible prolifération de composants physiques ou logiciels autonomes disponibles et distribués sur le web. Le W3C les définit comme des « services web » : « le service web est un système logiciel conçu pour rendre interopérable la communication de Machine à Machine connectées en réseaux. Il est décrit par une interface (WSDL) et peut interagir avec d’autres systèmes par l’envoi de messages (SOAP) typiquement véhiculés par un protocole HTTP et une représentation syntaxique XML conjointement à d’autres standards du Web ». Une très importante fonctionnalité de ces systèmes à base de services web est leur capacité à offrir des services composites construits à partir de ces composants physiques ou logiciels autonomes et réutilisables, formant une nouvelle infrastructure de traitement informatique distribué sur le Web. Profitant de l’infrastructure du web sémantique, les services web dits « sémantiques » ouvrent des perspectives d’avancées clés dans le traitement d’information couvrant un large spectre d’applications comme les services commerciaux (e-Enterprise, e- Business), la recherche scientifique (ex. grille de calcul « e-Science »), l’éducation (e- Learning) et enfin les services aux citoyens (e-Government, e-Democracy). Nous présentons dans ce tutoriel (en deux parties) un état de l’art synthétique des langages et technologies

Transcript of Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web...

Page 1: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

Revue. Volume X – n° x/année, pages 1 à X

Les Web Services Sémantiques : Automate et Intégration Partie 2 : Applications industrielles –Composition de services web –Technologies et plateformes - Conclusions t Feuille de route e

Freddy Lécué* — Alain Léger* — Ramy Ragab Hassen ** * France Telecom R&D, 14 rue du clos courtel, F-35512 Cesson-Sévigné, France [email protected] [email protected] ** LIMOS, Université Blaise Pascal, Clermont-Ferrand, France [email protected]

RÉSUMÉ. Les avancées récentes des technologies « NTIC » (Nouvelles Technologies de l’Information et des Télécommunications) ont (ré)-ouvert la voie à de nouvelles solutions pour le développement d’architectures de traitement distribué dont l’impact industriel et commercial semble cette fois très prometteur. En effet, la conjonction de la maturité des architectures logicielles à composants distribués, la très forte pénétration des technologies du Web et enfin la forte pression de l’économie mondiale ont conduit à une irrésistible prolifération de composants physiques ou logiciels autonomes disponibles et distribués sur le web. Le W3C les définit comme des « services web » : « le service web est un système logiciel conçu pour rendre interopérable la communication de Machine à Machine connectées en réseaux. Il est décrit par une interface (WSDL) et peut interagir avec d’autres systèmes par l’envoi de messages (SOAP) typiquement véhiculés par un protocole HTTP et une représentation syntaxique XML conjointement à d’autres standards du Web ». Une très importante fonctionnalité de ces systèmes à base de services web est leur capacité à offrir des services composites construits à partir de ces composants physiques ou logiciels autonomes et réutilisables, formant une nouvelle infrastructure de traitement informatique distribué sur le Web. Profitant de l’infrastructure du web sémantique, les services web dits « sémantiques » ouvrent des perspectives d’avancées clés dans le traitement d’information couvrant un large spectre d’applications comme les services commerciaux (e-Enterprise, e-Business), la recherche scientifique (ex. grille de calcul « e-Science »), l’éducation (e-Learning) et enfin les services aux citoyens (e-Government, e-Democracy). Nous présentons dans ce tutoriel (en deux parties) un état de l’art synthétique des langages et technologies

Page 2: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

2 Revue. Volume X – n° x/année

associés aux services web sémantique, un panorama détaillé des raisonnements de découverte existants et des solutions majeures pour la composition de services web, pour terminer sur des exemples d’applications et une feuille de route. ABSTRACT. Recent advances in networks, information and computation grids, and WWW have resulted in the proliferation of a multitude of physically distributed and autonomously developed Web services. The W3C Web Services Architecture defines ``Web service as a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine processible format (specifically WSDL) and other systems can interact with it in a manner prescribed by its description using SOAP messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards''. Correspondingly, the construction and deployment of composite services by combining and reusing independently developed component services is an important capability in the emerging Web-based computing infrastructure. Used according to the semantic web principles, semantic web services offer key IT capabilities in businesses as well as in scientific research, and key enabler of broad variety of applications including e-Enterprise, e-Business, e-Government, and e-Science. In this tutorial (in two parts) we present a concise state-of-art of languages and technologies associated to semantic web services, a detailed overview of existing discovery reasonings and key solutions for composition, and lastly typical applications and a technology roadmap. MOTS-CLÉS : Services web, services web sémantiqus, web sémantique, Architecture orientée service, découverte, composition et orchestration de services web, processus distribués, intelligence artificielle. KEYWORDS: Web services, Semantic web, Service oriented architecture, discovery, composition and orchestration of web services, distributed process, artificial intelligence

Page 3: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

Les web services sémantiques : Partie 2 3

1. Applications industrielles

Les technologies sémantiques sont de plus en plus largement appliquées à un large spectre d’applications pour lesquelles un Domaine de Connaissance est conceptualisé et formalisé - au moyen d’une ontologie ou base de connaissances – servant de support à des outils informatiques très divers de traitement des connaissances – raisonnements ou inférences -. Ainsi en replaçant des machines plus expertes sur les tâches répétitives et ingrates, on peut espérer de forts gains de productivité et une plus grande richesse et confort d’usage des services par un bien meilleur couplage des capacités complémentaires de l’homme et des machines.

De manière générale, la recherche appliquée en Services Web Sémantique (SWS), et construite sur le paradigme logiciel d’Architecture Orientée Service (SOA), vise essentiellement à offrir une technologie assurant une totale (ou parfois partielle) automatisation des processus d’intégration. Comme on l’a déjà noté, les entreprises font aujourd’hui face à des coûts d’intégration interne et externe trop lourds. Donc, l’adoption des principes SOA et des SWS doit résoudre ce souci majeur des entreprises - par une technologie leur apportant l’agilité attendue - dans un écosystème économique de plus en plus pressant. Les technologies SOA actuelles déployées dans l’industrie – à base de Services Web (XML, SOAP, WSDL, BPEL) – et les plateformes industrielles de développement (IBM WebSphere Toolkit, Sun Open Net Environment et JiniTM Network, Microsoft .Net et Novell One Net, HP e-speak, BEA WebLogic Integration), n’apportent qu’un premier niveau de réponse d’interopérabilité technologique et syntaxique, nécessitant une intégration manuelle. Avec la croissance attendue des services au sein et en externe des entreprises, les problèmes d’interopérabilité vont croître si l’on n’apporte pas une norme ou standard de fait aux modèles et représentations sémantiques. C’est tout l’objet des efforts actuels (W3C, OASIS) qui doivent apporter la réponse au support d’intégration de services automatisée (découverte, sélection, composition, chorégraphie, exécution et supervision).

Le spectre des applications est très large et l’on peut citer pour exemples courants aujourd’hui : portails d’entreprise et capitalisation des savoirs, e-commerce, e-work, e-business, e-santé, e-education, e-gouvernement et e-administrations, traitement automatique des langues et traduction automatique, recherche d’information, intégration de données et de services, réseaux sociaux, systèmes de recommandations et filtrage collaboratif, extraction de connaissances actionnables, intelligence économique et d’autres. D’une perspective sociale et économique, cette technologie des NTIC émergente devrait contribuer au développement économique, mais à la condition de présenter un saut qualitatif notable – immédiat dans la vie de tous les jours (comme l’a été par exemple le CD-Audio et les technologies optiques laser), et une forte source d’efficacité et de productivité pour les entreprises -. Malgré un coût d’entrée pour ces technologies

Page 4: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

4 Revue. Volume X – n° x/année

qui est encore élevé - compétences et temps de développement - on constate aujourd’hui, une pénétration industrielle constante des technologies sémantiques1.

Dans la section suivante nous présentons un scénario critique pour le développement du e-Business tel que développé par Lucent technologies avec le soutien du NoE IST-Knowledge Web2, puis des travaux avancés à Orange Labs sur un scénario typique pour un opérateur de services. Les scénarios sont simplifiés dans le contexte de cet article, mais ils sont bien tirés de besoins concrets de l'industrie et intégrés à des applications depuis fin 2007. Ils donnent ainsi une excellente illustration des voies de mise en œuvre des technologies des services web sémantique.

1.1 Scénario 1 : Intégration dynamique pour le e-Business3

1.1.1 Introduction

Pour ce scénario tel que schématisé en Fig. 1, il y a une organisation « Acheteur A » qui industrialise des produits électroniques. Pour certains produits, cette organisation a besoin d’unités d’affichage X. Ces unités d’affichage peuvent être délivrées par trois fournisseurs (nommés plus loin « partenaires »), B, C et D. Cette organisation souhaite intégrer ces trois fournisseurs à son système de commerce B2B e-Buiness. Comme ces partenaires sont d’importantes sociétés, l’organisation ne peut pas imposer ces formats propriétaires d’intégration à son système.

Figure 1. Intégration dynamique par web services

1 See Semantic Technology Conference 2007 http://www.semantic-conference.com , ESTC 2007 http://www.estc2007.com , Annual Semantic Web applications challenge: http://challenge.semanticweb.org 2 http://semanticweb.knowledgeweb.org voir en particulier le livrable D1.1.4 v3 3 NoE FP6 Knowledge Web Use Case from Del. D 1.1.4v2, KW Partners: DERI Galway, DERI Innsbruck Industrial Partner: Bell Labs Ireland http://knowledgeweb.semanticweb.org

Page 5: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

Les web services sémantiques : Partie 2 5

Ainsi, l’organisation a réalisé des modules d’intégration distincts avec chaque partenaire : i) RosettaNet utilisant l’architecture RNIF (RosettaNet Implementation Framework) sur HTTP avec le partenaire B, ii) EDI4 X12 utilisant un service support d’opérateur de télécommunication (Value-Added Network « VAN ») avec le partenaire C et l’interface SAP IDOC (SAP Intermediate Documents) mettant en oeuvre une solution à base de services web avec le partenaire D.

1.1.2 Motivation

Le but de la recherche en SWS appliquée à ce scénario est d’introduire de l’intégration dynamique en B2B sans coutures entre partenaires commerciaux en développant des interfaces entre la plate-forme d’intergiciel WSMX (cf. § 3) et les architectures e-Business existantes, en mappant les messages e-Business dans un modèle de représentation commun de manière à surmonter les hétérogénéités des données et des processus et donc in fine de rendre les processus d’intégration e-Business fiables et plus rapides.

En complément des concepts et technologies génériques d’intergiciel sémantique développé pour les SWS avec WSMO, WSML et WSMX, il est essentiel de montrer que cette technologie co-existe parfaitement avec les standards et plateformes e-Business déployés. De par sa nature ouverte, la plateforme SOA WSMX répond précisément à ce besoin et est en cours de standardisation à l’OASIS5. De plus, le W3C est en cours de rédaction de l’extension sémantique de l’annotation des Services Web (WSDL Working Group) et leur mappage vers la représentation RDF (ontologies).

1.1.3 Résultats

La démonstration et son évaluation sont organisées par le DERI au sein d’une compétition internationale (Semantic Web Services Challenge)6. Dans cette compétition, IST NoE Knowledge Web en coopération avec Bell Labs-Lucent a présenté une première réalisation du scénario d’intégration B2B décrit et a été très bien évalué (2005). De plus, Bell Labs Ireland fournit des contraintes de gestion de règles commerciales qui sont intégrées au processus de découverte et de sélection des services web.

1.2 Scénario 2 : Configuration automatisée de services de Télécommunication

La technologie SWS de FT R&D Orange Labs est en cours d’intégration au sein d’un projet d’infrastructure de services. La motivation est de donner aux clients la possibilité de créer son bouquet de services personnalisé de télécommunication, sans l’aide d’aucune assistance. Le client doit simplement sélectionner les options

4 See for example http://www.comp.dit.ie/dgordon/Publications/Author/EDI/edi.pdf or http://ils.unc.edu/MSpapers/2542.pdf 5 http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=semantic-ex Semantic Execution Environment TC 6 http://sws-challenge.org/

Page 6: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

6 Revue. Volume X – n° x/année

de configuration qu'il souhaite souscrire. Par exemple, les offres Orange peuvent être les suivantes : ADSL eligibility, LiveBox, Voice over IP, FunTone, Address Book, Visiophone, IPTV (TV over IP), Voice Messaging, HDTV. Comme chaque offre élémentaire de services est décrite sous forme de SWS (e.g. FunToneService est l’interface de l’offre FunTone), le but est de construire une composition correcte des services sélectionnés. La Figure 2 présente une partie de l’Ontologie décrite avec le langage ALE, qui comprend en réalité 305 concepts définis et 117 propriétés décrivant le domaine i.e., les concepts décrivent les entrées et sorties des services web via des annotations (ex. SA-WSDL). Cette description ontologique formelle (ALE) nous permet ensuite d’automatiser le processus de composition entre services web « compatibles » (Lécué et al., 2006).

Figure 2. Exemple d’une partie de l’ontologie du Use Case Orange Labs

Dans l’exemple qui suit, seuls 4 services web parmi une trentaine sont décrits :

- ADSLELIGIBILITY service qui à partir d'un n° de téléphone PHONENUM, un ZIPCODE et une EMAIL address, retourne la connection réseau NETWORKCONNECTION de la zone désirée;

- VOICEOVERIP service qui à partir d'un n° de téléphone PHONENUM et d'une connexion bas débit SLOWNETWORKCONNECTION, retourne l'identifiant VOIPID de la ligne ADSL que France Telecom doit installer;

- TVOVERIP service qui à partir du n° de téléphone PHONENUM et d'une connexion haut débit FASTNETWORKCONNECTION, retourne le numéro de série du VIDEODECODER que le client utilisera pour accéder à la vidéo sur IP;

Page 7: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

Les web services sémantiques : Partie 2 7

- LIVEBOX service qui retourne la facture INVOICE de l’offre commerciale personalisée que le client a demandé, dépendant du n° de téléphone PHONENUM, de l'adresse IP IPADDRESS et du numéro de série du DECODER.

Un tel scénario est aujourd’hui considéré comme stratégique pour tout opérateur de services qui souhaite des gains importants de productivité mais qui souhaite offrir à ses clients des « bouquets de services sur mesure » pour optimiser leur budget de télécommunication.

2. Composition de web services

Après avoir décrit dans la partie 1 de cet article, les méthodes de raisonnement nécessaires pour la découverte de services web sémantique ; nous abordons maintenant leur composition en rappelant la problématique et les principales approches qui sont explorées aujourd’hui7.

2.1. Composition de Services Web sémantique

Une composition de services vise à répondre à un besoin ne pouvant être satisfait par aucun des services web élémentaires disponibles à un instant donné, mais seulement par de possibles combinaisons de certains d’entre eux. La composition de services implique donc, préalablement de découvrir des services pouvant répondre à ce besoin (Partie 1), de sélectionner les plus pertinents, puis de les composer et finalement de les orchestrer pour leur exécution.

Boutique

Acheter

Emporter

Banque

Fournisseur 1

Demande Accord

OK

Achat 1

Fournisseur 2

Note1

Achat 2

Note 2Paiement 1

Paiemen

t 2

Facture 1

Factu

re 2

Boutique

Acheter

Emporter

Banque

Fournisseur 1

Demande Accord

OK

Achat 1

Fournisseur 2

Note1

Achat 2

Note 2Paiement 1

Paiemen

t 2

Facture 1

Factu

re 2

Figure 3. Une composition de services élémentaires8

7 Etat de l’art recherche et technologique issu des conférences majeures sur le sujet et des contributions personnelles des auteurs. L’état de l’art industriel est encore très embryonnaire en ce début 2008. 8 Exemple classique extrait de (Hull et al., 2003). L'agence de voyage virtuelle est aussi un autre exemple (ultra) classique qui se traite de la même façon.

Page 8: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

8 Revue. Volume X – n° x/année

Dans ce qui suit, nous exposerons l’état de l’art du domaine de l’automatisation de la composition de services web sémantique. Tout d’abord, nous expliciterons la problématique de la composition de services Web. Ensuite, nous présenterons les solutions proposées pour résoudre le problème de composition de services Web.

L’objectif de la composition de services est donc de créer – en rapport à un nouveau besoin - une nouvelle offre de services combinant les fonctionnalités offertes par des services existants (élémentaires ou déjà composés). La figure 3 illustre le besoin classique de composition automatique dans le contexte du commerce électronique (e-commerce B2C, B2B).

Cette composition est un assemblage de quatre services web élémentaires (Boutique, Banque, Fournisseur 1 et Fournisseur 2). La boutique ayant pignon sur le Web propose à ses clients des produits (services) et interagit avec eux via une interface « Acheter / Emporter ». Cette boutique fait appel à des services bancaires pour le débit du compte client via l’interface « Demande d’accord / OK ». Enfin, les deux fournisseurs (1 et 2) réapprovisionnent les rayons de la boutique via l’interface « Achat / Note » et débitent le compte boutique via l’interface « Facture / Paiement ». Dans le contexte générique de la Fig. 1, on peut imaginer par exemple, un client souhaitant acheter (boutique) un ensemble réfrigérateur-congélateur (fournisseur 1) et se faire livrer (fournisseur 2) le produit sous trois jours (il existe bien entendu, des variations infinies d’usage pratique de cette architecture de composition très générique).

Des résultats mettant en œuvre des services web pour résoudre cette problématique commencent seulement à émerger dans la littérature scientifique (actes de conférences) et livrables de projets R&D coopératifs9. Des travaux récents de la communauté du web sémantique (Rao et al., 2005) (Pistore et al., 2004) (Medjahed et al., 2003) (Wu et al., 2003) (Narayanan et al., 2002) (McIlraith et al., 2001a), se sont intéressés à des approches de planification (IA) qui permettent de construire une (des) composition(s) meilleures possibles connaissant le but à atteindre i.e. la satisfaction de requête quelle soit humaine ou issue d'une autre machine. D'autres (Hull et al., 2003) (Berardi et al., 2003) (Bultan et al., 2003), s’intéressent à une modélisation abstraite des services plongés dans un cadre formel de type workflow, Machines à états finis et Mealy machine afin de les composer à partir du but (idem plus haut) décrit formellement. Cette dernière permet en outre la vérification des modèles générés et donc des propriétés d’un service composite à partir des propriétés de ses composants. Tous ces travaux tentent de ré-exploiter et d’étendre des techniques existantes en rapport avec l’étude formelle des systèmes

9 Les technologies agents logiciels ont déjà dans les années 90 tenté d’y répondre sans apporter de réponses industrielles à grande échelle – voir par exemple dans la littérature des articles sur les systèmes multi-agents (MAS ) (Gleize M.P. et al., 1999). Les technologies EAI ont, elles, été déployées mais utilisent des méthodes « manuelles » pour la composition, et donc difficile à déployer et à maintenir, et surtout pas exécutables sur le web.

Page 9: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

Les web services sémantiques : Partie 2 9

dynamiques, tels que : la logique temporelle et dynamique, l’algèbre des processus et pi-calculus (Milner, 1999), les processus de Markov, la planification en IA (Russel et al., 1995), la planification hiérarchique de tâches (HTN planning), la théorie des automates et les réseaux de Pétri (Diaz, 2001), la logique des situations (Reiter R., 2001), pour nommer les plus représentatifs.

2.2 Etat de l'art sur la composition automatisée de services Web sémantique

La composition automatisée de services Web peut être vue à différents niveaux d'abstraction (Pistore et al., 2005a). D'un point de vue de haut niveau, les services Web sont présentés comme de simples entités (une telle description est fournie par exemple par « OWL-S profile », « WSMO service capability model ») fournissant des sorties et des effets sur le monde réel ( ex. le débit d’un compte bancaire), en fonction d'entrées et de pré-conditions d’activation (ex. accord de la banque pour la transaction) (on utilise l’acronyme « IOPE » pour Input/Output/Pré-condition/Effects). Ainsi à partir d'un ensemble de services Web, la composition a pour but de sélectionner et de combiner les services avec des opérateurs de composition simple (séquence, choix, boucle etc.) pour satisfaire un but ou une requête initiale (Figure 1 : besoin d’un client ou besoin d’un fournisseur). Il va de soi que le modèle de composition va s’appuyer sur les outils de découverte de service Web (Partie 1) pour trouver – à la volée - les services élémentaires compatibles avec la composition recherchée.

La composition met en scène clairement deux niveaux (Figure 4) :

1- Un niveau fonctionnel10 qui assemble ou regroupe des services élémentaires présentant des interfaces ou signatures opérationnelles (IOPE) compatibles (ex. la sortie paiement de la banque en Euros est acceptée par les fournisseurs 1 et 2, les données de facturation sont similaires, etc.) ;

Ce premier niveau d'analyse est une étape essentielle pour l'assemblage de composants de types compatibles. Et de façon assez complémentaire à la découverte de services (partie 1) on va ici rechercher les interfaces de services que l'on pourrait assembler pour obtenir la fonctionnalité de service globale à atteindre exprimé par le but (Requête). Elle est décrite par OWL-S ("service profile"), WSMO ("service capability") et par SA-WSDL.

2- Un niveau conversationnel11 (ou protocole) qui assemble des services élémentaires dont les protocoles de dialogue sont compatibles et complémentaires (Fig. 1 : l’interaction entre la boutique et la banque se fait selon le protocole demande d’accord de la boutique, réponse de la banque par OK ou non-OK, si OK alors commande vers les fournisseurs, si non-OK alors refus retourné au client).

10 Dans la littérature anglo-saxonne on trouve aussi "data flow driven composition" 11 Dans la littérature anglo-saxonne on trouve aussi "control flow driven composition"

Page 10: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

10 Revue. Volume X – n° x/année

Ce deuxième niveau est crucial, en effet les interactions entre les différents services i.e., conversation par échanges de messages (ex. « OWL-S process process », « WSMO interface model », SWSL-FLOWS), permet une composition au niveau des protocoles pour générer un service composé exécutable.

La composition automatisée de services Web consiste ainsi à effectuer la composition à un niveau fonctionnel des signatures des services et au niveau conversationnel des protocoles des services comme présenté en Figure 2. Dans la suite de cette section nous décrirons les principaux modèles de composition notamment a) la composition au niveau fonctionnel, et b) la composition au niveau des protocoles de services Web.

RequêteRequête

Figure 4. Les deux niveaux de composition dans une architecture simple

2.2.1 Composition au niveau fonctionnel

La composition au niveau fonctionnel est très liée à la découverte et en particulier avec les approches qui relient une requête à une réponse composée de plusieurs services web nécessaires à la couverture "au mieux" des besoins de la requête (Partie 1 : approches par abduction et couverture "1-N"). Mais la réponse à une requête de découverte n'est qu'un conglomérat de services web indépendants. La composition de niveau fonctionnel va tenter d'assembler (comme un jeu de Lego ©) ces services web par rapprochement n à m des interfaces fonctionnelles (types, opérations, Pré-conditions, effets) restreintes à des interactions atomiques. La

Page 11: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

Les web services sémantiques : Partie 2 11

composition fonctionnelle réalise donc une (des) sélection(s) et un (des) pré-assemblage(s) de services web potentiellement capables de répondre "fonctionnellement" à la requête (Figure 5).

La composition fonctionnelle fait souvent appel aux outils de la planification en Intelligence Artificielle (ou “AI planning”) assez bien couvert par (Chan et al., 2007) (Peer, 2005a) (Ghallab et al., 2004) (Nilsson et al., 1980) (Russell et al., 1995) (Mc Illraith et al., 2002b). Le problème de la composition de services web est explicité par une connaissance de l’ensemble des entrées (informations dont nous disposons), et de l’ensemble des sorties (buts que nous voulons résoudre). En général un problème de planification de tâches se décrit comme le n-uplet {S, S0, G, A, Γ}, où S est l’ensemble des états du monde (du domaine de l’application), S0 _ S est l’état initial, G _ S représente l’état du monde à atteindre (le but), A est l’ensemble des actions disponibles (les web services élémentaires) pour passer d’un état à un autre et enfin le graphe des transitions Γ` S x A x S qui relie les pré-conditions et effets attachés à l’exécution de chaque action.

Entrées SortiesEntrées Sorties

Sorties Entrées

AchatBanque okFacture

Accord banqueCommandeEmporter

Accord ban.Note four.

Ok banquePaiement four.

Boutique Banque

Fournisseur

Fournisseurs

Découverte

Intégration fontionnelle

Entrées SortiesEntrées Sorties

Sorties Entrées

AchatBanque okFacture

Accord banqueCommandeEmporter

Accord ban.Note four.

Ok banquePaiement four.

Boutique Banque

Fournisseur

Fournisseurs

Découverte

Intégration fontionnelle

Figure 5. Composition fonctionnelle

La résolution de ce problème aboutit à une planification de tâches selon une orientation donnée dépendante des conditions initiales disponibles(chaînage avant ou arrière, résolution en profondeur ou en largeur) et du but à atteindre. Ainsi le planificateur positionne chaque service utile et pertinent dans un diagramme de

Page 12: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

12 Revue. Volume X – n° x/année

séquences ou diagramme d’états (ou « workflow ») afin de satisfaire le but12. La position de chaque service dans le diagramme de séquences est déterminée au moyen de ses IOPEs.

Dans cette classe de solutions au problème de composition, (McIlraith et al., 2001a), (McIlraith et al., 2001b), (McIllraith et al., 2002) étend le langage de programmation logique Golog construit à partir des éléments du calcul de situation (Levesque et al., 1998), afin de raisonner à partir des actions (i.e. entrées) et des changements opérés sur l'état du monde (i.e. effets). Plus précisément (McIllraith et al., 2002) voient le problème de la composition de services comme un problème de recherche de procédures génériques qui seront ensuite exécutées dans le contexte spécifique d’un « état du monde » (ex. annulation de vols) et de contraintes de l’utilisateur (ex. Primes Air France). Par exemple, la planification d’un voyage ou l’achat d’un produit sur Internet, se représentent aisément par des procédures génériques standard (ex. de l’achat d’un livre sur Amazon.com), que l’utilisateur va exécuter pour son contexte particulier. Cette approche propose ainsi une séquence de services génériques, modifiables et réutilisables. Ce modèle a été développé sur la base d'un interpréteur du langage “ConGolog” (De Giacomo G. et al., 2000).

Une autre illustration de la mise en œuvre de la planification est celle de (Wu D. et al., 2003) utilisant SHOP-2, un formalisme de planification hiérarchique (HTN)13. La planification HTN est une méthodologie de planification qui construit un plan par décomposition hiérarchique de tâches. C'est un processus dans lequel le système de planification décompose les tâches globales (i.e. le but initial) en tâches plus petites jusqu'à obtention de tâches primitives correspondant aux opérations réellement offertes par les services Web. En suivant cette approche HTN, le système décrit par (Wu et al., 2003) propose une composition de services Web s'appliquant au standard OWL-S. Mais cette fois l’idée est d’associer à l’outil de planification HTN-SHOP214 un raisonneur logique pour OWL (i.e. Pellet15). En soutien des tâches de planification, le raisonneur assume la fonction d’évaluation des pré-conditions (raisonnement standard de satisfiabilité en Logique de Description) et de mise à jour de la base de connaissance de « l’état du monde » suite aux effets produits par l’exécution des opérations. Ainsi, l’intégration du raisonneur OWL assume toutes les tâches d’interactions avec la base de connaissance sur « l’état du monde » (Base de faits décrits en OWL ou assertions de la ABox). Les auteurs présentent aussi quelques pistes très intéressantes d’optimisation pour l’évaluation des pré-conditions et une évaluation sur un prototype associant OWL-DL Pellet et la version Java de SHOP (JSHOP). L'inconvénient de cette méthode HTN est qu'elle impose une structure hiérarchique des tâches en sous-tâches, ce qui s'avère difficilement applicable aux cas réels et de plus ne passe pas à l'échelle.

12 On utilisera aussi "Requête" pour exprimer le but ou le besoin attendu global de services (humain-machine ou machine-machine) 13 Hierarchical Task Network 14 http://www.cs.umd.edu/projects/shop/description.html 15 http://pellet.owldl.com/

Page 13: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

Les web services sémantiques : Partie 2 13

Une méthode récente se basant sur la composition de services Web au niveau fonctionnel est l'approche suivie par (Lécué et al., 2006). Les correspondances sémantiques entre services Web sont assimilées à des liens causaux entre opérations (I/O) où ces derniers sont pondérés par les degrés de correspondance sémantique ("exact", "plug-in", "Subsume", "disjunction") telles celles introduites par (Paolucci et al., 2002). Leur modèle de composition faisant appel à la planification en IA suit une méthode de chaînage arrière des services Web. Ainsi aucune, ou plusieurs chaînes des services Web capable de satisfaire une requête utilisateur sont trouvées. Une originalité de la méthode de composition tient dans l’optimisation apportée par un pré-calcul des correspondances sémantiques des entrées et des sorties de tous les services web découverts et compatibles avec le but global à atteindre, dans une matrice dite des « liens causaux » qui ne conserve que les liens entrée-sortie sémantiquement compatibles. Partant du but à atteindre et de la matrice de "liens causaux", l'algorithme de chaînage arrière proposé agit récursivement sur une liste de services web liés par les liens découverts i.e., pour chaque service de la liste, une nouvelle liste est découverte de telle sorte que les paramètres de sortie correspondent sémantiquement aux paramètres d'entrées. Une fois les différentes chaînes (ou plan) de composition possible trouvées, (Lécué et al., 2006) proposent de calculer la composition optimale en termes de correspondance sémantique entre les services web, que l'on peut étendre aisément à la prise en compte de propriétés non fonctionnelles (QoS, Coût, …). Cette méthode ne tient pas compte des pré-conditions et nécessite donc d'être complétée (Lécué et al., 2008).

(Cardoso et al., 2003) proposent un modèle assez complet directement lié à la découverte et à la composition de services. Les auteurs proposent une méthode semi-automatique permettant de trouver le service le plus adéquat, connaissant les entrées et sorties d'un service abstrait appelé « e-Workflow » (i.e. une procédure générique de composition comme dans (McIllraith et al., 2002)). Le but de cette méthode est de construire le plan en maximisant les degrés d'intégration entre les services prenant en compte non seulement les paramètres fonctionnels (IOPEs) à un niveau très fin, mais aussi la QoS (Qualité de services: temps, coût, fiabilité, confiance, tolérance aux fautes), ce qui est très novateur dans ce contexte. Basé sur une ontologie DAML-OIL (version antérieure à OWL) pour typer les entrées-sorties, maximiser les degrés d'intégration revient à maximiser l'association entrée-sortie de deux services distincts. Le but étant de retrouver les concepts représentant les entrées de la requête les plus similaires aux concepts représentant les entrées du service recherché. Un processus similaire est effectué quant à la similarité des concepts de sorties. Cette similarité repose sur trois types distincts: similarité syntaxique, sémantique et opérationnelle. La similarité sémantique est calculée au moyen de l'ontologie et est donc très proche de (Paolucci et al., 2002), à la différence que (Paolucci et al., 2002) considèrent seulement la correspondance des concepts d'entrée-sortie définis par une même ontologie, (Cardoso et al., 2003)

Page 14: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

14 Revue. Volume X – n° x/année

proposent d'étendre ce modèle à des concepts décrits par plusieurs ontologies (cas plus réaliste)16.

Le modèle décrit par (Zhang et al., 2003) est fortement inspiré des modèles de (Cardoso et al., 2003), (Paolucci et al., 2002), (Sirin et al., 2003). Ainsi le but est de construire une composition de services Web en respectant les propriétés fonctionnelles des services (entrées, sorties). Une fois la liste des services, retrouvée, (Zhang et al., 2003) assimilent le problème de composition à un problème de recherche de chemin le plus court dans un graphe orienté et pondéré. Dans un tel graphe chaque service est assimilé à un nœud. Une arrête est présente entre deux nœuds si et seulement si les concepts d'entrées d'un service correspondent (ou sont sémantiquement proches) aux concepts de sorties d'un autre service. Chaque arrête (ou arc) est étiquetée par une variable de qualité de service, et par une variable de proximité de concepts. Le problème de planification se ramène ainsi à rechercher le chemin le plus court entre les entrées de la requête et les sorties de la requête. (Zhang et al., 2003) proposent cette métrique de calcul de chemin le plus court, mais nous pouvons imaginer d'autres variables entrant en compte pour le calcul du chemin le plus court. Comme (Lécué et al., 2006) cette méthode ne tient pas compte des pré-conditions.

Dans cette section nous avons analysé une étape importante de la composition de web services: la composition au niveau fonctionnel (Figure 5.). Nous avons explicité sa proximité avec les fonctions de découverte de services web (Partie 1). Nous allons maintenant examiner la composition de niveau conversationnel qui d'un point de vue de la recherche et des standards a été traité après la composition fonctionnelle qui était plus accessible après l'étude des fonctions de découverte.

2.2.2 Composition au niveau conversationnel

Les protocoles de services représentent un modèle riche, capable d'exprimer aussi bien le comportement externe d'un service tel qu’aperçu par un utilisateur que le comportement interne, qui incarne dans ce cas les actions internes (atomiques) du service. Dans le but d'obtenir une composition cohérente avec l'ensemble des services disponibles, il est nécessaire de prendre en compte toutes les opérations à effectuer ainsi que leur ordre (orchestration) renseigné par le protocole de conversation. En effet, l'invocation d'un service peut entraîner l'invocation automatique d'une ou plusieurs opérations, dépendant du protocole de service que l'on traite. Cela signifie que les interactions entre un service et un utilisateur (ou un autre service) ne sont pas composées d'une simple opération, de type « requête-réponse » par exemple, mais exigent de suivre un protocole plus complexe vu comme une suite d’opérations ordonnées. Ainsi, une composition au niveau des

16 NB: dans le contexte général des systèmes distribués, ouverts et donc hétérogènes, il est important de prendre en compte la pluralité des ontologies décrivant les services. La résolution de cette difficulté de base est un axe de recherche dans la communauté travaillant sur l'alignement d'ontologies http://www.ontologymatching.org/ http://en.wikipedia.org/wiki/Ontology_alignment

Page 15: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

Les web services sémantiques : Partie 2 15

protocoles de services nécessite une connaissance plus complète des services à intégrer c.-à-d. le comportement dynamique des interfaces. Tandis que l'ordonnancement précis des opérations n’est pas important pour la découverte et pour la composition au niveau fonctionnel, celui-ci devient crucial pour la création d'un code exécutable réalisant « l’orchestration » des services Web composés.

On distingue trois grands modèles émergeants de compositions : le modèle orienté planification (Pistore et al., 2005a), le modèle Romain (Berardi et al., 2003), et le modèle conversationnel (Bultan et al., 2003). La fusion des deux derniers modèles a donné naissance au modèle Colombo (Berardi et al., 2005b).

Le modèle orienté planification (Pistore et al., 2005a) (Pistore et al., 2005b), (Pistore et al., 2005c), (Pistore et al., 2005d), présentent un cadre formel pour la composition de services au niveau de leurs protocoles. Les services définissent le domaine de planification et les contraintes de composition décrivent les buts. Ainsi, les algorithmes de planification peuvent être employés pour produire les services composés. Contrairement à la composition fonctionnelle, le cadre proposé suppose des interactions entre services via des échanges de messages synchrones ou asynchrones entre services. Pour décrire ces échanges, la composition est modélisée comme étant une machine d’états finis. De cette façon, le système peut évoluer lors de l’exécution d’une opération, en passant d'un état à un autre.

De la même façon (Traverso et al., 2004) propose une méthode basée sur la planification dans le but de convertir un ensemble de services décrits en OWL-S (au niveau ‘process model’) en une forme exécutable en BPEL4WS. Le procédé consiste à transcrire les descriptions comportementales de services OWL-S en machines d'états finis représentant les protocoles de services ainsi que leur modèle de composition. Une des contraintes majeures de ce modèle concerne l'interdépendance des services impliqués dans la composition. En effet, les services faisant partie de la composition finale ne doivent en aucun cas avoir des opérations en commun, ou complémentaires. Par exemple, si deux services possèdent deux opérations complémentaires, alors leur modèle de composition peut boucler sur ces deux opérations et ne fournir aucun résultat valide en retour. Dans le même esprit, (McIlraith et al., 2002a) propose un modèle où chaque service est donné initialement par une description en DAML-S. Ensuite, chaque description est formulée par un réseau de Petri, qui sera plus tard étendu pour modéliser le comportement global de tous les services. La composition est donnée sous forme d’un marquage du réseau de Petri. Ce marquage peut être vu comme un état ou une situation que l’ensemble de services coopère pour atteindre.

Le modèle Romain (Berardi et al., 2003), est particulièrement intéressant pour deux raisons : (i) il développe un nouveau cadre de travail pour étudier la composition de services web, et (ii) il offre la possibilité de généraliser la technique proposée à des modèles plus larges. Ce modèle s'attache à la notion d'activité abstraite qui peut représenter une action interne ou un échange de messages. Formellement, un service est décrit (Figure 6) par un automate déterministe d’états

Page 16: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

16 Revue. Volume X – n° x/année

finis ; dans lequel l’alphabet représente les activités abstraites des différents services, les transitions correspondent aux exécutions des activités abstraites, les états représentent les différents états du service, et les états finaux désignent des exécutions correctes du service. Un élément nécessaire pour permettre la composition de services web est la donnée d'un service cible (protocole cible) permettant de spécifier le comportement global attendu du service à composer. La description d’un tel service cible peut être vue comme suit :

1- Donner au client un ensemble S d’activités abstraites parmi lesquelles il peut choisir (cet ensemble peut contenir l’activité spéciale ‘Terminer’).

2- Attendre que le client choisisse exactement une activité.

3- Exécuter l’action choisie, et retourner à l’étape (1) sauf si l’action ‘Terminer’ a été sélectionnée.

Figure 6 : Composition conversationnelle et modélisation par machine d’états

Un service composé est décrit également de la même façon que les services disponibles, à la différence qu’il leur délègue toutes ses activités. Une action est dite déléguée si elle est exécutée par un service différent de celui qui l’invoque. Le principe de cette approche consiste à réduire le problème de composition en un

Page 17: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

Les web services sémantiques : Partie 2 17

problème de satisfiabilité d'une formule DPDL (Logique Dynamique Propositionnelle Déterministe) (Harel et al., 2000). La complexité du problème d’ordre complet est en temps exponentiel. Toutefois, ces travaux souffrent d’une limitation conséquente. En effet, le nombre d’instances de chaque service impliqué dans la composition est borné à priori. Cette hypothèse peut créer des cas où la composition existe, mais ne peut être calculée. Le problème de composition sans considérer une borne à priori, c.-à-d. le cas non borné, reste ouvert.

Dans (Berardi et al., 2004), les auteurs étendent les travaux précédents pour supporter (i) une possibilité d’incomplétude dans la spécification des séquences d’actions que le client voudrait réaliser, et (ii) introduction d’un non déterminisme dans le comportement transactionnel (protocole) du service. Ils offrent également la possibilité de déléguer des actions à un service élémentaire, et par conséquent, les notions de ‘servant’ et ‘initiateur’ sont introduites. Un ‘initiateur’ est un service qui délègue une action, et ‘servant’ est celui qui l’a réalise. Le principe de la composition reste le même, en se basant sur la construction d’une formule DPDL. Les approches précédentes sont centrées sur ce que réalisent les services composés soit à partir des entrées / sorties des activités et de leurs effets sur « le monde » soit à partir de l’ordonnancement des activités.

(Bultan et al., 2003) ont proposé le premier modèle conversationnel prenant en considération les interactions (conversations) entre les services. Ces travaux proposent une spécification permettant de représenter, analyser et vérifier les différentes compositions de services. Un protocole étant un ensemble de règles régissant l'ordonnancement des messages et de leur contenu, une conversation est vue comme une instance d'un protocole. Ainsi, les services sont modélisés à l'aide de machines "Mealy" (Mealy et al., 1955).

Une machine de Mealy est un automate d’états finis munis d'un double alphabet (entrées, sorties) (Figure 8). Un schéma de composition est une paire (S, M) où S est un ensemble fini de noms de services et M est un ensemble fini de classes de messages. Étant donné un service cible Sc, une composition est une conversation constituée d’une séquence complète (globale) des messages échangés sur le schéma (S, M), en vue d’une exécution correcte de Sc.

Le « double » alphabet permet de représenter les messages échangés par les services, mais pas les opérations atomiques des services. Ces messages permettront ainsi d'étiqueter les transitions des automates. Avec un tel modèle, les machines "Mealy" peuvent simuler la réception et l'envoi de messages synchrones et asynchrones via une file d'attente pour les messages entrants. Ce modèle insiste donc davantage sur les échanges de messages passés entre les services plutôt que sur l'exécution des opérations de ces services (Figure 7 - partie droite). Un avantage majeur de ce modèle par rapport aux deux précédents est sa capacité à gérer les services dépendants. Au contraire des deux autres modèles, la composition consiste à faire correspondre des messages entrants et sortants afin de faire communiquer les

Page 18: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

18 Revue. Volume X – n° x/année

services Web. Ce type de modèle de composition est aussi présenté par (Hull et al., 2003).

Boutique Banque

Fournisseur 1

Demande Accord

OK, Rejet

Demande Devis, Commande, Rejet

Devis, Facture

Paiement

Founisseur

Ack

Fournisseur 2

Fournisseur 3

Boutique Banque

Fournisseur 1Fournisseur 1

Demande Accord

OK, Rejet

Demande Devis, Commande, Rejet

Devis, Facture

Paiement

Founisseur

Ack

Fournisseur 2Fournisseur 2

Fournisseur 3Fournisseur 3

Terminer

Term

iner

devisDem

ande devis

Rejet Accord ?

Commande

Fact

ure

Paiement

OK

Rejet

Terminer

Term

iner

devisDem

ande devis

Rejet Accord ?

Commande

Fact

ure

Paiement

OK

Rejet

Figure 7 : Modélisation par machine Mealy et un protocole de conversation

Colombo (Berardi et al., 2005b) est un cadre générique qui traite les aspects étudiés dans les trois modèles précédents. Dans Colombo, les services sont décrits en termes (i) des processus atomiques (i.e. opérations), (ii) de leurs impacts sur le monde réel (représenté par une base de données relationnelle), (iii) de comportement transactionnel des services et (iv) des messages qu’ils peuvent envoyer et recevoir. Colombo développe principalement une technique pour synthétiser un service composé.

Dans Colombo, une activité peut être un processus atomique ou un échange de messages. Un processus atomique manipule l’état du monde, et peut inclure des effets. Une notion de port, comme celle présente en WSDL, est supportée lors de l’échange de messages. Ensuite, le comportement transactionnel des services web est décrit par des automates d’états finis déterministes. Egalement, chaque service possède un stockage local qui permet de garder les valeurs de ses entrées/sorties. Finalement, les auteurs introduisent la possibilité d’appliquer des formes simples de contraintes d’intégrités.

La décidabilité de la composition sous Colombo reste un problème ouvert pour la plupart des cas du cadre générique. Toutefois, sous deux contraintes (i) nombre borné d’accès aux services et (ii) un comportement bloquant pour la synchronisation de services, le problème est décidable et la complexité est doublement exponentielle. Ainsi sous ces conditions, l’existence d’un médiateur simulant le comportement du service composé est prouvée et un algorithme pour le construire a été proposé. Un des objectifs futurs des auteurs est de réduire la borne de complexité à une simple forme exponentielle.

Page 19: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

Les web services sémantiques : Partie 2 19

Il est important de souligner que les modèles Romain et conversationnel partagent une même vision de la composition : le service à composer est décrit par un comportement global cible. Toutefois, les rôles des services au sein de la composition sont différents. En effet, le modèle Romain suppose l’existence d’un contrôleur ou un médiateur central qui gère les interactions entre les services. A cette approche, on attribue le terme « orchestration », et elle est caractérisée par le fait que chaque service intervenant ne connait que sa tâche en vue de réaliser la composition. Le modèle conversationnel incarne l’approche « chorégraphie », dans laquelle chaque service est au courant de toutes les interactions qu’il doit effectuer avec les autres services, et aucun contrôle central n’est nécessaire. La différence entre l’orchestration et la chorégraphie peut être assimilée à celle entre l’architecture client-serveur et l’architecture peer-to-peer respectivement. Le modèle orienté planning propose quant à lui une vision différente de la composition. Une composition est vue comme une situation ou un état du monde à atteindre. Reste à dire que la composition à base de protocoles représentent un aspect sophistiqué de l’architecture orientée service et s’adresse plutôt à des concepteurs et des développeurs d’applications qu’à des utilisateurs finaux (clients).

2.2.3 Remarques conclusives sur la composition

Dans cette section nous avons analysé les deux grandes classes de problèmes permettant de satisfaire à la composition automatique de services Web sémantique: la composition au niveau fonctionnel, et la composition au niveau conversationnel. Nous avons donné des éléments pertinents pour comprendre les objectifs poursuivis en les illustrant de méthodes classiques de la littérature scientifique. Toutefois, par défaut d’un modèle totalement générique rassemblant toutes les méthodes possibles, nous renvoyons le lecteur devant aller plus loin à (Waldinger et al., 2006) pour la composition par preuve de théorème, à (Chan et al., 2006) pour les techniques de planification et à (Medjahed et al., 2003) pour la composition à base de règles.

Nous noterons aussi, qu'en milieu totalement ouvert comme le Web la composition de services Web doit-être très robuste. Cette propriété est rarement prise en compte dans les méthodes citées. Toutefois pour l'approche par planification nous renvoyons le lecteur vers des techniques de planification conditionnelle qui l'intègre : OWL-S XPlan+ (Klusch et al., 2006), (Canfora et al., 2005), VHPOP+ (Peer, 2005b).

Pour conclure, il semble qu’une solution hybride (Figure 4) soit nécessaire pour automatiser la composition et l’exécution de services web. Nous pouvons affirmer que la composition au niveau fonctionnel possède un rôle proche de la découverte, puisqu’elle a pour but de rechercher les services web correspondant à des squelettes possibles de composition de services réalisant le but recherché. La composition au niveau conversationnel permet de rechercher un plan ou diagramme d’états intégrant les contraintes dynamiques de chaque service web pour l’exécution de l’assemblage final « bon à exécuter » de la composition – si elle existe – des services web pertinents.

Page 20: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

20 Revue. Volume X – n° x/année

3. Langages, Technologies et Plateformes

Les avantages et gains potentiels proposés par les services Web sémantique ont amené ce domaine de recherche à croître de façon très rapide, soutenu aussi bien par la recherche académique que par l’industrie. Plusieurs initiatives sont apparues pour permettre l'annotation sémantique des services Web, permettant ainsi à différents modèles de descriptions de faciliter les tâches d'automatisation. Parmi ces propositions, quatre principales approches ont été soumises au W3C comme base pour les efforts de standardisation, et sont chronologiquement OWL-S (Ankolenkar et al., 2004), WSMO (Lausen et al., 2005), SWSF (Battle et al., 2005) ou encore WSDL-S (Akkiraju et al., 2006). Il est bon de noter à ce point que ces spécifications techniques ont été fortement inspirées de travaux sur des plateformes expérimentales comme LARKS17 (Sycara et al., 2002), IRS-III18 (Motta et al., 2003) ou METEOR-S19 (Sivashanmugam et al., 2003). Nous donnons maintenant dans ce court chapitre une vue compacte de ces approches et leurs publications clés.

OWL-S (Ankolenkar et al., 2004) est enregistré comme une proposition20 au W3C (nov. 2004). OWL-S est une ontologie OWL servant à décrire des services web et permettant à des utilisateurs ou des agents logiciels de découvrir automatiquement, invoquer, composer des ressources orientées services (Dean et al., 2004). OWL-S définit un ensemble de classes et de propriétés de base pour déclarer et décrire les services. OWL-S définit principalement trois sous-classes de la classe racine "Service" : "ServiceProfile" qui décrit ce qu'offre le service web, "ServiceModel" qui décrit comment le service fonctionne (Interface externe) et enfin "ServiceGrounding" qui décrit les attachements concrets (e.g. port, protocole de communication, syntaxe). Globalement, "ServiceProfile" est utile pour enregistrer et découvrir les services qui répondent à la requête. Une fois découverts et sélectionnés les services appropriés sont composés et exécutés grâce au "ServiceModel" et au "ServiceGrounding". Enfin, OWL-S s'appuie sur les standards WSDL et SOAP et fait ainsi le lien (sémantique) avec les technologies de services web déjà déployées par l'industrie. OWL-S a toujours un statut de proposition - en version 1.221 depuis mars 2006.

WSMO (Lausen et al., 2005) est enregistré comme une proposition22 au W3C (juin 2005). C'est une spécification du groupe de travail WSMO23. WSMO est basé sur quatre composants principaux : Ontologies, Buts, Services Web et Médiateurs. En fait c'est une découpe architecturale très naturelle : "Ontologies" constitue la base de connaissance, "Buts" représente les requêtes ou les besoins, "Services Web"

17 http://www.cs.cmu.edu/~softagents/larks.html 18 http://kmi.open.ac.uk/projects/irs/ 19 http://lsdis.cs.uga.edu/projects/meteor-s/ 20 http://www.w3.org/Submission/2004/SUBM-OWL-S-20041122/ 21 http://www.ai.sri.com/daml/services/owl-s/1.2/ 22 http://www.w3.org/Submission/WSMO/ 23 http://www.wsmo.org/

Page 21: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

Les web services sémantiques : Partie 2 21

représente l'offre de services et enfin "Médiateurs" représente la classe de toutes les fonctions de réconciliation indispensables au contexte distribué et hétérogène d'usage. Le langage préconisé pour représenté et manipuler les objets de ces entités abstraites, n'est pas OWL (en effet OWL ne suffit pas !), mais WSML qui est un ensemble de dialectes (pas tous décidables !) mariant les Logiques de description (à la OWL), les logiques du premier ordre et la programmation logique (à la Prolog).Comme avec OWL-S, on va décrire les interfaces mais à la différence de OWL-S, il n'y a pas de modélisation de processus (contrôle et flux de données) pour la composition. Cette dernière est basée sur le protocole de chorégraphie (échange de messages entre les interfaces). Enfin, une caractéristique centrale de WSMO porte sur les fonctions de médiation ("Médiateurs") qui font l'objet d'une analyse détaillée et de réalisations concrètes au sein de la plateforme WSMX (environnement d'exécution de WSMO). Ces fonctions sont par exemple l'alignement d'ontologies, la traduction des messages que s'échangent des services ou l'alignement de processus [Cimpian et al., 2006].

SWSF (Battle et al., 2005) est enregistrée comme une proposition24 au W3C (septembre 2005). C'est une spécification du groupe de travail SWSI25. Le groupe SWSI (Semantic Web Services Initiative) était une fondation à but non lucratif qui regroupait des chercheurs de l'université et de l'industrie, aussi impliqués dans des projets USA-DARPA que UE-IST. Ce groupe a produit des spécifications techniques "Semantic Web Services Languages" (SWSL), "Semantic Web Services Ontology" (SWSO) et "Applications Scenarios" (SWSF-Applications). SWSL définit un langage de logique du premier ordre (SWSL-FOL) pour la description conceptuelle des services et un langage de règles (SWSL-Rules) permettant d'exécuter les services. SWSO définit une ontologie pour décrire les web services sémantiques utilisant SWSL (en deux étapes i) FOL puis ii) traduction en Règles) et un langage de représentation de processus (FLOWS) issu de PSL26 (Process Specification Language) pour la description de l'interface comportementale du service web. Enfin, comme pour les autres approches, l'attachement vers des protocoles de plus bas niveau déjà déployés par l'industrie (WSDL, SOAP) est décrit.

Enfin, faisant suite à des travaux antérieurs WSDL-S27 (Akkiraju et al., 2005) (soumission au W3C en nov. 2005), la proposition SA-WSDL28 ("Semantic Annotation for WSDL and XML Schema") (Farrell & Lausen, 2007) est cette fois une recommandation du W3C (août 2007). SA-WSDL définit deux mécanismes d'annotations sémantiques pour des documents WSDL et des Schéma-XML. SA-WSDL ne définit pas de langages pour représenter les modèles sémantiques, mais

24 http://www.w3.org/Submission/SWSF/ 25 http://www.swsi.org/ 26 http://www.mel.nist.gov/psl/ 27 http://www.w3.org/Submission/WSDL-S/ 28 http://www.w3.org/TR/sawsdl/

Page 22: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

22 Revue. Volume X – n° x/année

fournit un mécanisme simple de référencement vers des modèles sémantiques souvent externes comme par exemple des ontologies.

Deux types d'annotations de base sont présents i.e, i) le modèle de référence et ii) le mappage de schémas. Le modèle de référence est utilisé pour associer les interfaces/ports, opérations, entrées, sorties, décrits à l'aide des éléments ou des éléments / attributs d'un Schéma-XML avec des concepts sémantiques d'une ou plusieurs ontologies, mais qui peut-être aussi utiliser comme référencement vers des règles (RuleML, SWRL, WSML, …) permettant de spécifier des conditions de validation d'éléments du SWS (ex. entrées / sorties) et donc une annotation comportementale du SWS. Le mappage de schémas est quant à lui nécessaire pour régler les problèmes d'hétérogénéité de données (ex. contenu d'un message SOAP), permettant la transformation d'un type de représentation de données en un autre afin de permettre l'interopérabilité entre formats de données hétérogènes lors de l'invocation.

En somme, SAWSDL est la première étape vers la standardisation des SWS. Il forme maintenant l'articulation standardisée entre les langages et protocoles déployés par l'industrie des services web (XML, HTTP, SOAP, WSDL) et les langages de représentation sémantique en cours de discussion (OWL-S, SWSF, WSMO, RuleML) offrant ainsi une compatibilité ascendante des standards (OASIS et W3C) ce qui est crucial pour l'industrie - voir Figure 7. Toutes les propositions citées précédemment (OWL-S, WSMO, SWSF) ont déjà proposé d'intégrer SAWSDL dans leur architecture29, faisant de ce dernier la couche d'interfonctionnement syntaxique-sémantique basique pour toute architecture SOA.

A noter aussi, une voie intéressante pour une première étape vers un SOA sémantique (comme le rôle joué par RDF et RDF-S vis-à-vis de OWL pour les langages de représentation des ontologies) la note technique "RDF mapping WSDL30" (juin 2007) du groupe W3C "Web Service Description"31. Le principal objectif de cette spécification est de représenter WSDL 2.0 dans une ontologie standard RDF et OWL, afin que tout document WSDL puisse être transformé en RDF et donc intégré de manière standard et non ambiguë à toute ressource du web sémantique. Enfin, la conjonction de cette représentation des SWS en RDF / OWL et du standard SPARQL32 (janv. 2008) trouve assez naturellement sa place dans une SOA pour la découverte, la sélection, la négociation et bien sûr l'invocation de SWS.

29 "Bringing Semantic Annotations to Web Services: OWL-S from the SAWSDL perspective", D. Martin et al., 2007. ASWC 2007, LNCS 4825, pp 340-352. "Semantically-enabled Service Oriented Architecture: Concepts, Technologies and Application" T. Vitvar et al., SOCA 2007. 30 http://www.w3.org/TR/wsdl20-rdf/ 31 http://www.w3.org/2002/ws/desc/ 32 http://www.w3.org/TR/rdf-sparql-query/

Page 23: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

Les web services sémantiques : Partie 2 23

Les principales architectures d’exécution ou technologies de plateformes associées aux langages précédemment présentés sont les suivantes :

- WSMX33(Fensel et al., 2005) est de loin l’architecture la plus complète, en cours d’expérimentation sur des scénarios réels et en cours de transfert à l’OASIS

- OWLS-MX34 : propose une d’architecture (Klusch et al., 2006) - WSDL-S : des prototypes (au début METEOR-S University Georgia et IBM),

mais pas d’architecture générique (Sivashanmugam et al.,, 2003) - IRS III35 (Internet Reasoning Service) (Domingue et al., 2004) - SWSF36

Ontologie de Domaine

TerminologieThésaurus Chorégraphie Règles

commerciales

Information Fonctionnel Comportemental Propriétés

Modèle de référencement Mappage de schémas

Schémas Interface Opérations Liens Service

Messages, Transport, Physique

Sém

antiq

ueSy

ntax

ique

Invocation

RDFS, OWL, RIF, WSML, …

Ontologie deService, RDFS,

BPEL, …

SAWSDL

WSDL, XML Schema, XML,

SOAP, HTTP,…

Ontologie de Domaine

TerminologieThésaurus Chorégraphie Règles

commerciales

Information Fonctionnel Comportemental Propriétés

Modèle de référencement Mappage de schémas

Schémas Interface Opérations Liens Service

Messages, Transport, Physique

Sém

antiq

ueSy

ntax

ique

Invocation

RDFS, OWL, RIF, WSML, …

Ontologie deService, RDFS,

BPEL, …

SAWSDL

WSDL, XML Schema, XML,

SOAP, HTTP,…

Figure 8. Couche de langages de spécification des SWS37

Enfin pour conclure, plusieurs de ces propositions sont toujours en compétition et ne pourront-être devenir un standard que par la pression du marché soit vers une généralisation industrielle d'une de ces technologies ou de ses dérivés (norme de facto), soit suite à une évaluation scientifique et technologique de résultats de test sur des plateformes bien réelles – ce qui est en cours au sein du SWS challenge "Challenge on Automating Web Services Mediation, Choreography and Discovery"38.

33 http://www.oasis-open.org/committees/semantic-ex/faq.php, http://www.wsmx.org http://sourceforge.net/projects/wsmx 34 http://www.dfki.de/~klusch/owls-mx/owlsmx-06-final.pdf 35 http://kmi.open.ac.uk/projects/irs/ 36 http://www.w3.org/Submission/SWSF/ 37 Légère adaptation de la fig. 2 de l'excellent article [Kopecky et al., 2007] 38 http://sws-challenge.org

Page 24: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

24 Revue. Volume X – n° x/année

4. Conclusions : Feuille de route Recherche, Technologie et Industrie

En 2000, trois précurseurs de l’Internet sémantique exposèrent leur vision dans une publication désormais classique [Scientific American, May 200139]. Depuis lors cette vision s’est construite et devient bien réelle de jour en jour. On peut constater aujourd’hui que l'on dépasse la dizaine de milliards de triplets RDF sur 100 millions de pages du Web40, et des milliers de description ontologiques en RDF et OWL qui ont été publiées, avec le soutien de plus en plus évident de l’industrie. Cette forte croissance du support de l’industrie est très visible lors de conférence internationale annuelle41 très centrées sur les applications des technologies sémantiques. En effet plusieurs centaines d’expériences industrielles convaincantes sont en cours de test ou de déploiement (STC 2005, STC 2006, STC 2007, STC 2008 et ESTC 2007).

Cependant, malgré ce constat encourageant, l’Internet sémantique reste encore dans son enfance.

En 2006, une conférence invitée42 prévoyait même une "re-naissance de l’IA" (ou la fin de “l’hiver de l’IA”) grâce à de belles applications à succès comme : Deep Blue, Mars Rover, Deep Space 1, Sachem-Usinor, … et sur le Web : la recherche d’information, le traitement automatique des langues, l’apprentissage symbolique, les services web, les grilles de calcul, les agents logiciels, les réseaux sociaux, etc. rendu nécessaires par la terrible croissance de données continuellement disponibles sur le Web, mais aussi par la recherche de gain de productivité dans un écosystème mondial terriblement stressant pour les entreprises.

De 2000 à 2007, trois promoteurs majeurs de l’Internet sémantique tels le DARPA, le W3C et l’Union Européenne via son programme IST (FP6, FP7) ont financé de nombreux projets pour le transfert rapide vers l’industrie et corrélativement pour le développement de standards au W3C (RDF-S, OWL, Rules, …). Pendant ce temps, 2003 vit un début d’intérêt sur les Intranets par le gouvernement américain et l’industrie, 2005 vit l’émergence d’outils commerciaux et de nombreux logiciels libres ainsi que des progrès notables sur le verrou clé du passage à l’échelle (on peut traiter en quasi temps réel un milliard de triplets RDF (Oracle) et un défi a été lancé en 2007 pour 2008 pour le traitement de dizaines de milliards de triplets43. Force est de constater que les progrès vont très vite et que l’industrie ne tarde pas à se les approprier.

Cette appropriation est visible par les faits suivants :

39 Berners-Lee, Tim; Hendler, James and Lassila, Ora "The Semantic Web", Scientific American, May 2001, p. 29-37 http://fr.wikipedia.org/wiki/Tim_Berners-Lee 40 http://sindice.com/ 41 Semantic Technology Conference http://www.semantic-conference.com/ ; European Semantic Technology Conference http://www.estc2007.com/42 SemWeb@5: Current status and Future Promise of the Semantic Web, James Hendler, Ora Lassila, STC 2006, 7 March 2006, San José, USA 43 Open Web, Billion Triples Challenge http://challenge.semanticweb.org

Page 25: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

Les web services sémantiques : Partie 2 25

- Croissance de jeunes pousses sur les technologies sémantiques : Cerebra (Web Methods), Siderean, SandPiper, SiberLogic, Ontology Works, Intellidimension, Intellisophic, TopQuadrant, Data Grid, Ontoprise-Software AG, OntoText, StrikeIron, Autonomy, FAST, Exalead, iSoco, Jouve, Mondeca, Sirma, Pertim, Biovista, Contiva, etc.

- Industriels clés qui intègrent les technologies sémantiques depuis 2006 dans leur plan stratégique : SAP AG, Adobe, Cisco, HP, IBM, Nokia, Oracle, Sun, Vodaphone, Renault, EDF, AGFA, Cabel and Wireless, Novartis, JP Morgan Chase Bank, Wells Fargo, Swiss Life, Boeing, Audi, Elsevier, BT, Verizon, etc.

- Services vers les citoyens (e-Gouvernement et e-Administrations) en forte croissance : USA, UE, Japon, Corée, Chine etc.

- Le domaine de la santé en général et la recherche pharmaceutique en particulier qui représentent un marché immense e.g. voir « Health Care and Life Sciences Interest Group » W3C44

- Profusion de logiciels libres disponibles : Kowari, RDFLib, Jena, Sesame, Protégé, SWOOP, Wilbur etc. voir W3C SWAD 45

- Intégration de services et de données via des applications composites ("mash-up")46: GoogleMap, réseaux sociaux web 2.0, Youtube, Dailymotion, J ambase (Concerts) … etc.

- Offres ouvertes par de l'exposition "web services" de cœur de métier : Amazon, e-Bay, StrikeIron, GDS, Amadeus, … etc.

- Percée du Web 2.0 et sa déclinaison au sein des entreprises fait une percée47 : ex. BBC World Service a développé des réseaux sociaux internes très productifs et à un coût très faible, Télérama.fr, etc.

De plus il est souvent admis – et à juste titre – qu’une faible addition48 de modélisation sémantique (ex. RDF, Terminologies) aux applications d’aujourd’hui apporte déjà des résultats intéressants : méta données plus riches, extraction d’information et recherche d’information plus pertinentes, navigation plus intéressante, réseaux sociaux (FaceBook, MySpace, MusicBrainz, Flickr, del.icio.us49), Intranet de forces de ventes, gestion des connaissances de l’entreprise, etc. Tout cela participe graduellement à la réponse au défi global lancé en 2001.

Quelles leçons peut-on tirer aujourd’hui du chemin parcouru.

Si l'on adopte le point de vue de l'IA, on constate que l'hybridation des technologies est la seule voie du succès, que les outils de développement en IA sont

44 http://www.w3.org/2001/sw/hcls/45 Semantic Web Advanced Development for Europe http://www.w3.org/2001/sw/Europe/46 http://www.webmashup.com/ 47 Forester, Erica Driver, October 2007 48 - “ne pas embrasser l’ensemble du problème d’un coup mais procéder par étape” - 49 http://www.facebook.com , http://www.myspace.com , http://musicbrainz.org/, http://www.flickr.com/ , http://del.icio.us/

Page 26: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

26 Revue. Volume X – n° x/année

difficiles d'accès au néophyte, que les outils d'inférence automatique ne sont pas une fin en soi et enfin que la modélisation ontologique des applications est lente et laborieuse.

Si l'on adopte le point de vue des applications de l'Internet (Figure 9), on constate que les sites sont de plus en plus riches et agréables d'emploi, que les liens sémantiques manifestement existent ou sont proposés (Yahoo, Google, Amazon, eBay, Galileo, Youtube, etc.) et enfin que de nouveaux modèles économiques suivent, participant à la croissance économique globale.

- le règne des micro-ordinateurs [1980-1990]

• micro-ordinateur autonome et Ethernet - Internet 1ière génération [1990-2000] - Web 1.0

• Consultation de documents - Réseaux sociaux [2000 - 2010] - Web 2.0

• Gestion des connaissances et réseaux sociaux - Web sémantique [2010 – 2020] - Web 3.0

• Web de services et réseaux sociaux - Le web OS [2020-2030] - Web 4.0

• le web est une plateforme informatique

Figure 9. Courte biographie du Web

Toutefois, malgré ce succès lent mais croissant des technologies sémantiques, la communauté scientifique et industrielle est consciente que des verrous technologiques existent encore50 , on citera les verrous classiques suivants :

- Le lent développement des ontologies - de taille moyenne à très grande – e.g. modélisation de domaines métiers, disposition de meilleures pratiques, ré-utilisation d’ontologies « certifiées », et outils d’édition très simples d’usage masquant la complexité technique.

- Mise à jour automatisée des Ontologies et Bases de connaissances d’un domaine : Extraction de connaissances à partir des bases de données patrimoniales et d’entrepôts de données issus du Web. Ex. alimentation d'entrepôts de données guidées par une ontologie, extraction de connaissances par raisonnement et apprentissage, etc.

50 Knowledge Web Roadmap, (Cuel et al., 2007) http://knowledgeweb.semanticweb.org/semanticportal/deliverables/D1.4.1v3.pdf

Page 27: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

Les web services sémantiques : Partie 2 27

- Interopérabilité entre ontologies de domaines variés : Vaincre l’hétérogénéité inévitable malgré les standards e.g. via la détection automatisée de correspondances (concepts, propriétés, règles, graphes,…), en particulier dans le contexte très populaire du web communautaire ou des réseaux sociaux (« web 2.0 »)

- Passage à l’échelle, c'est-à-dire être capable de traiter des problèmes de taille réelle (cf. "billion triples challenge) par ex. via des approximations, des ontologies modulaires, de la coopération de traitements distribués.

- Expressivité des langages de représentation des bases de connaissances support d’outils d’inférence (Raisonneurs) : performance, complexité réelle et heuristiques acceptables (abandon de la complétude ?) pour des applications du monde réel .

- Ontologies de processus, Règles, Programmation Logique : intégration de nouveaux formalismes aux standards KR actuels (OWL, BPEL) pour une plus fine automatisation des processus intra et inter-entreprises ex. Règles pour décrire les interfaces comportementales des services web, règles pour définir les règles commerciales, formalismes pour décrire les processus, etc.

Pour les services web sémantique on notera les quelques défis suivants 51 :

- Découverte : outils automatiques précis, corrects et efficaces. Prise en compte de paramètres non fonctionnels tel la QoS, le coût du service, métriques de rapprochement robustes et adaptées à la finalité globale par ex. la découverte doit-être liée à la composition.

- Composition : automatisation de processus industriels et commerciaux distribués. Résilience de la composition dans des milieux très évolutifs tels le Web (ex. Re-planification à la volée). Composition automatique conduite par l’expression de haut niveau des règles du métier (Business Rules).

- Exécution et supervision : Remplacement « à chaud » (« self-healing ») de services web défaillant. Re-configuration automatique. Re-optimisation Automatique. Vérification des politiques de sécurité et propriétés transactionnelles du schéma d'orchestration.

- Outils de conception : Outils adaptés à la conception de SOA de niveaux règles du métier (Business Rules), Intégration sans couture aux méthodologies de développement actuelles, Preuves de bon fonctionnement, Méthodologie et Cycle de vie de développement des logiciels orienté-service,

- Plateformes d’exécution reconnu et de niveau industriel (IBM, SAP, …) et standards stabilisés au W3C et à l'OASIS

En résumé, les technologies du web sémantique se réduisent finalement à i) une technologie pour l'interopérabilité, ii) une plateforme pour connecter des

51 Long term research challenges in Software & Services (Mike Papazoglou et al., 2007)

Page 28: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

28 Revue. Volume X – n° x/année

communautés, des vocabulaires et des services iii) un ensemble de standards pour l'échange de connaissances52.

A ce jour [juin 2008] les technologies sémantiques commencent à montrer clairement - une fois maîtrisé leur coût d’entrée - leur potentiel53 de gain de productivité, de meilleures adéquations à la résolution de problèmes complexes et enfin de meilleure adaptation à un monde globalement plus ouvert, plus dynamique et donc plus riche. L'utilisation de SOA devrait croitre de 144% entre 2007 et 2009. En 2007, 22% des Directeurs SI disaient que leurs sociétés faisait usage de SOA tandis en 2008 53% de ceux le prévoit en 200954. Ce sentiment est fondé sur une analyse de IDC55, de 200 sociétés industrielles engagées sur la R&D en Technologies sémantiques (STC 2006) et aussi constaté lors de la conférence européenne ESTC 2007. Le traditionnel gouffre qui existe entre la R&D et le déploiement industriel et commercial se comble et tout laisse à penser que l’enrichissement des technologies de l’information apporté par les technologies sémantiques ne seront pas une mode passagère mais devraient avoir un profond impact sur l’évolution de la consommation des produits et des services, mais aussi sur leurs modes de production. Sur ce dernier point on a pu le constater avec la montée très rapide (non prévue !) des réseaux sociaux (Wikipédia, Facebook©, Myspace©).

En fait c’est tout le champ « Science et Technologie » des services56 qui offre de belles perspectives de recherches très probablement fécondes à assez court terme dans l’industrie, le commerce et pour le grand public.

5. Bibliographie

Akkiraju R., Farrell J., Miller J., Nagarajan M., Schmidt M-T., Sheth A., and Verma K., Web Service Semantics - WSDL-S. W3C Member Submission 7 November 2005, 2005.

Ankolenkar A., Paolucci M., Srinivasan N., and Sycara K., ‘The owl services coalition, owl-s 1.1 beta release’, Technical report, July 2004. http://www.daml.org/services/owl-s/1.1B/

Battle S., Bernstein A., Boley A., Grosof B., Gruninger M., Hull R., Kifer M., Martin. D., McIlraith. S., McGuinness D., Su J., and Tabet S., “Semantic Web Services Framework (SWSF)”. W3C Member Submission 9 September 2005, 2005. http://www.w3.org/Submission/SWSF/

Berardi D., Calvanese D., De Giacomo G., Lenzerini M., and Mecella M., “Automatic composition of e-services that export their behaviour”. In Proc. 1st Int. Conf. on Service Oriented Computing (ICSOC), volume 2910 of LNCS, pages 43-58, 2003.

52 ESTC 2007 Keynote speech from Susie Stephens (Oracle) 53 Semantic Wave 2006, Part-1 Mills Davis 54 http://news.zdnet.com/2424-9595_22-193137.html 19 mars 2008 55 http://www.idc.com/ 56 Service oriented science, lancé par IBM, 2005

Page 29: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

Les web services sémantiques : Partie 2 29

Berardi D., Calvanese D., De Giacomo G., Lenzerini M., and Mecella M.,: Synthesis of underspecified composite e-services based on automated reasoning. ICSOC, pages 105-114, 2004.

Berardi D., Calvanese D., De Giacomo G., Lenzerini M., and Mecella M., “Automatic Service Composition based on Behavioral Descriptions ». International Journal of Cooperative Information Systems, 14(4):333--376, 2005.

Berardi D., Calvanese D., De Giacomo G., Hull H., Mecella M.: “Automatic Composition of Transition-based Semantic Web Services with Messaging.” Very Large Data Bases (VLDB), pages 613-624, 2005

Bultan T., Fu X., Hull R. and Su J. ”Conversation Specification: A New Approach to Design and Analysis of E-service Composition”, ACM 1-58113-680-3/03/0005, WWW, May 20–24, Budapest, Hungary, 2003.

Canfora G., Di Penta M., Esposito R. And Villani ML, "QoS-Aware Replanning of Composite Web Services", pp 121-129, in proceedings of IEEE ICWS 2005.

Cardoso J. and Sheth A., “Semantic e-workflow composition”. Journal of Intelligent Information Systems, 21(3) :191–225, 2003. Technical description of the composition of a workflow.

Chan May K.S., Bishop Judith and Baresi Luciano, “Survey and Comparisaon of Planning Techniques for Web Services Composition”, Technical Report 2007.

Cimpian E., Mocan A. and Stollberg M. "Mediation Enabled Semantic Web Services Usage", ASWC 2006, Beijing, China, Sept. 2006.

Dean M. and Schreiber G., editors. OWL Web Ontology Language Reference. 2004. W3C Recommendation 10 February 2004.

De Giacomo G., Lesperance Y. and Levesque H. , “ConGolog, a concurent programming language based on the situation calculus.”, Artificial Intelligence, 1-2 (121), pp 109-169, 2000.

Diaz M., Les réseaux de Petri : modèles fondamentaux, Hermès Science Publications, 2001.

Domingue J., Cabral L., Hakimpour F., Sell D. and Motta E., IRS-III: A Plateform and Infrastructure for creating WSMO-based Semantic Web Services, WIW 2004.

Dustdar S. and Schreiner W. “A survey on Web Services composition“, Int. J. Web and Grid Services, Vol. 1, N° 1, pp. 1-30, 2005.

Fensel, D., Kifer, M., de Bruijn, J., Domingue, J.: Web service modeling ontology (wsmo) submission, w3c member submission. 2005

Gerede Ç. E., Hull R., Ibarra O. , Su J., “Automated composition of e-services: lookaheads”, Proceedings of the 2nd international conference on Service oriented computing, November 15-19, 2004, New York, NY, USA.

Ghallab M., Nau D., and Traverso P., “Automated Planning: Theory and Practice”. Morgan Kaufmann Publishers, May 2004.

Gleizes M.P., Léger, A. Athanassiou E., Glize P., "Abrose : Self-Organization and Learning in Multi-Agent Based Brokerage Services", 6th International Conference on Intelligence

Page 30: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

30 Revue. Volume X – n° x/année

and Services in Networks, IS&N'99, proceedings pp 41-54., Lecture Notes in Computer Science 1597, Springer verlag, p. 41-54, Barcelona, Spain, 26-28 April 1999

Harel D., Kozen D. and Tiuryn J., Dynamic Logic, The MIT Press, 2000.

Hull R., Benedikt M., Christophides V., and Su J., “E-services: a look behind the curtain”. In PODS ’03 : Proceedings of the 22th ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems, pages 1–14, New York, NY, USA, 2003. ACM Press.

Klusch M. and Kai-Uwe R., "Fast Dynamic Re-Planning of Composite OWL-S Services", pp 134-137, IEEE WI conference 2006.

Kopecky J., Vitvar T., Bournez C. and Farrell J., "SAWSDL: Semantic Annotations for WSDL and XML Schema, IEEE Internet Computing, 11/6, pp. 60-67, December 2007

Lausen H., Polleres A., and Roman D. (eds.), “Web Service Modeling Ontology (WSMO)”. W3C Member Submission 3 June 2005, 2005. http://www.w3.org/Submission/WSMO/.

Lécué F. and Léger. A., “A formal model for semantic web service composition”. In ISWC the 5th International Semantic Web Conference, November 2006.

Freddy Lécué, Alexandre Delteil, Alain Léger, "Optimizing Causal Link Based Web Service Composition", 18th European Conference on Artificial Intelligence, ECAI 2008, Patras, Greece. 2008.

Levesque H., Pirri F., and Reiter R., Foundations for the situation calculus. In Linköping Electronic Articles in Computer and Information Science, volume 3. 1998.

Mcllraith S.A., Son T.C., and Zeng H.. “Semantic web services". IEEE Intelligent Systems, Special Issue on the Semantic Web, Volume 16, pages 46–53, 2001a.

McIlraith S.A, Son T.C., and Zeng H.. “Mobilizing the semantic web with daml-enabled web services ». In Proceedings Second International Workshop on the Semantic Web (SemWeb-2001), 2001b.

McIlraith S.A, and Srini N.. ‘Simulation, verification and automated composition of web services’. In proceedings of the 11th international conference on World Wide Web (WWW) 2002a.

McIlraith S.A. and Son T.C., “Adapting golog for composition of semantic web services”. In Proceedings of the 8th International Conference on Principles and Knowledge Representation and Reasoning (KR-02), pages 482–496, 2002b.

Mealy G. H., “A state machine pioneer, who wrote A Method for Synthesizing Sequential Circuits”, Bell System Technical. Journal, vol 34, pp. 1045–1079, September 1955.

Medjahed B., Bouguettaya A., Elmagarmid A.K., “Composing Web services on the Semantic Web”, The VLDB Journal, 12 (4), November 2003.

Milner R., Communicating and Mobile Systems: the Pi-Calculus, Cambridge Univ. Press, 1999

Motta, E., Domingue, J., Cabral, L., and Gaspari, M. (2003) IRS II: A Framework and Infrastructure for Semantic Web Services, 2nd International Semantic Web Conference (ISWC2003), Sundial Resort, Sanibel Island, Florida, USA

Page 31: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

Les web services sémantiques : Partie 2 31

Nilsson N.J., Principles of artificial intelligence. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA, 1980.

Narayanan S. and McIlraith S., “Simulation, verification and automated composition of web services”, Eleventh International World Wide Web Conference, pages 7–10, May 2002.

Paolucci M., Kawamura T., Payne T.R., and Sycara K., “Semantic matching of web services capabilities ». Proceedings of the First International Semantic Web Conference, LNCS 2342, p. 333–347. Springer-Verlag, 2002.

Peer Joachim, “Web Service Composition as AI Planning – a Survey”, http://elektra.mcm.unisg.ch/pbwsc/docs/pfwsc.pdf , March 2005a

Peer Joachim, "A POP-based Replanning Agent for Automatic Web Service Composition", The Semantic Web: Research and Applications, LNCS 3532, 2005b

Pistore M., Barbon F., Bertoli P., Shaparau D. and Traverso P., "Planning and Monitoring Web Service Composition", AIMSA 2004.

Pistore M., Roberti P., and Traverso P.. “Process-Level Composition of Executable Web Services: "On-thefly" Versus "Once-for-all" Composition”. The Semantic Web: Research and Applications. Proceedings of ESWC 2005, Heraklion, Crete, Greece, May/June 2005. LNCS 3532, Springer Verlag, 2005a.

Pistore M., Traverso P., and Bertoli P.. “Automated Composition of Web Services by Planning in Asynchronous Domains". In Proc. ICAPS’05, 2005b.

Pistore M., Marconi A., Traverso P., and Bertoli P., “Automated Composition of Web Services by Planning at the Knowledge Level”. In Proc. IJCAI’05, 2005c.

Pistore M., Traverso P., Bertoli P., and Marconi A.. “Automated Synthesis of Composite BPEL4WS Web Services”. In Proc. ICWS’05, 2005d.

Rao Jinghai and Su Xiaomeng, “A Survey of Automated Web Service Composition Methods”, Semantic Web Services and Web Process Composition, 1st Int. Workshop, SWSWPC 2004, 3387/2005, pp 43-54, 2005

Reiter R., Knowledge in Action: Logical Foundations for Specifying and Implementing Dynimical Systems, MIT Press, Cambridge, MA, 2001.

Russell S., and Norvig P., Artificial Intelligence - A Modern Approach. Prentice Hall, 2003.

Sirin E., Hendler J., and Parsia B.. “Semi-automatic composition of web services using semantic descriptions". In Web Services : Modeling Architecture and Infrastructure workshop in conjunction with ICEIS2003, Angers, France, 2003.

Sivashanmugam, K. , Verma, K., Sheth, A., Miller, J., Adding Semantics to Web Services Standards , Proceedings of the 1st International Conference on Web Services (ICWS'03), pp. 395 – 401, Las Vegas, Nevada (2003)

Traverso P., Pistore M., “Automated Composition of Semantic Web Services into Executable Processes”. Third International Semantic Web Conference (ISWC2004), November 9-11, 2004, Hiroshima, Japan.

Page 32: Les Web Services Sémantiques : Automate et …beaune/websem/cours2008_2009/AlainLeger/...Les web services sémantiques : Partie 2 3 1. Applications industrielles Les technologies

32 Revue. Volume X – n° x/année

Waldinger R. and Shrager J., Deductive Discovery and Composition of Resources, in Proceedings Reasoning on the Web RoW06, workshop at WWW 2006, Edinburgh, UK, 22 May 2006.

Wu D., Parsia B., Sirin E., Hendler J. and Nau D. "Automating daml-s web services composition using SHOP2". In Proceedings of 2nd International Semantic Web Conference (ISWC2003), pp 195-210, 2003.

Zhang R., Budak Arpinar I., and Aleman-Meza B.. “Automatic composition of semantic web services". In International Conference on Web Service, Las Vegas NV, 2003.

Ramy Ragab Hassen est attaché temporaire de recherche et d'enseignement à l'université blaise pascal à clermont-ferrand et membre du laboratoire LIMOS dans l'équipe Bases de données et Systèmes d'Informations. Ses travaux de recherche portent sur la composition automatique des services web au niveau de leur comportement

Freddy Lécué (PhD 2008) dont la thèse porte sur la composition et l'orchestration de services web sémantique, est depuis le 1ier novembre 2008 chercheur associé à l'université de Manchester, UK. Ses domaines de recherche sont la représentation des connaissances et le raisonnement, la planification en IA et l'intégration des services.

Alain Léger est Directeur de Recherche associé au CNRS LIRIS Université Claude Bernard Lyon I. Il fut Directeur de Programme scientifique à la direction de la recherche à France Télécom – Orange Labs (1996-2007). Il a conduit ou dans le comité directeur de nombreux projets normatifs (ISO, ETSI, UIT) et des projets européens (Abrose, Mkbeem, Ontoweb, Knowledgeweb). Ses travaux de recherches sont centrés sur la représentation des connaissances et le raisonnement (KRR) et ses applications sur le Web.