SlideShare ist ein Scribd-Unternehmen logo
1 von 38
DÉCOUVERTE &
COMPOSITION DE SERVICES
Limitations des technologies existantes
L’apport du Web sémantique
La recherche en découverte de services
La recherche en composition de services
Le Monde SOA
Découverte
• Découverte des services disponibles
Sélection
• Sélection du service qui correspond au
mieux à la demande
Exécution
• Exécution du service sélectionné
18/01/2023 2
Annuaire
Fournisseur
Client
SOA Keywords
Interoperability,
Lose coupling …
Limitations
• Description de services
• La description reste uniquement fonctionnelle
• Les aspects non-fonctionnels restent absents
• Exemples des propriétés non-fonctionnels :
• Indication de prix (coûts), temps de réponse…
• QoS = Quality of Service
• Problèmes lors de la sélection des services
• Comment choisir parmi 2 services équivalents ?
18/01/2023 Manuele Kirsch Pinheiro - CRI/UP1 - mkirschpin@univ-paris1.fr 3
Description des services
• La description WSDL contient les éléments
nécessaires à la publication et à l’interaction
client-service
• Versions WSDL (W3C) : 1.1 et 2.0
• Description en 2 niveaux
• Abstrait : informations permettant la sélection
• Concret : informations permettant l’accès
• Aspects fonctionnels d’un service
• Opérations (méthodes) abstrait
• Donnés et messages échangés abstrait
• Protocoles et ports d’accès concret
18/01/2023 4
Description des services
18/01/2023 5
WSDL 1.1
Source : Lopez-Velasco 2008
Description des services
18/01/2023 6
WSDL 2.0
Source : Lopez-Velasco 2008
Services & Web Sémantique
• Application aux services Web :
• Services Web sémantiques
• Ajout d’une dimension sémantique aux services
• Description complémentaire du fournisseur, des
objectifs du service Web…
• Découverte et sélection automatique des
services par des machines ou d’autres services
18/01/2023 7
Services & Web Sémantique
• Objectifs du Web Sémantique :
• Définir et lier sémantiquement les ressources Web
afin de simplifier leur utilisation et leur découverte
[Berners-Lee 2001]
• Fournir l’accès aux ressources Web par des
descriptions sémantiques exploitables et
compréhensibles par des machines
• Apport du Web Sémantique aux services :
• Description des services utilisant la représentation de
connaissances
• Ontologies & raisonnement
• Inclusion des aspects non-fonctionnels
18/01/2023 8
Services & Web Sémantique
• Langages de description
• OWL-S (Ontology Web Language for Services)
• Origines sur le langage DAML-S (DARPA Agent Markup
Language Service)
• SAWSDL (Semantic Annotations for WSDL and XML
Schema)
• Origines sur le langage WSDL-S (Web Service Description
Language – Semantic)
• WSMF (Web Service Modeling Framework)
• WSMO (Web Service Modeling Ontology)
• WSML (Web Service Modeling Langage)
18/01/2023 9
Services & Web Sémantique
• OLW-S
• Objectifs : description, découverte, invocation et
composition automatiques
• Éléments
• Profile 
description
• Grounding 
communication
• Model 
composition
18/01/2023 10
Source : Marin 2004
Services & Web Sémantique
• OWL-S
18/01/2023 11
Source : Lopez-Velasco 2008
Services & Web Sémantique
• SAWSDL
• Objectifs : ajouter de la sémantique à la description
WSDL
• Annotations reposant sur
• La définition d’attributs étendant le standard
• Les éléments de la description WSDL 2.0
• Utilisation d’ontologies préexistantes
18/01/2023 12
Services & Web Sémantique
• SAWSDL
18/01/2023 13
Source : Lopez-Velasco 2008
Services & Web Sémantique
• WSMF (Web Service Modeling Framework)
• WSMO (Web Service Modeling Ontology)
• Meta-modèle en 4 axes : ontologies, goals,
mediators, web services
• Ontologies : définition de la terminologie
• Web services : description des services en termes de leur
fonctionnalités, pré/post-conditions et interface
• Mediators : médiateurs pour des problèmes
d’interopérabilité
• Goals : objectifs qu’un client peut avoir lorsqu’il consulte le
service
18/01/2023 Manuele Kirsch Pinheiro - CRI/UP1 - mkirschpin@univ-paris1.fr 14
Services & Web Sémantique
• WSMF (Web Service Modeling Framework)
• WSML (Web Service Modeling Langage)
• Description logique d’un service (ou d’un de ses éléments) à
l’aide des concepts de WSMO
18/01/2023 Manuele Kirsch Pinheiro - CRI/UP1 - mkirschpin@univ-paris1.fr 15
<!ENTITY ex ”http://www.example.org/ontologies/example#”>
<!ENTITY wsml ”http://www.wsmo.org/wsml/wsml−syntax#”>
<wsml xmlns=”&wsml;”
variant =”http://www.wsmo.org/wsml/wsml−syntax/wsml−flight”>
<importsOntology>
http://www.wsmo.org/ontologies/location </importsOntology>
<concept name=”&ex;Person”>
<nonFunctionalProperties> [..] </nonFunctionalProperties>
<attribute name=”&ex;hasName” type=”constraining”>
<range>&wsml;string</range>
<maxCardinality>1</maxCardinality> </attribute>
[..] </concept>
[..] </wsml> Source : de Bruijn, 2006
Découverte de services
• Retrouver le service qui convient au mieux à la
demande du client
• Multiples approches disponibles
• Web Sémantique en point commun
• Description sémantique de services
• Raisonnement à partir des ontologies
• Différents critères de sélection
• Aspects fonctionnels (opérations, inputs et outputs)
• Aspects non-fonctionnels
• Qualité de Service (QoS)
• Contexte (context-aware services)
18/01/2023 Manuele Kirsch Pinheiro - CRI/UP1 - mkirschpin@univ-paris1.fr 16
Découverte de services
• Exemples d’approche :
• Paolucci et al. (2002)
• Description de services en DAML-S (à l’origine de OWL-S)
• Match sémantique entre input/output demandés et input/output
offertes par le service
• quatre degrés de mise en correspondance
• Exact : si le concept demandé correspond exactement au concept
proposé
• Plug-In : si le concept proposé subsume le concept requis
• Subsume : si le concept demandé subsume le concept proposé
• Fail : s’il n’y a aucune relation entre les deux concepts.
18/01/2023 Manuele Kirsch Pinheiro - CRI/UP1 - mkirschpin@univ-paris1.fr 17
Découverte de services
• Exemples d’approche :
• Klusch et al. 2006
• Matching hybride entre raisonnement sur l’ontologie
(subsumption) et de mesures de similarité
• Comparaison entre les inputs / outputs d’un service et ceux
demandés
• A partir des descriptions OWL-S (disponible aussi sur d’autres
langages)
• Reiff-Marganic et al. 2007
• Matching sémantique à partir des propriétés non-fonctionnelles
• A partir du framework WSMF (WSMO)
18/01/2023 Manuele Kirsch Pinheiro - CRI/UP1 - mkirschpin@univ-paris1.fr 18
Composition des services
• Pour atteindre un objectif, il faut combiner les
fonctionnalités de plusieurs services
• Articulation de différents services élémentaires
(composant)
• Un service comme un processus
• Chaque tâche est remplie par un service composant
18/01/2023 19
Composition des services
• Types de composition
• Orchestration et chorégraphie
18/01/2023 20
Source : Peltz 2003
Composition des services
• Orchestration
• Ensemble de processus exécutés dans un ordre
prédéfini [Barros 2005]
• L’invocation centralisée : un moteur d’exécution gère
l’enchaînement des services
• Contrôle par le chef d’orchestre
• Les Web services composants sont indépendants
• Partenariat « point-à-point »
• Flux d’activités à gérer entre les Web services
• L’identification des messages et la spécification de la logique et
des séquences d’invocation sont prédéfinies
18/01/2023 21
Composition des services
• Chorégraphie
• Web Services Choreography Working Group
(www.w3.org/2002/ws/chor)
• Mise en œuvre d’un ensemble de services Web afin
d’accomplir un but commun [Barros 2005]
• Logique de contrôle supervisée par chacun des services
• Communication inter-service par l’échange de messages
• Contrôle distribué entre les participants
• Fortement asynchrone
• Contrôle par règles et événements
18/01/2023 22
Composition des services
• Chorégraphie
• Collaboration entre un ensemble de services et leurs
clients
• Description d’un contrat multi-parties décrivant le
comportement externe observable
• Chaque service découvre celui qui lui succède
• Les services ont connaissance de leur participation à l’équipe
• Exécution et contrôle distribués
• Composition dynamique [Peltz 2003]
• À chaque étape de la composition, un service Web sélectionne celui
qui lui succède
18/01/2023 23
Composition des services
• Les langages de composition
• BPEL4WS / WS-BPEL
• WS-CDL
• OWL-S
18/01/2023 24
Composition des services
• WS-BPEL ou BPEL4WS (Business Process
Execution Language for Web Services)
• BPEL4WS (version 1) renommé WS-BPEL (version 2)
• Proposition de l’industrie (IBM, BEA, SAP, Siebel,
Microsoft)
• Langage conçu pour supporter les processus métier à
travers les services Web
• Langage basé sur les workflows
• Définition d’un processus dans lequel les activités sont les
services Web
• Activités séquentielles ou parallèles
18/01/2023 25
Composition des services
• BPEL4WS distingue 2 types de processus :
• Processus abstracts
• Spécification du comportement des partenaires par rapport aux
messages échangés
• Le processus abstrait peut être relié à une chorégraphie
• Processus exécutable
• Spécification de l’ordre d’exécution des activités, des partenaires
concernés, des messages échangés…
• Moteur d’orchestration
18/01/2023 26
Composition des services
18/01/2023 27
Source : Peltz 2003
Composition des services
18/01/2023 28
Source : Lopez-Velasco 2008
Messages contenus dans le
WSDL de chaque service
participant
Composition des services
• WS-CDL (Web Service Choreography
Description Language)
• Proposition W3C (WS Choreography Working Group)
• Description des relations entre les services
• “Web Services Choreography specification is targeted for
composing interoperable, peer-to-peer collaborations
between any type of participant regardless of the supporting
platform or programming model used by the implementation of the
hosting environment”
18/01/2023 29
Composition des services
• WS-CDL
• WS-CDL complète la description WSDL des
services afin de décrire leurs interactions lors
d’une composition
• Comportement de chaque participant est lié à une interface
(description WSDL)
• Pas de sémantique incluse
• Éléments :
• Chaque participant est associé à un rôle
• Les relations sont établies entre les rôles
• Flots de contrôle : séquence, parallèle et choix
• Pré-conditions et répétitions d’une activité sont permises
18/01/2023 30
Composition des services
• OWL-S pour la composition
• Élément Service Model
• Fonctionnement du service et composition de services
• Description de la tâche qui propose le service au sein de la
composition
• Trois types de processus
• Atomique : service de base invoqué par le grounding
• Simple : représentation simplifié (transparent)
• Composé :
• Processus composant est décomposé en processus
simples
• Gestion de l’invocation par des commandes de
contrôle (sequence ou repeat)
18/01/2023 31
Composition des services
• OWL-S
18/01/2023 32
Source : Lopez-Velasco 2008
Composition des services
• Problèmes propres à la composition
• Description des processus et des composants
• Mise en œuvre d’une composition dynamique
• Sélection des composants
• Implémentation des interactions entre les services
• Compensation de services
• Contrôle de l’exécution
• Et beaucoup plus encore… ;-)
18/01/2023 33
Composition des services
• Plusieurs travaux de recherche s’intéressent à
ceux problèmes
• Exemple : Sélection des services pour une
composition optimale selon leur QoS (coût, temps
d’exécution, disponibilité et réputation) [Claro 2005]
18/01/2023 34
Composition des services
• Des plateformes propres à la composition (du
design à l’exécution) ont été proposées
• Exemples
• SELF-Serv [Benatallah2003] : orchestration et
compensation
• METEOR-S [Aggarwal2004] : orchestration, description
sémantique
• IRS-III [Cabral2006] : orchestration (par workflow) et
chorégraphie (par règles de chaînage)
18/01/2023 35
Composition des services
• Différentes propositions
• Description des processus et des composants
• Mise en œuvre d’une composition dynamique
• Compensation de services & le traitement d’exceptions
• À remarquer :
• Travaux liés à la découverte de services
• Description sémantique des services
• Usage de workflow
18/01/2023 36
Références
• Aggarwal, R., Verma, K., Miller, J., Milnor, W. Constraint Driven Web Service
Composition in METEOR-S. In: Procs of the IEEE International Conference on
Services Computing (SCC’04), Sept. 2004, Shanghai, China. IEEE Computer
Society, 2004, pp.23-30.
• Barros, A., Dumas, M., Oaks, P. A Critical Overview of the Web Services
Choreography Description Language. Business Process Trends White Paper [en
ligne], 2005.
• Berners-Lee, T., Hendler, J., Lassila, O. The Semantic Web. In: Scientific
Americain, 2001.
• Benatallah, B., Dumas, M., Fauvet, M.-C., Rabhi, F.A., Sheng, Q.Z. Overview of
Some Patterns for Architecting and Managing Composite Web Services. ACM
SIGecom Exchanges, 2002, vol.3, n°3, pp.9-16.
• de Bruijn, J., Lausen, H., Polleres, A. Fensel, D. The Web service modeling
language WSML: An overview. ESWC 2006, http://www.wsmo.org/wsml/wsml-
resources/wsml-eswc2006-handouts.pdf (visite Jan 2013)
• Cabral, L., Domingue, J., Galizia, S., Gugliotta, A., Tanasescu, V., Pedrinaci, C.,
Norton, B. IRS-III: A Broker for Semantic Web Services Based Applications. In:
Procs of the 5th International Semantic Web Conference (ISWC 2006), Nov. 2006,
Athens, GA, USA. LNCS Springer, 2006, pp.201-214.
18/01/2023 Manuele Kirsch Pinheiro - CRI/UP1 - mkirschpin@univ-paris1.fr 37
Références
• Claro D., Albers P., Hao J. Selecting Web Services for Optimal Composition.
In: Procs of the 3rd International Conference on Web Services (ICWS 2005),
2nd International Workshop on Semantic and Dynamic Web Processes,
Orlando, Florida, USA, July 2005, pp.32-45.
• Fensel, D., Facca, F.M., Simperl, E., Toma, I. Semantic Web services,
Springer, 2011.
• Klusch, M.; Fries, B. & Sycara, K., Automated semantic web service
discovery with OWLS-MX, 5th Int. conference on Autonomous Agents and
MultiAgent Systems (AAMAS '06), ACM, 2006, 915-922
• Lopez-velasco, C. Sélection et composition de services Web pour la
génération d’applications adaptées au contexte d’utilisation, Université
Joseph Fourier (Grenoble I), 2008
• Martin, D., Burstein, M., Hobbs, J., Lassila, O. et al. OWL-S: Semantic
Markup for Web Services. W3C Member Submission, 2004.
http://www.w3.org/Submission/OWL-S (visite Jan 2013)
• Peltz, C. Web Services Orchestration and Choreography, SOA World
Magazine, June 17, 2003, http://soa.sys-con.com/node/39800
• Reiff-Marganiec, S., Qing Yu, H., Tilly, M., Service Selection based on Non-
Functional Properties, NFPSLA-SOC07 Workshop, ICSOC2007, 2007.
18/01/2023 38

Weitere ähnliche Inhalte

Ähnlich wie Decouverte2014-2015.pptx

Introduction a la SOA
Introduction a la SOAIntroduction a la SOA
Introduction a la SOATugdual Grall
 
1 - chapitre 1 chapitre 2 SOA.pdf
1 - chapitre 1 chapitre 2 SOA.pdf1 - chapitre 1 chapitre 2 SOA.pdf
1 - chapitre 1 chapitre 2 SOA.pdfhaythem bouzouraa
 
Architecture orientée service (SOA)
Architecture orientée service (SOA)Architecture orientée service (SOA)
Architecture orientée service (SOA)Klee Group
 
Architectures orientés services (SOA)
Architectures orientés services (SOA)Architectures orientés services (SOA)
Architectures orientés services (SOA)Heithem Abbes
 
Formation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFFormation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFBoubker ABERWAG
 
Portails Etat De L'art
Portails  Etat De L'artPortails  Etat De L'art
Portails Etat De L'artTugdual Grall
 
Services web soap-el-habib-nfaoui
Services web soap-el-habib-nfaouiServices web soap-el-habib-nfaoui
Services web soap-el-habib-nfaouiEl Habib NFAOUI
 
20140130 mug lyon - post-mortem d'une application métier
20140130   mug lyon - post-mortem d'une application métier20140130   mug lyon - post-mortem d'une application métier
20140130 mug lyon - post-mortem d'une application métierMatthieu DUFOURNEAUD
 
2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_servicesCamus LANMADOUCELO
 
Architectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythmeArchitectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythmeMicrosoft
 
eServices-Chp4: ESB
eServices-Chp4: ESBeServices-Chp4: ESB
eServices-Chp4: ESBLilia Sfaxi
 
Chp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOAChp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOALilia Sfaxi
 
Azure Service Fabric pour les développeurs
Azure Service Fabric pour les développeursAzure Service Fabric pour les développeurs
Azure Service Fabric pour les développeursMicrosoft
 
elastic business process management: state of the art and open challenges for...
elastic business process management: state of the art and open challenges for...elastic business process management: state of the art and open challenges for...
elastic business process management: state of the art and open challenges for...omri med
 
SOA-Partie 2.pdf hvjhvhjvkhvhjvhvhvjhvkhv
SOA-Partie 2.pdf hvjhvhjvkhvhjvhvhvjhvkhvSOA-Partie 2.pdf hvjhvhjvkhvhjvhvhvjhvkhv
SOA-Partie 2.pdf hvjhvhjvkhvhjvhvhvjhvkhvamine17157
 

Ähnlich wie Decouverte2014-2015.pptx (20)

Introduction a la SOA
Introduction a la SOAIntroduction a la SOA
Introduction a la SOA
 
1 - chapitre 1 chapitre 2 SOA.pdf
1 - chapitre 1 chapitre 2 SOA.pdf1 - chapitre 1 chapitre 2 SOA.pdf
1 - chapitre 1 chapitre 2 SOA.pdf
 
Chp2 - SOA
Chp2 - SOAChp2 - SOA
Chp2 - SOA
 
Architecture orientée service (SOA)
Architecture orientée service (SOA)Architecture orientée service (SOA)
Architecture orientée service (SOA)
 
Architectures orientés services (SOA)
Architectures orientés services (SOA)Architectures orientés services (SOA)
Architectures orientés services (SOA)
 
Retour d'experience projet AngularJS
Retour d'experience projet AngularJSRetour d'experience projet AngularJS
Retour d'experience projet AngularJS
 
Formation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFFormation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPF
 
Portails Etat De L'art
Portails  Etat De L'artPortails  Etat De L'art
Portails Etat De L'art
 
education
educationeducation
education
 
Services web soap-el-habib-nfaoui
Services web soap-el-habib-nfaouiServices web soap-el-habib-nfaoui
Services web soap-el-habib-nfaoui
 
Web services SOAP et REST
Web services  SOAP et RESTWeb services  SOAP et REST
Web services SOAP et REST
 
20140130 mug lyon - post-mortem d'une application métier
20140130   mug lyon - post-mortem d'une application métier20140130   mug lyon - post-mortem d'une application métier
20140130 mug lyon - post-mortem d'une application métier
 
2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services
 
Architectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythmeArchitectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythme
 
eServices-Chp4: ESB
eServices-Chp4: ESBeServices-Chp4: ESB
eServices-Chp4: ESB
 
Chp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOAChp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOA
 
Azure Service Fabric pour les développeurs
Azure Service Fabric pour les développeursAzure Service Fabric pour les développeurs
Azure Service Fabric pour les développeurs
 
elastic business process management: state of the art and open challenges for...
elastic business process management: state of the art and open challenges for...elastic business process management: state of the art and open challenges for...
elastic business process management: state of the art and open challenges for...
 
SOA-Partie 2.pdf hvjhvhjvkhvhjvhvhvjhvkhv
SOA-Partie 2.pdf hvjhvhjvkhvhjvhvhvjhvkhvSOA-Partie 2.pdf hvjhvhjvkhvhjvhvhvjhvkhv
SOA-Partie 2.pdf hvjhvhjvkhvhjvhvhvjhvkhv
 
spatial data infrastructure
spatial data infrastructurespatial data infrastructure
spatial data infrastructure
 

Mehr von RihabBENLAMINE

presentationatelierphpprt2-140314143938-phpapp02.pdf
presentationatelierphpprt2-140314143938-phpapp02.pdfpresentationatelierphpprt2-140314143938-phpapp02.pdf
presentationatelierphpprt2-140314143938-phpapp02.pdfRihabBENLAMINE
 
Tutoriel-PHP-Introduction-à-la-POoooooooooooO.pdf
Tutoriel-PHP-Introduction-à-la-POoooooooooooO.pdfTutoriel-PHP-Introduction-à-la-POoooooooooooO.pdf
Tutoriel-PHP-Introduction-à-la-POoooooooooooO.pdfRihabBENLAMINE
 
CM_PHP_PDOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.pdf
CM_PHP_PDOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.pdfCM_PHP_PDOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.pdf
CM_PHP_PDOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.pdfRihabBENLAMINE
 
10_interfacesjavaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.pdf
10_interfacesjavaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.pdf10_interfacesjavaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.pdf
10_interfacesjavaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.pdfRihabBENLAMINE
 
coursphp-chap3-230321082859-121d6678.pptx
coursphp-chap3-230321082859-121d6678.pptxcoursphp-chap3-230321082859-121d6678.pptx
coursphp-chap3-230321082859-121d6678.pptxRihabBENLAMINE
 
Cours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdf
Cours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdfCours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdf
Cours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdfRihabBENLAMINE
 
Virtualisation & Cloud. Cloud Computing. Iset Siliana RSI3..pdf
Virtualisation & Cloud. Cloud Computing. Iset Siliana RSI3..pdfVirtualisation & Cloud. Cloud Computing. Iset Siliana RSI3..pdf
Virtualisation & Cloud. Cloud Computing. Iset Siliana RSI3..pdfRihabBENLAMINE
 
416769859360_chap2fondementdesreseaux2023.pdf
416769859360_chap2fondementdesreseaux2023.pdf416769859360_chap2fondementdesreseaux2023.pdf
416769859360_chap2fondementdesreseaux2023.pdfRihabBENLAMINE
 
Interace Utilisateur.pdf
Interace Utilisateur.pdfInterace Utilisateur.pdf
Interace Utilisateur.pdfRihabBENLAMINE
 
Bases de données sous Android.pdf
Bases de données sous Android.pdfBases de données sous Android.pdf
Bases de données sous Android.pdfRihabBENLAMINE
 
Environnement Android.pdf
Environnement Android.pdfEnvironnement Android.pdf
Environnement Android.pdfRihabBENLAMINE
 
coursphp-230411142526-784b67e9.pdf
coursphp-230411142526-784b67e9.pdfcoursphp-230411142526-784b67e9.pdf
coursphp-230411142526-784b67e9.pdfRihabBENLAMINE
 
0519-pdf-php-bases-initiation.pdf
0519-pdf-php-bases-initiation.pdf0519-pdf-php-bases-initiation.pdf
0519-pdf-php-bases-initiation.pdfRihabBENLAMINE
 
introAndroid_2023_V6.5.2pp1-162.pdf
introAndroid_2023_V6.5.2pp1-162.pdfintroAndroid_2023_V6.5.2pp1-162.pdf
introAndroid_2023_V6.5.2pp1-162.pdfRihabBENLAMINE
 
016834638650_suitechap1.pptx
016834638650_suitechap1.pptx016834638650_suitechap1.pptx
016834638650_suitechap1.pptxRihabBENLAMINE
 
Chapitre 04-B - Langages de consultation.pdf
Chapitre 04-B - Langages de consultation.pdfChapitre 04-B - Langages de consultation.pdf
Chapitre 04-B - Langages de consultation.pdfRihabBENLAMINE
 

Mehr von RihabBENLAMINE (20)

presentationatelierphpprt2-140314143938-phpapp02.pdf
presentationatelierphpprt2-140314143938-phpapp02.pdfpresentationatelierphpprt2-140314143938-phpapp02.pdf
presentationatelierphpprt2-140314143938-phpapp02.pdf
 
Tutoriel-PHP-Introduction-à-la-POoooooooooooO.pdf
Tutoriel-PHP-Introduction-à-la-POoooooooooooO.pdfTutoriel-PHP-Introduction-à-la-POoooooooooooO.pdf
Tutoriel-PHP-Introduction-à-la-POoooooooooooO.pdf
 
CM_PHP_PDOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.pdf
CM_PHP_PDOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.pdfCM_PHP_PDOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.pdf
CM_PHP_PDOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.pdf
 
10_interfacesjavaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.pdf
10_interfacesjavaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.pdf10_interfacesjavaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.pdf
10_interfacesjavaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.pdf
 
coursphp-chap3-230321082859-121d6678.pptx
coursphp-chap3-230321082859-121d6678.pptxcoursphp-chap3-230321082859-121d6678.pptx
coursphp-chap3-230321082859-121d6678.pptx
 
Cours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdf
Cours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdfCours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdf
Cours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdf
 
Virtualisation & Cloud. Cloud Computing. Iset Siliana RSI3..pdf
Virtualisation & Cloud. Cloud Computing. Iset Siliana RSI3..pdfVirtualisation & Cloud. Cloud Computing. Iset Siliana RSI3..pdf
Virtualisation & Cloud. Cloud Computing. Iset Siliana RSI3..pdf
 
416769859360_chap2fondementdesreseaux2023.pdf
416769859360_chap2fondementdesreseaux2023.pdf416769859360_chap2fondementdesreseaux2023.pdf
416769859360_chap2fondementdesreseaux2023.pdf
 
Interace Utilisateur.pdf
Interace Utilisateur.pdfInterace Utilisateur.pdf
Interace Utilisateur.pdf
 
Firebase.pdf
Firebase.pdfFirebase.pdf
Firebase.pdf
 
Bases de données sous Android.pdf
Bases de données sous Android.pdfBases de données sous Android.pdf
Bases de données sous Android.pdf
 
Les Activités.pdf
Les Activités.pdfLes Activités.pdf
Les Activités.pdf
 
Environnement Android.pdf
Environnement Android.pdfEnvironnement Android.pdf
Environnement Android.pdf
 
coursphp-230411142526-784b67e9.pdf
coursphp-230411142526-784b67e9.pdfcoursphp-230411142526-784b67e9.pdf
coursphp-230411142526-784b67e9.pdf
 
0519-pdf-php-bases-initiation.pdf
0519-pdf-php-bases-initiation.pdf0519-pdf-php-bases-initiation.pdf
0519-pdf-php-bases-initiation.pdf
 
introAndroid_2023_V6.5.2pp1-162.pdf
introAndroid_2023_V6.5.2pp1-162.pdfintroAndroid_2023_V6.5.2pp1-162.pdf
introAndroid_2023_V6.5.2pp1-162.pdf
 
016834638650_suitechap1.pptx
016834638650_suitechap1.pptx016834638650_suitechap1.pptx
016834638650_suitechap1.pptx
 
PHP_intro.pdf
PHP_intro.pdfPHP_intro.pdf
PHP_intro.pdf
 
Chapitre 04-B - Langages de consultation.pdf
Chapitre 04-B - Langages de consultation.pdfChapitre 04-B - Langages de consultation.pdf
Chapitre 04-B - Langages de consultation.pdf
 
chapitre-2.pptx.pdf
chapitre-2.pptx.pdfchapitre-2.pptx.pdf
chapitre-2.pptx.pdf
 

Decouverte2014-2015.pptx

  • 1. DÉCOUVERTE & COMPOSITION DE SERVICES Limitations des technologies existantes L’apport du Web sémantique La recherche en découverte de services La recherche en composition de services
  • 2. Le Monde SOA Découverte • Découverte des services disponibles Sélection • Sélection du service qui correspond au mieux à la demande Exécution • Exécution du service sélectionné 18/01/2023 2 Annuaire Fournisseur Client SOA Keywords Interoperability, Lose coupling …
  • 3. Limitations • Description de services • La description reste uniquement fonctionnelle • Les aspects non-fonctionnels restent absents • Exemples des propriétés non-fonctionnels : • Indication de prix (coûts), temps de réponse… • QoS = Quality of Service • Problèmes lors de la sélection des services • Comment choisir parmi 2 services équivalents ? 18/01/2023 Manuele Kirsch Pinheiro - CRI/UP1 - mkirschpin@univ-paris1.fr 3
  • 4. Description des services • La description WSDL contient les éléments nécessaires à la publication et à l’interaction client-service • Versions WSDL (W3C) : 1.1 et 2.0 • Description en 2 niveaux • Abstrait : informations permettant la sélection • Concret : informations permettant l’accès • Aspects fonctionnels d’un service • Opérations (méthodes) abstrait • Donnés et messages échangés abstrait • Protocoles et ports d’accès concret 18/01/2023 4
  • 5. Description des services 18/01/2023 5 WSDL 1.1 Source : Lopez-Velasco 2008
  • 6. Description des services 18/01/2023 6 WSDL 2.0 Source : Lopez-Velasco 2008
  • 7. Services & Web Sémantique • Application aux services Web : • Services Web sémantiques • Ajout d’une dimension sémantique aux services • Description complémentaire du fournisseur, des objectifs du service Web… • Découverte et sélection automatique des services par des machines ou d’autres services 18/01/2023 7
  • 8. Services & Web Sémantique • Objectifs du Web Sémantique : • Définir et lier sémantiquement les ressources Web afin de simplifier leur utilisation et leur découverte [Berners-Lee 2001] • Fournir l’accès aux ressources Web par des descriptions sémantiques exploitables et compréhensibles par des machines • Apport du Web Sémantique aux services : • Description des services utilisant la représentation de connaissances • Ontologies & raisonnement • Inclusion des aspects non-fonctionnels 18/01/2023 8
  • 9. Services & Web Sémantique • Langages de description • OWL-S (Ontology Web Language for Services) • Origines sur le langage DAML-S (DARPA Agent Markup Language Service) • SAWSDL (Semantic Annotations for WSDL and XML Schema) • Origines sur le langage WSDL-S (Web Service Description Language – Semantic) • WSMF (Web Service Modeling Framework) • WSMO (Web Service Modeling Ontology) • WSML (Web Service Modeling Langage) 18/01/2023 9
  • 10. Services & Web Sémantique • OLW-S • Objectifs : description, découverte, invocation et composition automatiques • Éléments • Profile  description • Grounding  communication • Model  composition 18/01/2023 10 Source : Marin 2004
  • 11. Services & Web Sémantique • OWL-S 18/01/2023 11 Source : Lopez-Velasco 2008
  • 12. Services & Web Sémantique • SAWSDL • Objectifs : ajouter de la sémantique à la description WSDL • Annotations reposant sur • La définition d’attributs étendant le standard • Les éléments de la description WSDL 2.0 • Utilisation d’ontologies préexistantes 18/01/2023 12
  • 13. Services & Web Sémantique • SAWSDL 18/01/2023 13 Source : Lopez-Velasco 2008
  • 14. Services & Web Sémantique • WSMF (Web Service Modeling Framework) • WSMO (Web Service Modeling Ontology) • Meta-modèle en 4 axes : ontologies, goals, mediators, web services • Ontologies : définition de la terminologie • Web services : description des services en termes de leur fonctionnalités, pré/post-conditions et interface • Mediators : médiateurs pour des problèmes d’interopérabilité • Goals : objectifs qu’un client peut avoir lorsqu’il consulte le service 18/01/2023 Manuele Kirsch Pinheiro - CRI/UP1 - mkirschpin@univ-paris1.fr 14
  • 15. Services & Web Sémantique • WSMF (Web Service Modeling Framework) • WSML (Web Service Modeling Langage) • Description logique d’un service (ou d’un de ses éléments) à l’aide des concepts de WSMO 18/01/2023 Manuele Kirsch Pinheiro - CRI/UP1 - mkirschpin@univ-paris1.fr 15 <!ENTITY ex ”http://www.example.org/ontologies/example#”> <!ENTITY wsml ”http://www.wsmo.org/wsml/wsml−syntax#”> <wsml xmlns=”&wsml;” variant =”http://www.wsmo.org/wsml/wsml−syntax/wsml−flight”> <importsOntology> http://www.wsmo.org/ontologies/location </importsOntology> <concept name=”&ex;Person”> <nonFunctionalProperties> [..] </nonFunctionalProperties> <attribute name=”&ex;hasName” type=”constraining”> <range>&wsml;string</range> <maxCardinality>1</maxCardinality> </attribute> [..] </concept> [..] </wsml> Source : de Bruijn, 2006
  • 16. Découverte de services • Retrouver le service qui convient au mieux à la demande du client • Multiples approches disponibles • Web Sémantique en point commun • Description sémantique de services • Raisonnement à partir des ontologies • Différents critères de sélection • Aspects fonctionnels (opérations, inputs et outputs) • Aspects non-fonctionnels • Qualité de Service (QoS) • Contexte (context-aware services) 18/01/2023 Manuele Kirsch Pinheiro - CRI/UP1 - mkirschpin@univ-paris1.fr 16
  • 17. Découverte de services • Exemples d’approche : • Paolucci et al. (2002) • Description de services en DAML-S (à l’origine de OWL-S) • Match sémantique entre input/output demandés et input/output offertes par le service • quatre degrés de mise en correspondance • Exact : si le concept demandé correspond exactement au concept proposé • Plug-In : si le concept proposé subsume le concept requis • Subsume : si le concept demandé subsume le concept proposé • Fail : s’il n’y a aucune relation entre les deux concepts. 18/01/2023 Manuele Kirsch Pinheiro - CRI/UP1 - mkirschpin@univ-paris1.fr 17
  • 18. Découverte de services • Exemples d’approche : • Klusch et al. 2006 • Matching hybride entre raisonnement sur l’ontologie (subsumption) et de mesures de similarité • Comparaison entre les inputs / outputs d’un service et ceux demandés • A partir des descriptions OWL-S (disponible aussi sur d’autres langages) • Reiff-Marganic et al. 2007 • Matching sémantique à partir des propriétés non-fonctionnelles • A partir du framework WSMF (WSMO) 18/01/2023 Manuele Kirsch Pinheiro - CRI/UP1 - mkirschpin@univ-paris1.fr 18
  • 19. Composition des services • Pour atteindre un objectif, il faut combiner les fonctionnalités de plusieurs services • Articulation de différents services élémentaires (composant) • Un service comme un processus • Chaque tâche est remplie par un service composant 18/01/2023 19
  • 20. Composition des services • Types de composition • Orchestration et chorégraphie 18/01/2023 20 Source : Peltz 2003
  • 21. Composition des services • Orchestration • Ensemble de processus exécutés dans un ordre prédéfini [Barros 2005] • L’invocation centralisée : un moteur d’exécution gère l’enchaînement des services • Contrôle par le chef d’orchestre • Les Web services composants sont indépendants • Partenariat « point-à-point » • Flux d’activités à gérer entre les Web services • L’identification des messages et la spécification de la logique et des séquences d’invocation sont prédéfinies 18/01/2023 21
  • 22. Composition des services • Chorégraphie • Web Services Choreography Working Group (www.w3.org/2002/ws/chor) • Mise en œuvre d’un ensemble de services Web afin d’accomplir un but commun [Barros 2005] • Logique de contrôle supervisée par chacun des services • Communication inter-service par l’échange de messages • Contrôle distribué entre les participants • Fortement asynchrone • Contrôle par règles et événements 18/01/2023 22
  • 23. Composition des services • Chorégraphie • Collaboration entre un ensemble de services et leurs clients • Description d’un contrat multi-parties décrivant le comportement externe observable • Chaque service découvre celui qui lui succède • Les services ont connaissance de leur participation à l’équipe • Exécution et contrôle distribués • Composition dynamique [Peltz 2003] • À chaque étape de la composition, un service Web sélectionne celui qui lui succède 18/01/2023 23
  • 24. Composition des services • Les langages de composition • BPEL4WS / WS-BPEL • WS-CDL • OWL-S 18/01/2023 24
  • 25. Composition des services • WS-BPEL ou BPEL4WS (Business Process Execution Language for Web Services) • BPEL4WS (version 1) renommé WS-BPEL (version 2) • Proposition de l’industrie (IBM, BEA, SAP, Siebel, Microsoft) • Langage conçu pour supporter les processus métier à travers les services Web • Langage basé sur les workflows • Définition d’un processus dans lequel les activités sont les services Web • Activités séquentielles ou parallèles 18/01/2023 25
  • 26. Composition des services • BPEL4WS distingue 2 types de processus : • Processus abstracts • Spécification du comportement des partenaires par rapport aux messages échangés • Le processus abstrait peut être relié à une chorégraphie • Processus exécutable • Spécification de l’ordre d’exécution des activités, des partenaires concernés, des messages échangés… • Moteur d’orchestration 18/01/2023 26
  • 27. Composition des services 18/01/2023 27 Source : Peltz 2003
  • 28. Composition des services 18/01/2023 28 Source : Lopez-Velasco 2008 Messages contenus dans le WSDL de chaque service participant
  • 29. Composition des services • WS-CDL (Web Service Choreography Description Language) • Proposition W3C (WS Choreography Working Group) • Description des relations entre les services • “Web Services Choreography specification is targeted for composing interoperable, peer-to-peer collaborations between any type of participant regardless of the supporting platform or programming model used by the implementation of the hosting environment” 18/01/2023 29
  • 30. Composition des services • WS-CDL • WS-CDL complète la description WSDL des services afin de décrire leurs interactions lors d’une composition • Comportement de chaque participant est lié à une interface (description WSDL) • Pas de sémantique incluse • Éléments : • Chaque participant est associé à un rôle • Les relations sont établies entre les rôles • Flots de contrôle : séquence, parallèle et choix • Pré-conditions et répétitions d’une activité sont permises 18/01/2023 30
  • 31. Composition des services • OWL-S pour la composition • Élément Service Model • Fonctionnement du service et composition de services • Description de la tâche qui propose le service au sein de la composition • Trois types de processus • Atomique : service de base invoqué par le grounding • Simple : représentation simplifié (transparent) • Composé : • Processus composant est décomposé en processus simples • Gestion de l’invocation par des commandes de contrôle (sequence ou repeat) 18/01/2023 31
  • 32. Composition des services • OWL-S 18/01/2023 32 Source : Lopez-Velasco 2008
  • 33. Composition des services • Problèmes propres à la composition • Description des processus et des composants • Mise en œuvre d’une composition dynamique • Sélection des composants • Implémentation des interactions entre les services • Compensation de services • Contrôle de l’exécution • Et beaucoup plus encore… ;-) 18/01/2023 33
  • 34. Composition des services • Plusieurs travaux de recherche s’intéressent à ceux problèmes • Exemple : Sélection des services pour une composition optimale selon leur QoS (coût, temps d’exécution, disponibilité et réputation) [Claro 2005] 18/01/2023 34
  • 35. Composition des services • Des plateformes propres à la composition (du design à l’exécution) ont été proposées • Exemples • SELF-Serv [Benatallah2003] : orchestration et compensation • METEOR-S [Aggarwal2004] : orchestration, description sémantique • IRS-III [Cabral2006] : orchestration (par workflow) et chorégraphie (par règles de chaînage) 18/01/2023 35
  • 36. Composition des services • Différentes propositions • Description des processus et des composants • Mise en œuvre d’une composition dynamique • Compensation de services & le traitement d’exceptions • À remarquer : • Travaux liés à la découverte de services • Description sémantique des services • Usage de workflow 18/01/2023 36
  • 37. Références • Aggarwal, R., Verma, K., Miller, J., Milnor, W. Constraint Driven Web Service Composition in METEOR-S. In: Procs of the IEEE International Conference on Services Computing (SCC’04), Sept. 2004, Shanghai, China. IEEE Computer Society, 2004, pp.23-30. • Barros, A., Dumas, M., Oaks, P. A Critical Overview of the Web Services Choreography Description Language. Business Process Trends White Paper [en ligne], 2005. • Berners-Lee, T., Hendler, J., Lassila, O. The Semantic Web. In: Scientific Americain, 2001. • Benatallah, B., Dumas, M., Fauvet, M.-C., Rabhi, F.A., Sheng, Q.Z. Overview of Some Patterns for Architecting and Managing Composite Web Services. ACM SIGecom Exchanges, 2002, vol.3, n°3, pp.9-16. • de Bruijn, J., Lausen, H., Polleres, A. Fensel, D. The Web service modeling language WSML: An overview. ESWC 2006, http://www.wsmo.org/wsml/wsml- resources/wsml-eswc2006-handouts.pdf (visite Jan 2013) • Cabral, L., Domingue, J., Galizia, S., Gugliotta, A., Tanasescu, V., Pedrinaci, C., Norton, B. IRS-III: A Broker for Semantic Web Services Based Applications. In: Procs of the 5th International Semantic Web Conference (ISWC 2006), Nov. 2006, Athens, GA, USA. LNCS Springer, 2006, pp.201-214. 18/01/2023 Manuele Kirsch Pinheiro - CRI/UP1 - mkirschpin@univ-paris1.fr 37
  • 38. Références • Claro D., Albers P., Hao J. Selecting Web Services for Optimal Composition. In: Procs of the 3rd International Conference on Web Services (ICWS 2005), 2nd International Workshop on Semantic and Dynamic Web Processes, Orlando, Florida, USA, July 2005, pp.32-45. • Fensel, D., Facca, F.M., Simperl, E., Toma, I. Semantic Web services, Springer, 2011. • Klusch, M.; Fries, B. & Sycara, K., Automated semantic web service discovery with OWLS-MX, 5th Int. conference on Autonomous Agents and MultiAgent Systems (AAMAS '06), ACM, 2006, 915-922 • Lopez-velasco, C. Sélection et composition de services Web pour la génération d’applications adaptées au contexte d’utilisation, Université Joseph Fourier (Grenoble I), 2008 • Martin, D., Burstein, M., Hobbs, J., Lassila, O. et al. OWL-S: Semantic Markup for Web Services. W3C Member Submission, 2004. http://www.w3.org/Submission/OWL-S (visite Jan 2013) • Peltz, C. Web Services Orchestration and Choreography, SOA World Magazine, June 17, 2003, http://soa.sys-con.com/node/39800 • Reiff-Marganiec, S., Qing Yu, H., Tilly, M., Service Selection based on Non- Functional Properties, NFPSLA-SOC07 Workshop, ICSOC2007, 2007. 18/01/2023 38