patrons transactionnels : nouveau paradigme pour des exécutions fiables de services web composés
DESCRIPTION
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 - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/1.jpg)
Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables
de Services Web Composés
Composition du jury : Noëlle CarbonellDidier GalmicheOlivier Festor Dominique Méry
Encadrant : Claude Godart
Laboratoire Lorrain de Recherche en Informatique et ses Applications
Présenté le 22 juin 2005 par
Khaled Gaaloul
EnvironmentsCOOperation Université Nancy II
![Page 2: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/2.jpg)
Plan
1
I. Contexte et Problématique
II. État de l’art
III. Patrons transactionnels
IV. Conclusion et Perspectives
![Page 3: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/3.jpg)
I. Contexte et Problématique
![Page 4: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/4.jpg)
2
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.
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
![Page 5: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/5.jpg)
Contexte : Intégration des application B2B (2)
Spécification des Besoins
du Client (SBC)
Réservation de l’Hôtel (RH)
AND
Agence Tour opérateur Banque
EntrepriseFedex
EntrepriseDHL
Contexte et Problématiq
ueÉtat de l’art
Vue globale de l’approche
Patrons transactionnels
Conclusion et Perspectives
Organisation de voyage en ligne
Niveau communication
Niveau contenu
Niveau procédé
3
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
Envoie de documents
par Fedex (EDF)
Paiement en Ligne (PL)
Réservation de l’avion (RA)
Envoie de documents
par DHL (EDD)
XOR
AND
![Page 6: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/6.jpg)
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
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
4
![Page 7: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/7.jpg)
Problématique : comment assurer des exécutions fiables de services Web composés? (1)
Concepteurs
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
5
SBC
RH
AND
EDF
PL
RA EDD
XOR
AND
Problème de composition
Manque de fiabilité
Échec
Activé
![Page 8: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/8.jpg)
• 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é
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
6
![Page 9: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/9.jpg)
État de l’art
![Page 10: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/10.jpg)
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
7
Modèles de Transactions Avancés (MTA):
assouplir l’atomicité,
assurer et contrôler le parallélisme interne à chaque
transactionÉtendre les
structures platesÉtendre les
structures plates
Transaction emboîtés
MTA
Workflows
Services Web
Relâcher l’isolationRelâcher l’isolation
SAGA
Nouvelles sémantiques
transactionnelles
Nouvelles sémantiques
transactionnelles
Transactions flexibles
Structures simples et limitéesContraintes imposées aux concepteurs
![Page 11: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/11.jpg)
• 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
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
8
MTA
Workflows
Services Web
![Page 12: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/12.jpg)
• 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
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
9
MTA
Workflows
Services Web
![Page 13: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/13.jpg)
Vue globale de l’approche
![Page 14: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/14.jpg)
Concepteurs
Modéliser
SBC
RA
RH
AND
AND
Modèle pour une composition fiable de SWC
Principes directeurs : 1. Définir le flot de contrôle2. Définir les mécanismes de gestion
d’échecs et de recouvrement3. Assurer la cohérence de ses
spécifications
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
10
Applications avancées
![Page 15: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/15.jpg)
Notre approche
![Page 16: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/16.jpg)
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
11
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
![Page 17: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/17.jpg)
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
12
• 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
initial
échouéannuléabandonné
terminéactivé
Service Web rejouable
Abandonner() Annuler()
Activer() Terminer()
Échouer() Rejouer()
![Page 18: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/18.jpg)
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
13
• 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
SBC
RH
AND
EDF
PL
RA EDD
XOR
AND
Activer EDD siEDF échoue
Annuler / compenserRA si RH échoue
Cond(PL.activer())=RH.terminé RA.terminé
Dépendance d’activation
Un SCT est défini par son flot de contrôle et son flot transactionnel
![Page 19: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/19.jpg)
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
14
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
![Page 20: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/20.jpg)
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
15
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.
Spécification des Besoins
du Client
Réservation deL’Avion
Réservation de l’Hôtel
AND
And-split (SBC,RH,RA)
Spécification des Besoins
du Client
Réservation deL’Avion
Réservation de l’Hôtel
AND
PotentielleAnd-split (SBC,RH,RA)
![Page 21: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/21.jpg)
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
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
![Page 22: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/22.jpg)
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
17
Spécification des Besoins
du Client
Réservation deL’Avion
Réservation de l’Hôtel
AND
PotentielAnd-split (SBC,RH,RA)
Spécification des Besoins
du Client
Réservation deL’Avion
Réservation de l’Hôtel
AND
RaffinementAnd-split (SBC,RH,RA)
Inclus dans
1ère étape : Raffinement d’un Patron Transactionnel (PT)
![Page 23: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/23.jpg)
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
18
2ème étape : Définition de Connecteur Transactionnel (CT) Un CT est défini par l’union du patron de composition
et de la fonction de raffinement
SBC
RH
AND
EDF
PL
RA EDD
XOR
AND
Flot de contrôle a bCompense b quand a échoue ou sera compensé
Annule ou compense b en cas d’échec de a
a b b alternative quand a échouea b
(a) CTAnd-split (SBC,RH,RA)
(b) CTAnd-join (RH,RA,PL)
(c) CTXor-split (PL,EDF,EDD)
Compositions de CT pour le SCT d’organisation de voyage en ligne
![Page 24: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/24.jpg)
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
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
![Page 25: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/25.jpg)
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
19
Incohérence du flot de contrôle Grammaire
![Page 26: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/26.jpg)
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
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
20
![Page 27: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/27.jpg)
SBC
RH
AND
EDF
PL
RA EDD
XOR
AND
Flot de contrôle a bCompense b quand a échoue ou sera compensé
Annule ou compense b en cas d’échec de a
a b b alternative quand a échouea b
(a) CTAnd-split (SBC,RH,RA)
(b) CTAnd-join (RH,RA,PL)
(c) CTXor-split (PL,EDF,EDD)
rcp
cp
rr
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
21
Amélioration du SWC de l’organisation de voyages en ligne (1)
![Page 28: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/28.jpg)
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
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
22
![Page 29: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/29.jpg)
SBC
RH
AND
EDF
PL
RA EDD
XOR
AND
Flot de contrôle a bCompense b quand a échoue ou sera compensé
Annule ou compense b en cas d’échec de a
a b b alternative quand a échouea b
(a) CTAnd-split (SBC,RH,RA)
(b) CTAnd-join (RH,RA,PL)
(c) CTXor-split (PL,EDF,EDD)
rcp
cp
rr
cp
R2
R2
R1SBC
RH
AND
EDF
PL
RA EDD
XOR
AND
Flot de contrôle a bCompense b quand a échoue ou sera compensé
Annule ou compense b en cas d’échec de a
a b b alternative quand a échouea b
(a) CTAnd-split (SBC,RH,RA)
(b) CTAnd-join (RH,RA,PL)
(c) CTXor-split (PL,EDF,EDD)
rcp
cp
rr
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
22
Amélioration du SWC de l’organisation de voyages en ligne (2)
![Page 30: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/30.jpg)
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
23
• Synthèse de l’approche :
Concepteurs
Patrons transactionnels
Patrons transactionnels
Exécutions fiables de SWC
SWC
Applications avancéesà modéliser
modéliser donnerutiliser
![Page 31: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/31.jpg)
Conclusion et Perspectives
![Page 32: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/32.jpg)
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.
Contexte et Problématique
État de l’artVue globale de
l’approcheNotre approche
Conclusion et Perspectives
24
![Page 33: Patrons Transactionnels : Nouveau Paradigme pour des Exécutions Fiables de Services Web Composés](https://reader034.vdocuments.net/reader034/viewer/2022051401/56814f89550346895dbd44c1/html5/thumbnails/33.jpg)
Merci de votre attention !