ECOLE DOCTORALE SCIENCES, TECHNOLOGIES ET SANTÉ THÈSE de DOCTORAT présentéepar Sylvain RAMPACEK pourl’obtentiondugradede Docteur de l’Université de Reims Champagne-Ardenne Spécialité : Informatique Sémantique, interactions et langages de description des services web complexes présentéeetsoutenuepubliquementle10novembre2006 Composition du jury : M.B.JeanFUGÈRE ProfesseurauCollègeMilitaireduCanada Examinateur M.SergeHADDAD Professeuràl’UniversitéParisDauphine,LAMSADE Directeur MmeHannaKLAUDEL Professeureàl’Universitéd’Evry,IBISC Rapporteur M.FabriceKORDON Professeuràl’UniversitéParis6,LIP6 Rapporteur M.MichaëlKRAJECKI Professeuràl’UniversitédeReims,CReSTIC Président M.PatriceMOREAUX Professeuràl’UniversitédeSavoie,LISTIC Directeur LABORATOIRE CRESTIC – DÉPARTEMENT SYSCOM «Ilexiste10typesdepersonnes: cellesquisaventcompterenbinaireetlesautres...» iv ThèsedeDoctorat–10novembre2006 SylvainRAMPACEK v Remerciements Jetiensàremercier,toutd’abord,mesdirecteursdethèse,SergeHaddadetPatriceMoreaux,pour l’encadrementdemontravailetleursapportstantauniveaudesconnaissancesqu’auniveauhumain, maiségalementpourleursencouragements,ainsiqueleursoutientoutaulongdelathèse. JeremercietoutparticulièrementMmeHannaKlaudeletM.FabriceKordond’avoiracceptéd’être rapporteursetainsid’avoiracceptédelireetdecommenterlemanuscrit;maiségalementM.Michaël Krajeckid’êtreprésidentdemonjury,etenfinM.B.JeanFugèred’êtreexaminateur. Un grand merci également aux collègues de bureau, Cyril, Thibault, Arnaud, Christophe et les membresdel’équipeLICAquisereconnaîtront,pourleuraccueiletlabonneambiance.Ainsiqu’un merci aux secrétaires du département pour leur disponibilité et leur aide dans les tâches adminis- tratives. Sans oublier également de remercier les membres et doctorants du LAMSADE qui m’ont toujoursaccueillichaleureusementlorsdemesjournéesdetravailsurParis. Je tiens à remercier tout particulièrement, mon frère Stéphane, ma mère et mon père pour leur soutiendanstouteslessituationstoutaulongdecetravail,etsansoublierLaëtitia,macopine,quiont tousdûmesupporterduranttouteslespériodesetétapesdecettethèse. Enfin,jeremercietouteslespersonnesquim’ontaidétoutaulongdelathèseetencouragéàaller danscettedirection,ainsiquemesamisdelonguedate:Pascal,AnneetGilles. SylvainRAMPACEK 10novembre2006–ThèsedeDoctorat vi ThèsedeDoctorat–10novembre2006 SylvainRAMPACEK TABLEDESMATIÈRES vii Table des matières Introduction 3 1. Internetetévolutiondesarchitecturesdessystèmesd’information . . . . . . . . . . 3 2. Lesservicesweb:uneétapeverslesarchitecturesorientéesservices . . . . . . . . . 4 3. Présentationetmotivationdutravaildethèse . . . . . . . . . . . . . . . . . . . . . . 5 4. Apportsdelathèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 5. Plandelathèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 I Étatdel’art 11 1 Historique 13 1.1 Démocratisationdel’Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 1.1.1 Parcd’ordinateurshétérogène . . . . . . . . . . . . . . . . . . . . . . . . . 13 1.1.2 Sous-utilisationdesressourcesetrépartitionsdescalculs . . . . . . . . . . . 14 1.2 ApparitiondeJava . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.2.1 Portabilitéetmulti-plateforme . . . . . . . . . . . . . . . . . . . . . . . . . 15 1.2.2 LamachinevirtuelleJava . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1.3 ApparitiondeXML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1.3.1 XML:undescendantdeSGML . . . . . . . . . . . . . . . . . . . . . . . . 17 1.3.2 Codagedesdonnéesetinteropérabilité. . . . . . . . . . . . . . . . . . . . . 17 1.3.3 UtilisationdesfichiersXML . . . . . . . . . . . . . . . . . . . . . . . . . . 17 1.4 Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2 Présentationdesservicesweb 19 2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.1.1 L’interopérabilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.1.2 Évolutiondel’architecturedeconceptiondu/deslogiciels . . . . . . . . . . 20 2.2 Del’architectureOrientéeObjetàl’architectureOrientéeService . . . . . . . . . . . 23 2.2.1 Acquisdel’objet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.2.2 Limitesdel’objet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.2.3 Architectureorientéeservices . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.3 Lesservicesweb:uneinstancedeSOA . . . . . . . . . . . . . . . . . . . . . . . . 25 2.3.1 ConcrétiserlesélémentsgénériquesduSOA . . . . . . . . . . . . . . . . . 25 2.3.2 Leslangagesetprotocolesutiliséesparlesservicesweb . . . . . . . . . . . 27 2.3.3 Langagesdeserviceswebcomplexes . . . . . . . . . . . . . . . . . . . . . 32 2.3.4 XLANG. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 2.3.5 BPEL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 SylvainRAMPACEK 10novembre2006–ThèsedeDoctorat viii TABLEDESMATIÈRES 2.4 Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 3 Sémantiquetemporisée 47 3.1 Systèmesdetransitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 3.1.1 Systèmesdetransitionsétiquetées(LTS). . . . . . . . . . . . . . . . . . . . 47 3.1.2 Systèmesdetransitionstemporisésàentréesetsorties(TIOTS) . . . . . . . 48 3.1.3 AutomatesTemporisés(AT) . . . . . . . . . . . . . . . . . . . . . . . . . . 50 3.2 Langagesformelsetméthodesdevérifications . . . . . . . . . . . . . . . . . . . . . 53 3.2.1 LOTOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 3.2.2 Algèbresdeprocessustemporisés . . . . . . . . . . . . . . . . . . . . . . . 55 3.2.3 Méthodesdetest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 3.2.4 Méthodesdevérifications . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 3.2.5 Outilsdevérification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 3.3 Laformalisationdesservicesweb . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 3.3.1 Utilisationdessystèmesdetransitions . . . . . . . . . . . . . . . . . . . . . 65 3.3.2 Utilisationdesalgèbresdeprocessus . . . . . . . . . . . . . . . . . . . . . . 66 3.3.3 Utilisationd’uneapprocheparcontratouinterface . . . . . . . . . . . . . . 68 3.3.4 Utilisationdesontologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 3.4 Relationavecletravaildethèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 II Résultatsthéoriquesetmiseenœuvre 71 4 Sémantiqueentempsdiscret 73 4.1 Approcheformelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 4.1.1 Discrétisationdutemps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 4.1.2 AlgèbresdeprocessustemporisésdeSifakis. . . . . . . . . . . . . . . . . . 74 4.1.3 Systèmedetransitions:TIOTS . . . . . . . . . . . . . . . . . . . . . . . . 74 4.2 Lesactionsd’unserviceweb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 4.2.1 Lesdifférentesactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 4.2.2 Modélisationducomportementinobservable . . . . . . . . . . . . . . . . . 75 4.2.3 Écoulementdutempsetlesdifférentesactions . . . . . . . . . . . . . . . . 76 4.2.4 Détectiondelaterminaison . . . . . . . . . . . . . . . . . . . . . . . . . . 76 4.3 Sémantiquedesopérations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 4.3.1 Lesrèglespourlesélémentsdebase . . . . . . . . . . . . . . . . . . . . . . 77 4.3.2 Lesrèglespourlesélémentsbaséssurlesmessages . . . . . . . . . . . . . . 78 4.3.3 Lesrèglespourlesélémentsdecontrôlestructuré . . . . . . . . . . . . . . . 78 4.3.4 Lesrèglespourlesélémentsdecontrôleévolué . . . . . . . . . . . . . . . . 80 4.3.5 GénérationduTIOTS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 4.4 Relationd’interactionetsynthèsedeclient . . . . . . . . . . . . . . . . . . . . . . . 83 4.4.1 Relationd’interaction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 4.4.2 Ambiguïté . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 4.4.3 Algorithmedesynthèseduclient . . . . . . . . . . . . . . . . . . . . . . . . 88 4.5 Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 ThèsedeDoctorat–10novembre2006 SylvainRAMPACEK TABLEDESMATIÈRES ix 5 Verslavérificationd’unechorégraphie 93 5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 5.1.1 Principedelavérification . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 5.1.2 Exempled’application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 5.2 Présentationdel’environnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 5.2.1 Actionsetprocessusd’unservicewebBPEL . . . . . . . . . . . . . . . . . 94 5.2.2 Définitiond’unpartenaire . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 5.2.3 Définitiond’unechorégraphie(utilisantlespartenaires) . . . . . . . . . . . . 96 5.2.4 Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 5.3 Sémantiqueopérationnelleetrelationd’interaction . . . . . . . . . . . . . . . . . . 100 5.3.1 ModélisationduprocessusBPELinvoke . . . . . . . . . . . . . . . . . . . 100 5.3.2 L’algorithmedecompatibilitédedeuxTIOTS . . . . . . . . . . . . . . . . . 101 5.4 Vérificationd’unechorégraphie . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 5.4.1 Partenaires,interactionsetvérificationd’unechorégraphie . . . . . . . . . . 103 5.4.2 Compositionouagrégationdedeuxpartenaires . . . . . . . . . . . . . . . . 103 5.4.3 Vérificationetdétectiond’ambiguïtéd’unechorégraphie . . . . . . . . . . . 105 5.5 Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 6 Sémantiqueentempsdense 109 6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 6.1.1 Limitationsdutempsdiscret . . . . . . . . . . . . . . . . . . . . . . . . . . 109 6.1.2 Modélisationdesmodèlesasynchrones . . . . . . . . . . . . . . . . . . . . 110 6.1.3 Adaptationdenotresémantiquetempsdiscretaumodèletempsdense . . . . 110 6.2 Lesactionsd’unserviceweb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 6.2.1 Lesdifférentesactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 6.2.2 Lesgardesd’horloges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 6.3 Sémantiquedesopérations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 6.3.1 Lesrèglespourlesélémentsdebase . . . . . . . . . . . . . . . . . . . . . . 112 6.3.2 Lesrèglespourlesélémentsbaséssurlesmessages . . . . . . . . . . . . . . 113 6.3.3 Lesrèglespourlesélémentsdecontrôlestructuré . . . . . . . . . . . . . . . 113 6.3.4 Lesrèglespourlesélémentsdecontrôleévolué . . . . . . . . . . . . . . . . 114 6.3.5 Générationdel’automatetemporiséduservice . . . . . . . . . . . . . . . . 116 6.4 Relationd’interactionetsynthèsedeclient . . . . . . . . . . . . . . . . . . . . . . . 118 6.4.1 Relationd’interaction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 6.4.2 Algorithmedesynthèse. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 6.4.3 Ambiguïtéetambiguïtétemporelle . . . . . . . . . . . . . . . . . . . . . . 122 6.4.4 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 6.5 Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 7 Implémentationetmiseenœuvre 129 7.1 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 7.1.1 Plateformedeservicesweb . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 7.1.2 Plateformesd’exécutioncôtéserveur . . . . . . . . . . . . . . . . . . . . . 132 7.2 L’outilWSMod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 7.2.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 7.2.2 Fichierderègles(applicationdenotresémantique,généricité) . . . . . . . . 136 7.2.3 Générationdusystèmedetransitionsdelapartieservice . . . . . . . . . . . 137 SylvainRAMPACEK 10novembre2006–ThèsedeDoctorat x TABLEDESMATIÈRES 7.2.4 Générationdusystèmedetransitionsclient . . . . . . . . . . . . . . . . . . 141 7.2.5 Utilisationdel’outil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 7.3 L’outilExecClient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 7.3.1 InteractionavecWSMod . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 7.3.2 Exécutionguidéeparl’automateduclient . . . . . . . . . . . . . . . . . . . 143 7.3.3 Invocationdesservices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 7.4 Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 ConclusionsetPerspectives 147 Bibliographie 153 Annexes 161 A Fichiersderègles 161 A.1 Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 A.2 Versiontempsdiscret . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 A.3 Versiontempsdense . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 B ExemplesdeservicewebBPEL 171 B.1 ServicewebloanApproval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 B.1.1 Descriptiondel’exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 B.1.2 FichierdedescriptionBPELdel’exemple . . . . . . . . . . . . . . . . . . . 171 B.1.3 Approchetempsdiscret. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 B.1.4 Approchetempsdense . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 B.2 Exempled’utilisationdelahiérarchied’horloges . . . . . . . . . . . . . . . . . . . 177 Index 181 ThèsedeDoctorat–10novembre2006 SylvainRAMPACEK
Description: