ArchiMed : un canevas pour la détection et la résolution des incompatibilités des conversations entre services web - TEL - Thèses en ligne Accéder directement au contenu
Thèse Année : 2008

ArchiMed: a framework for the detection and the resolution of incompatibilities in Web service conversations

ArchiMed : un canevas pour la détection et la résolution des incompatibilités des conversations entre services web

Résumé

As Web service interactions rely on message exchanges, modelling Web service aims at describing messages as well from the structural point of view (types of exchanged messages) as from the behavioural point of view (control flow between message exchanges). With this setting, a Web service's interface is defined as the set of messages it can receive and send, and the inter-dependencies between these messages. We distinguish the provided interface an existing service exposes, from its required interface as it is expected by its clients (i.e. applications). When a Web service evolves, its interface is more likely to be modified too. This leads to the situation where the provided interface of a service does not correspond any more to the one its partners expect. In this thesis, we introduce our techniques for the detection and the resolution of incompatibilities. Our contribution is the framework, namely ArchiMed.
We analyse successive versions of a service interface in order to detect changes that cause clients using any of the earlier versions not to interact properly with a later version. We focus on behavioural incompatibilities and adopt the notion of simulation as a basis for determining if a new version of a service is behaviourally compatible with a previous one. Unlike prior work, our technique does not simply check if the new version of the service simulates the previous one. Instead, having identified one source of incompatibility, the technique goes on to identify other incompatibilities, thus providing more detailed diagnostics. The technique has been implemented in a framework that visually pinpoints a set of changes that cause one behavioural interface not to simulate another one.
The framework, has been tested on a collection of interfaces corresponding to standard business-to-business choreographies. To resolve these incompatibilities, two solutions thus apply: (1) modify the service in order to make the interface it provides match the interface required by each client; (2) introduce an adapter that reconciles the provided interface with those required by the partners. The former solution is not satisfying because the same service may interact with many other partners which consider its original interface. The same service has to expose as many provided interfaces as collaborations it is involved in. The latter solution consists in supplying a mediator which is capable of matchmaking each of the required interfaces with the provided interface. The selection of the suitable mediator is based on the similarity measure between the provided interface an the required interface by the client.
La technologie des services web est aujourd'hui largement utilisée comme support de l'interopérabilité entre les applications. Dans ce cadre, les interactions entre deux applications encapsulées par des services web sont réalisées par le biais d'un ensemble d'échanges de messages appelé conversation. Une conversation peut échouer parce que l'interface fournie d'un participant a été modifiée et n'est plus compatible avec celle requise par l'autre participant. L'étude rapportée dans cette thèse porte sur la réconciliation de telles conversations. La solution proposée est le canevas ArchiMed.
Dans un premier temps, une modélisation des interfaces comportementales par des automates est adoptée. Dans cette modélisation, seul le comportement externe (comportement observable) est considéré. En d'autres termes, il n'y a que les opérations d'envoi et de réception de messages qui sont décrites dans les interfaces. Une fois les interfaces comportementales décrites en automates, une étape de détection des incompatibilités entre les différentes définitions de l'interface d'un service est réalisée. La détection des incompatibilités est automatique et portent sur des changements élémentaires dans les interfaces qui sont : l'ajout, la suppression et la modification d'opérations. Une visualisation des incompatibilités entre les interfaces est rendue disponible.
Le canevas maintient les descriptions des versions successives de l'interface du service ainsi que l'ensemble minimal de médiateurs pour que les clients puissent interagir avec le service au travers de l'une de ses versions. A l'initiation d'une conversation par un client, si nécessaire, le canevas sélectionne parmi les médiateurs disponibles celui qui résoud les incompatibilités entre le client et le service. La sélection du médiateur est basée sur une mesure de similarité entre les interfaces afin de découvrir la description de l'interface fournie qui est conforme avec l'interface requise du client. La validation expérimentale du canevas, a été effectuée par le traitement d'une collection de tests qui contient les descriptions des interfaces comportementales des services. Une étude quantitative et comparative à des travaux similiaires est réalisée et montre l'apport significatif de notre proposition.
Fichier principal
Vignette du fichier
these_ait-bachir2008.pdf (2.03 Mo) Télécharger le fichier
expose_ws.pdf (1.47 Mo) Télécharger le fichier
Format : Autre

Dates et versions

tel-00351255 , version 1 (08-01-2009)

Identifiants

  • HAL Id : tel-00351255 , version 1

Citer

Ali Aït-Bachir. ArchiMed : un canevas pour la détection et la résolution des incompatibilités des conversations entre services web. Informatique [cs]. Université Joseph-Fourier - Grenoble I, 2008. Français. ⟨NNT : ⟩. ⟨tel-00351255⟩
212 Consultations
205 Téléchargements

Partager

Gmail Facebook X LinkedIn More