Vers l’adaptabilité dynamique des architectures orientées services
Institution:
Paris 9Disciplines:
Directors:
Abstract EN:
Service Oriented Architectures (SOA) aim to give methodological and technical answers to achieve interoperabilty and loose coupling between heterogeneous Information Systems (IS). Currently, Web Services (WS) are the fitted technical solution to implement such architectures. However, both Web Services providers and clients are faced to some important difficulties to dynamically change their behaviours. From one side, Web Services providers have no mean to dynamically adapt an existing Web Service to business requirements changes. From the other side, Web Services clients have no way to dynamically adapt themselves to the service changing in order to avoid execution failures. In this thesis, we show how to achieve a dynamic adaptable SOA by using the Aspect Oriented Programming (AOP) paradigm and process algebra. We propose to use AOP to dynamically modify elementary Web services. After that, we extend the approach to modify BPEL processes. Then, we define a process algebra formalism to specify a change-prone BPEL process and demonstrate how to generate a client which dynamically adapt its behaviour to the service changes. Finally, We present the Aspect Service Weaver and the dynamic client Interpreter prototypes which implement our approach.
Abstract FR:
Les architectures orientées services (SOA) visent à fournir des réponses méthodologiques et techniques pour garantir l’interopérabilité et le couplage faible entre les système d’information (SI). Actuellement, les services Web représentent la solution technique adéquate pour implémenter ces architectures. Cependant, les fournisseurs et les clients des services Web rencontrent des difficultés pour changer dynamiquement leurs comportements. D’un coté, les fournisseurs de services n’ont pas le moyen de changer dynamiquement un service Web déployé, afin de l’adapter au changement des besoins métier. D’un autre coté, les clients du service n’ont pas le moyen de s’adapter au changement du service afin d’éviter des erreurs d’exécution. Dans cette thèse, nous montrons comment réaliser une SOA dynamiquement adaptable, en utilisant la programmation orientée aspect (POA) et les algèbres de processus. Nous proposons d’utiliser la POA pour modifier dynamiquement des services Web élémentaires. Puis, nous étendons cette approche afin de modifier des processus BPEL. Ensuite, nous définissons un formalisme, basé sur celui des algèbres de processus, afin de spécifier des processus BPEL adaptables et nous montrons comment utiliser ce formalisme afin de générer un client qui s’adapte dynamiquement au changement du service. Finalement, nous présentons deux prototypes, le tisseur des aspects services et l’interpréteur dynamique du client, qui implémentent notre approche