1 / 33

Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés

E nvironments COO peration. Université Nancy II. Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés. Présenté le 22 juin 2005 par Khaled Gaaloul. Composition du jury : Noëlle Carbonell Didier Galmiche Olivier Festor Dominique Méry

jackie
Télécharger la présentation

Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Environments COOperation Université Nancy II Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés Présenté le 22 juin 2005 parKhaled Gaaloul Composition du jury : Noëlle Carbonell Didier Galmiche Olivier Festor Dominique Méry Encadrant : Claude Godart Laboratoire Lorrain de Recherche en Informatique et ses Applications

  2. Plan • Contexte et Problématique • État de l’art • Patrons transactionnels • Conclusion et Perspectives 1

  3. I. Contexte et Problématique

  4. Contexte : les applications Business-to-Business (B2B) (1) • Les entreprise expriment de plus en plus leurs relations commerciales via le Web. • Coopération inter entreprises et automatisation des procédés. • La nécessité de mécanismes supportant l’interconnexion et la coopération des applications B2B. 2

  5. Entreprise DHL Agence Tour opérateur Entreprise Fedex Envoie de documents par Fedex (EDF) • Contexte : Intégration des application B2B (2) Réservation de l’Hôtel (RH) Banque A N D Paiement en Ligne (PL) Spécification des Besoins du Client (SBC) A N D X O R Envoie de documents par DHL (EDD) Réservation de l’avion (RA) Niveau communication Niveau contenu Niveau procédé Organisation de voyage en ligne 3

  6. A2A Vs l’approche <<services Web>> pour les B2B • A2A (Application-to-Application) : aspect statique, • Fortement couplées • Gestion centralisée • Approche<<services Web>> : technologies plus adaptées pour les B2B • Standardisation • Architecture orientée service • Environnement d’égal à égal 4

  7. Problème de composition Manque de fiabilité Concepteurs RH EDF A N D PL SBC A N D X O R Activé RA EDD Échec • Problématique : comment assurer des exécutions fiables de services Web composés? (1) 5

  8. Problématique : limites des approches actuelles(2) • Les Modèles de Transactions Avancés (MTA) • Fiabilité (mécanismes de recouvrement et de gestion d’échecs) • Structures simples (interactions limitées) • Les systèmes de workflow • Flexibilité (modélisation de structures complexes) • Manque de fiabilité 6

  9. État de l’art

  10. Étendre les structures plates Relâcher l’isolation Nouvelles sémantiques transactionnelles • Structures simples et limitées • Contraintes imposées aux concepteurs Transaction emboîtés SAGA Transactions flexibles MTA Workflows Services Web • Modèles de Transactions Avancés (MTA): • assouplir l’atomicité, • assurer et contrôler le parallélisme interne à chaque transaction 7

  11. MTA Workflows Services Web • Les systèmes workflows • Optimiser et automatiser les procédés d’entreprises. • Les patrons de workflow • Représentation intuitives • Masquer complexité • Les workflows transactionnels : plus de sémantique transactionnelle • Manque de fiabilité et de correction • S’intéresse aux aspects de coordination • Ignore l’aspect transactionnel 8

  12. MTA Workflows Services Web • Approche <<services Web>> • Repose sur les technologies MTA et workflow • Basée sur des standards assurant l’ubiquité et l’interopérabilité (XML, Web). • Architectures avancées • Chorégraphie et coordination • Composition et orchestration 9

  13. Vue globale de l’approche

  14. Applications avancées Modéliser • Principes directeurs : • Définir le flot de contrôle • Définir les mécanismes de gestion d’échecs et de recouvrement • Assurer la cohérence de ses spécifications Concepteurs RH SBC A N D A N D RA Modèle pour une composition fiable de SWC 10

  15. Notre approche

  16. Démarche à suivre : • Service Web Composé Transactionnel (SCT) • Patron transactionnel • Composition de patrons transactionnels pour un SCT • Règles de cohérence pour des compositions fiables d’un SCT 11

  17. Terminer() Activer() activé terminé initial Abandonner() Annuler() Échouer() Rejouer() abandonné annulé échoué Service Web rejouable • Services Web Transactionnels (SWT) • Description du comportement transactionnel • Propriétés transactionnelles (rejouable, compensable, pivot) • Rejouable : sûre de se terminer avec succès après un nombre fini d’activations • Compensable : politique de compensation pour annuler automatiquement son travail • Pivot: : une fois terminé avec succès son effet reste à jamais et ne peut pas être défait • Diagrammes à transitions d’états d’un SWT 12

  18. Un SCT est défini par son flot de contrôle et son flot transactionnel RH EDF Annuler / compenser RA si RH échoue A N D PL SBC A N D X O R Activer EDD si EDF échoue RA EDD • Service web Composé Transactionnel (SCT) • Définir la composition pour un Service Web Composé (SWC) • Exploiter les propriétés transactionnelles des composants du service • Spécification de preconditions pour l’orchestration de services composants • Dépendances entre les services composants du SWC Dépendance d’activation Cond(PL.activer())=RH.terminé  RA.terminé 13

  19. Démarche à suivre : • Service Web Composé Transactionnel (SCT) • Patron transactionnel • Composition de patrons transactionnels pour un SCT • Règles de cohérence pour des compositions fiables d’un SCT 14

  20. Réservation de l’Hôtel Réservation de l’Hôtel Spécification des Besoins du Client Spécification des Besoins du Client A N D A N D Réservation de L’Avion Réservation de L’Avion And-split (SBC,RH,RA) PotentielleAnd-split (SBC,RH,RA) Un Patron Transactionnel (PT) est défini par son patron de composition et son flot transactionnel potentiel • Patron de composition • -défini un flot de contrôle à partir d’un ensemble de service; • -utilise les patrons de workflow [Van der Alst] pour définir le flot de contrôle. • Flot transactionnel potentiel • -cadre implicitement l’ensemble des dépendances transactionnelles; • -dépend des dépendances d ’activation et donc du flot de contrôle. 15

  21. Démarche à suivre : • Service Web Composé Transactionnel (SCT) • Patron transactionnel • Composition de patrons transactionnels pour un SCT • Règles de cohérence pour des compositions fiables d’un SCT 16

  22. Réservation de l’Hôtel Réservation de l’Hôtel Inclus dans Spécification des Besoins du Client Spécification des Besoins du Client A N D A N D Réservation de L’Avion Réservation de L’Avion PotentielAnd-split (SBC,RH,RA) RaffinementAnd-split (SBC,RH,RA) 1ère étape : Raffinement d’un Patron Transactionnel (PT) 17

  23. Un CT est défini par l’union du patron de composition et de la fonction de raffinement RH EDF (c) CTXor-split (PL,EDF,EDD) (a) CTAnd-split (SBC,RH,RA) A N D PL SBC A N D X O R (b) CTAnd-join (RH,RA,PL) b Flot de contrôle a Compense b quand a échoue ou sera compensé RA EDD Annule ou compense b en cas d’échec de a b alternative quand a échoue a b a b Compositions de CT pour le SCT d’organisation de voyage en ligne 2ème étape : Définition de Connecteur Transactionnel (CT) 18

  24. Démarche à suivre : • Service Web Composé Transactionnel (SCT) • Patron transactionnel • Composition de patrons transactionnels pour un SCT • Règles de cohérence pour des compositions fiables d’un SCT 19

  25. Grammaire Incohérence du flot de contrôle 19

  26. Incohérence du flot transactionnel Règles de cohérence transactionnelle • Règles d'extraction de propriétés transactionnelles: • Chaque service est par défaut re-jouable et pivot. • Chaque service cible d'une dépendance de • compensation est compensable. • Chaque service source d'une dépendance • d'annulation ou d'alternative n'est pas re-jouable. Conditions de cohérences transactionnelles: 1. C1 : échec  alternative 2. C2 : échec  compensation 3. C3 : échec  annulation 20

  27. cp cp r r RH EDF r A N D PL SBC A N D X O R RA EDD Amélioration du SWC de l’organisation de voyages en ligne (1) (c) CTXor-split (PL,EDF,EDD) (a) CTAnd-split (SBC,RH,RA) (b) CTAnd-join (RH,RA,PL) b Flot de contrôle a Compense b quand a échoue ou sera compensé Annule ou compense b en cas d’échec de a b alternative quand a échoue a b a b 21

  28. Incohérence du flot transactionnel Règles de cohérence transactionnelle • Règles d'extraction de propriétés transactionnelles: • Chaque service est par défaut re-jouable et pivot. • Chaque service cible d'une dépendance de • compensation est compensable. • Chaque service source d'une dépendance • d'annulation ou d'alternative n'est pas re-jouable. Conditions de cohérences transactionnelles: 1. C1 : échec  alternative 2. C2 : échec  compensation 3. C3 : échec  annulation 22

  29. cp R2 cp r R1 r cp RH RH EDF EDF r R2 A N D A N D PL PL SBC SBC A N D A N D X O R X O R RA RA EDD EDD Amélioration du SWC de l’organisation de voyages en ligne (2) cp cp r r r (c) CTXor-split (PL,EDF,EDD) (c) CTXor-split (PL,EDF,EDD) (a) CTAnd-split (SBC,RH,RA) (a) CTAnd-split (SBC,RH,RA) (b) CTAnd-join (RH,RA,PL) (b) CTAnd-join (RH,RA,PL) b b Flot de contrôle Flot de contrôle a a Compense b quand a échoue ou sera compensé Compense b quand a échoue ou sera compensé Annule ou compense b en cas d’échec de a Annule ou compense b en cas d’échec de a b alternative quand a échoue b alternative quand a échoue a a b b a a b b 22

  30. SWC modéliser utiliser donner Concepteurs Exécutions fiables de SWC Applications avancées à modéliser • Synthèse de l’approche : Patrons transactionnels 23

  31. Conclusion et Perspectives

  32. Conclusion : • Proposer aux concepteurs un modèle fiable et flexible. • Combinaison de deux concepts forts (MTA et workflows). • Haut niveau d’abstraction et de simplicité. • Perspectives : • Possibilité de contributions aux travaux de services Web sémantiques. • Implémentation de notre approche. • Expérimentation sur des applications de e-commerce. 24

  33. Merci de votre attention !

More Related