Compatibility and replaceability analysis for timed web service protocols

Documents pareils
Caractérisation des transitions temporisées dans les logs de conversation de services Web (version longue)

Messagerie asynchrone et Services Web

Sommaire. Introduction La technologie ebxml EDI conventionnels versus ebxml Web Services et ebxml Acteurs de l ebxml Conclusion

L intégration d applications unifiée par les Services Web et XML Réconcilier J2EE.NET EIS et mainframes

Les nouvelles architectures des SI : Etat de l Art

Cloud computing Votre informatique à la demande

Cadre formel pour la modélisation de la gestion des processus métier par une équipe médicale interdisciplinaire

Curriculum Vitae. 1 Synthèse de la carrière. Nom patronymique : Situation de famille : Situation professionnelle :

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

Modèle de cahier des charges pour un appel d offres relatif à une solution de gestion des processus métier (BPM)

Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing

Linux embarqué: une alternative à Windows CE?

Objectif : Passer de l analyse métier et fonctionnelle à la définition des applications qui

THÈSE de DOCTORAT. Sémantique, interactions et langages de description des services web complexes

Sécurité des Web Services (SOAP vs REST)

Problématiques de recherche. Figure Research Agenda for service-oriented computing

Optimisez votre solution CRM avec les modules optionnels d update.crm : Profitez de nos innovations technologiques

PRIMAVERA P6 ENTERPRISE PROJECT PORTFOLIO MANAGEMENT WEB SERVICES

La démarche SOA et l interopérabilité applicative

Introduction aux «Services Web»

WEB15 IBM Software for Business Process Management. un offre complète et modulaire. Alain DARMON consultant avant-vente BPM

Petit Déjeuner Pépinière du Logiciel Libre. 25 juin 2008

Programmation Web Avancée Introduction aux services Web

NOVA BPM. «Première solution BPM intégr. Pierre Vignéras Bull R&D

Composition semi-automatique de Services Web

Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web»

Systèmes d'informations historique et mutations

Architecture SOA Un Système d'information agile au service des entreprises et administrations

Iyad Alshabani SysCom - CReSTIC Université de Reims 17/02/2011 1

Business & High Technology

Vers l'orchestration de grilles de PC par les mécanismes de publicationsouscription

Model checking temporisé

Introduction à la conception de systèmes d information

Business Process Execution Language

24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. EJB : les fondamentaux. Enterprise Java Bean. Enterprise Java Bean.

République Algérienne Démocratique et Populaire Université Abou Bakr Belkaid Tlemcen Faculté des Sciences Département d Informatique

Suite Jedox La Business-Driven Intelligence avec Jedox

21 mars Simulations et Méthodes de Monte Carlo. DADI Charles-Abner. Objectifs et intérêt de ce T.E.R. Générer l'aléatoire.

Nouvelles technologies pour l intégration : les ESB

Cloud et SOA La présence du Cloud révolutionne-t-elle l approche SOA?

Le 09 et 10 Décembre 09

Urbanisation des Systèmes d'information

L Orchestration de Services Web avec Orchestra. Goulven Le Jeune Orchestra Project Manager

Intégration d'applications à "gros grain" Unité d'intégration : le "service" (interface + contrat)

Le cloud computing au service des applications cartographiques à haute disponibilité

des besoins de contenu des besoins de forme !"#$%&'($)$*"+,$-.*"#$*"$/.0#12+/13.0#

Défi Cloud Computing

Licence professionnelle Développement d'applications Intranet/Internet

La virtualisation, si simple!

Le cadre des Web Services Partie 1 : Introduction

Cloud Computing : Utiliser Stratos comme PaaS privé sur un cloud Eucalyptus

Accélérer l agilité de votre site de e-commerce. Cas client

IBM Workplace : Live!

Travail collaboratif. Glossaire

Vers une adaptabilité dynamique des architectures orientées services

BPEL Orchestration de Web Services

مرحبا. Bienvenue. Wel come

Mineure Architectures Orientées Services SOA Business Process Modeling (BPM) Mineure SOA. Business Process Modeling (BPM)

Qu est ce que le Cloud Computing?

Rapport de veille technologique

Architecture distribuée

État de l art sur la contractualisation et la composition

Aastra MD Evolution» Évoluer à vos côtés

ETUDE ET IMPLÉMENTATION D UNE CACHE L2 POUR MOBICENTS JSLEE

Séminaire Partenaires Esri France 6 et 7 juin 2012 Paris. ArcGIS et le Cloud. Gaëtan LAVENU

GLOSSAIRE. On premise (sur site)

Approche dirigée par les modèles pour la spécification, la vérification formelle et la mise en œuvre de services Web composés

NFP111 Systèmes et Applications Réparties

Conception des systèmes répartis

Cloud Computing : Généralités & Concepts de base

Louis Naugès Paris, 17 juin 2013 Louis Naugès - Chief Cloud Evangelist Revevol

réussir la transition vers le Cloud Computing: équilibre entre rentabilité, fonctionnalité et fiabilité

Bases de données et environnements distribués Chapitre I : Architecture logicielle technologies de developpement en environnement

Maîtrisez la modernisation de votre patrimoine applicatif

Chapitre 5 Vision Informatique Logique Architectures Applicative et Logicielle

e-business, EAI et Business Intelligence Le triptyque gagnant profondément les structures des organisations et par conséquence

impacts du Cloud sur les métiers IT: quelles mutations pour la DSI?

Oracle Fusion Middleware Concepts Guide 11g Release 1 (11.1.1) Figure 1-1 Architecture Middleware

THESE. DOCTORAT EN SCIENCES APPLIQUEES Spécialité : Informatique

Architectures informatiques dans les nuages

La gouvernance SOA Ses aspects théoriques et pratiques

Plan du cours. Autres modèles pour les applications réparties Introduction. Mode de travail. Introduction

Zimbra. S I A T. T é l : ( ) F a x : ( )

Mesure de la couverture en propre du réseau d un opérateur mobile

Urbanisme du Système d Information et EAI

IBM Business Process Manager

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information.

Business Process Modeling (BPM)

CloudBees AnyCloud : Valeur, Architecture et Technologie cloud pour l entreprise

CORBA haute performance

Systèmes de communications d entreprise Aastra

18 TCP Les protocoles de domaines d applications

Migration et import de données

La solution IdéoSanté une suite Web 2.0

Conception, architecture et urbanisation des systèmes d information

Dafoe Présentation de la plate-forme UIMA

Magister en Informatique

Rendez-vous la liberté avec Rational Quality Manager

Transcription:

Compatibility and replaceability analysis for timed web service protocols Boualem Benatallah 1 Fabio Casati 2 Julien Ponge 3,1 Farouk Toumani 3 1 Computer School of Engineering, The University of New South Wales, Sydney, Australia 2 Hewlett-Packard Laboratories, Palo Alto, California, USA 3 Laboratoire LIMOS, ISIMA, Clermont-Ferrand, France 21èmes journées Bases de Données Avancées Saint-Malo

Agenda 1 Introduction Les web services aujourd hui Vers des abstractions de plus haut-niveau Compatibilité, remplaçabilité 2 Timed business protocols Présentation Analyse Algorithmes 3 Conclusion et perspectives 2 / 38

Introduction Agenda 1 Introduction Les web services aujourd hui Vers des abstractions de plus haut-niveau Compatibilité, remplaçabilité 2 Timed business protocols Présentation Analyse Algorithmes 3 Conclusion et perspectives 3 / 38

Introduction Les web services aujourd hui Agenda 1 Introduction Les web services aujourd hui Vers des abstractions de plus haut-niveau Compatibilité, remplaçabilité 2 Timed business protocols Présentation Analyse Algorithmes 3 Conclusion et perspectives 4 / 38

Introduction Les web services aujourd hui Web services? Les web services sont la nouvelle vague des applications web. Ce sont des applications modulaires, auto-contenues et auto-descriptives qui peuvent être publiées, localisées et invoquées depuis le web. Tutoriel IBM DeveloperWorks Evolution middlewares classiques (MOM / RPC). Emplois de standards : XML, SOAP, HTTP(S), SMTP,... Services-Oriented Computing, couplage faible. 5 / 38

Introduction Les web services aujourd hui Web services? Les web services sont la nouvelle vague des applications web. Ce sont des applications modulaires, auto-contenues et auto-descriptives qui peuvent être publiées, localisées et invoquées depuis le web. Tutoriel IBM DeveloperWorks Evolution middlewares classiques (MOM / RPC). Emplois de standards : XML, SOAP, HTTP(S), SMTP,... Services-Oriented Computing, couplage faible. 5 / 38

Introduction Les web services aujourd hui Scénario usuel Annuaire 1 3 Internet Web service 2 WSDL SI, WS, Apps,... 6 / 38

Introduction Les web services aujourd hui Pour le développeur... SOAP / WSDL très bien acceptés, UDDI... moins. Services riches (ex : Amazon) : beaucoup d opérations. Difficultés pour comprendre le service. Standards bas-niveau, opérations manuelles. 7 / 38

Introduction Vers des abstractions de plus haut-niveau Agenda 1 Introduction Les web services aujourd hui Vers des abstractions de plus haut-niveau Compatibilité, remplaçabilité 2 Timed business protocols Présentation Analyse Algorithmes 3 Conclusion et perspectives 8 / 38

Introduction Vers des abstractions de plus haut-niveau (Une) Pile des web services Haut-niveau Bas-niveau WSCI, WSCL, BPEL4WS,..., Découverte WSDL SOAP HTTP(S), SMTP, IIOP,... XML S é c u r i t é Q o S M a n a g e m e n t Business issues = Prolifération des standards (WS-*), orientés principalement implémentation. 9 / 38

Introduction Vers des abstractions de plus haut-niveau (Une) Pile des web services Haut-niveau Bas-niveau WSCI, WSCL, BPEL4WS,..., Découverte WSDL SOAP HTTP(S), SMTP, IIOP,... XML S é c u r i t é Q o S M a n a g e m e n t Business issues = Prolifération des standards (WS-*), orientés principalement implémentation. 9 / 38

Introduction Vers des abstractions de plus haut-niveau ServiceMozaic Conception, développement et gestion de services. Ensemble d outils orientés-modèles. J2EE + Eclipse. 10 / 38

Introduction Vers des abstractions de plus haut-niveau ServiceMozaic 10 / 38

Introduction Vers des abstractions de plus haut-niveau Business protocols Représenter l ensemble des conversations (comportement externe). Permettre des analyses via une algèbre. Automate déterministe : états phases durant l interaction client transitions messages échangés (in / out +/ ). Instances multiples et concurrentes. 11 / 38

Introduction Vers des abstractions de plus haut-niveau Exemple Amazon AWS start cartrequestout keywordsearchrequest(+) shoppingcartresponse(-) searchin keywordsearchrequest(+) cartrequestin getshoppingcartrequest(+) keywordsearchresponse(-) modifyshoppingcartitemsrequest(+) removeshoppingcart ItemsRequest(+) searchout addshoppingcartitemsrequest(+) shopping removeshoppingcartitemsrequest(+) getshoppingcartrequest(+) modifyshoppingcart ItemsRequest(+) addshoppingcart ItemsRequest(+) 12 / 38

Introduction Vers des abstractions de plus haut-niveau Identifier / modéliser des abstractions Compromis expressivité / complexité. Travaux précédents sur des portails e-commerce. Modèle de base simple et intuitif. Extensions pour les abstractions, ici le temps. 13 / 38

Introduction Vers des abstractions de plus haut-niveau Intuition vis-à-vis du temps start cartrequestout keywordsearchrequest(+) shoppingcartresponse(-) searchin keywordsearchrequest(+) cartrequestin getshoppingcartrequest(+) keywordsearchresponse(-) modifyshoppingcartitemsrequest(+) removeshoppingcart ItemsRequest(+) searchout addshoppingcartitemsrequest(+) shopping removeshoppingcartitemsrequest(+) getshoppingcartrequest(+) modifyshoppingcart ItemsRequest(+) addshoppingcart ItemsRequest(+) 14 / 38

Introduction Vers des abstractions de plus haut-niveau Intuition vis-à-vis du temps start cartrequestout keywordsearchrequest(+) timeout, 10 minutes shoppingcartresponse(-) searchin keywordsearchrequest(+) cartrequestin getshoppingcartrequest(+) keywordsearchresponse(-) modifyshoppingcartitemsrequest(+) removeshoppingcart ItemsRequest(+) searchout addshoppingcartitemsrequest(+) shopping removeshoppingcartitemsrequest(+) getshoppingcartrequest(+) modifyshoppingcart ItemsRequest(+) addshoppingcart ItemsRequest(+) 14 / 38

Introduction Compatibilité, remplaçabilité Agenda 1 Introduction Les web services aujourd hui Vers des abstractions de plus haut-niveau Compatibilité, remplaçabilité 2 Timed business protocols Présentation Analyse Algorithmes 3 Conclusion et perspectives 15 / 38

Introduction Compatibilité, remplaçabilité Compatibilité P1 s0 a(+) s1 b(+) s2 P2 s0' a(-) s1' b(-) s2' 2 services peuvent converser 16 / 38

Introduction Compatibilité, remplaçabilité Remplaçabilité P1 s0 a(+) s1 b(+) s2 c(+) s2' P2 s0' a(+) s1' b(+) s3' 1 service peut en remplacer un autre 17 / 38

Introduction Compatibilité, remplaçabilité Approche pour l analyse Classes de compatibilité. Caractérisation à l aide d opérateurs de protocoles. Algorithmes ad-hoc pour les opérateurs. 18 / 38

Timed business protocols Agenda 1 Introduction Les web services aujourd hui Vers des abstractions de plus haut-niveau Compatibilité, remplaçabilité 2 Timed business protocols Présentation Analyse Algorithmes 3 Conclusion et perspectives 19 / 38

Timed business protocols Présentation Agenda 1 Introduction Les web services aujourd hui Vers des abstractions de plus haut-niveau Compatibilité, remplaçabilité 2 Timed business protocols Présentation Analyse Algorithmes 3 Conclusion et perspectives 20 / 38

Timed business protocols Présentation Extension du modèle de base s0 a(+) P Introduction de transitions implicites. Modélisation intervalles de validité / expirations. s1 i1: 60s s3 b(+) b(+) c(+) s2 s4 21 / 38

Timed business protocols Présentation Formalisation Web services business protocol P = (S, s 0, F, M, R) Timed web services business protocol : M = M e M i Pour R(s, s, m), m M i, définition de T ime(s, m) t Q 0. 22 / 38

Timed business protocols Présentation Formalisation Web services business protocol P = (S, s 0, F, M, R) Timed web services business protocol : M = M e M i Pour R(s, s, m), m M i, définition de T ime(s, m) t Q 0. 22 / 38

Timed business protocols Présentation Formalisation cont. Protocoles déterministes. Au plus 1 transition implicite par état. Pas de deadlocks. Hypothèses : transitions instantanées temps relatif / entrée dans un état s états atteignables pas de circuits implicites. 23 / 38

Timed business protocols Présentation Exemple : mauvais protocole s0 a(+) i2: 35s s1 i1: 60s s3 b(+) i3: 70s c(+) s2 s4 s5 24 / 38

Timed business protocols Présentation Sémantique 2 types de contraintes : conversations Linear time a(+) b( ) c(+) temporelles traces temporisées (a(+), 0) (b( ), 3) (c(+), 20) On s intéresse aux traces observables. 25 / 38

Timed business protocols Présentation Sémantique 2 types de contraintes : conversations Linear time a(+) b( ) c(+) temporelles traces temporisées (a(+), 0) (b( ), 3) (c(+), 20) On s intéresse aux traces observables. 25 / 38

Timed business protocols Analyse Agenda 1 Introduction Les web services aujourd hui Vers des abstractions de plus haut-niveau Compatibilité, remplaçabilité 2 Timed business protocols Présentation Analyse Algorithmes 3 Conclusion et perspectives 26 / 38

Timed business protocols Analyse Classes de compatibilité et remplaçabilité Compatibilité : totale et partielle. Remplaçabilité : équivalence, partielle et subsomption par rapport à un protocole client par rapport à un rôle d interaction originalité : flexibilité. 27 / 38

Timed business protocols Analyse Classes de compatibilité et remplaçabilité Compatibilité : totale et partielle. Remplaçabilité : équivalence, partielle et subsomption par rapport à un protocole client par rapport à un rôle d interaction originalité : flexibilité. 27 / 38

Timed business protocols Analyse Difficulté P1 start x(+) s0 b(-) s2 P 1 et P 2 sont compatibles! s3 c(+) a(+) s1 i: 540min s4 Transitions implicitement disponibles. P2 start x(-) s0' a(-) b(+) s3' i1: 240min s4' s2' i2: 300min s1' b(+) c(-) s5' i3: 240min b(+) s6' s8' s7' s 0, s 0 : (P 1 ) (P 2 ) 8 < : 8 < : a : [0min, 540min] b : [0min, 540min] c : [0min, 540min] a : [0min, 240min] b : [0min, 780min] c : [240min, 540min] 28 / 38

Timed business protocols Analyse Opérateurs Timed compatible composition : TC Timed intersection : TI Timed difference : TD Projection : [P 1 TC P 2 ] P1 29 / 38

Timed business protocols Analyse Exemple : différence temporisée P 1 i: 3min s0 a(-) s1 b(+) s2 c(+) s3 s4 P 2 s0 a(-) s1 b(+) s2 c(+) s3 P 3 s0 a(-) s1 b(+) s2 i: 3min s2 c(+) P 3 = P 2 TD P 1 s4 30 / 38

Timed business protocols Analyse Caractérisation Caractérisation des classes de compatibilité et remplaçabilité par les opérateurs. Ex : T Repl PC (P 1, P 2 ) P C TC (P 2 TD P 1 ) = 31 / 38

Timed business protocols Algorithmes Agenda 1 Introduction Les web services aujourd hui Vers des abstractions de plus haut-niveau Compatibilité, remplaçabilité 2 Timed business protocols Présentation Analyse Algorithmes 3 Conclusion et perspectives 32 / 38

Timed business protocols Algorithmes Résultats Algorithmes polynomiaux pour les opérateurs. Algorithme de fermeture de transitions implicite. Time-state space : disponibilités temporelles d une transition depuis un état. 33 / 38

Timed business protocols Algorithmes Expliciter par fermeture s0 a(+) P Depuis s 1 : s1 b(+) i1: 60s b(+) s3 c(+) b : ([0, + [, s 1 ) c : ([60, + [, s 1 ) s2 s4 34 / 38

Timed business protocols Algorithmes Expliciter par fermeture s0 a(+) P Depuis s 1 : s1 b(+) i1: 60s b(+) s3 c(+) b : ([0, + [, s 1 ) c : ([60, + [, s 1 ) s2 s4 34 / 38

Conclusion et perspectives Agenda 1 Introduction Les web services aujourd hui Vers des abstractions de plus haut-niveau Compatibilité, remplaçabilité 2 Timed business protocols Présentation Analyse Algorithmes 3 Conclusion et perspectives 35 / 38

Conclusion et perspectives Contribution Modèle temporisé pour le comportement externe de services. Analyse flexible de compatibilité et remplaçabilité. Opérateurs génériques + algorithmes. 36 / 38

Conclusion et perspectives Perspectives Limite : contraintes par rapport au dernier message. Lien avec les timed automata. Intégration dans ServiceMozaic. 37 / 38

Merci pour votre attention.