Thèse soutenue

FR
Auteur / Autrice : Luis Daniel Benavides Navarro
Direction : Pierre Cointe
Type : Thèse de doctorat
Discipline(s) : Informatique et applications
Date : Soutenance en 2009
Etablissement(s) : Nantes
Partenaire(s) de recherche : Autre partenaire : Université de Nantes. Faculté des sciences et des techniques

Mots clés

FR

Mots clés contrôlés

Résumé

FR  |  
EN

Cette thèse montre que les abstractions fournies pour les langages à objets ne sont pas suffisantes pour répondre aux problèmes de modularisation des algorithmes, protocoles et architectures pour la distribution et la concurrence. Ainsi, le code dédié à la concurrence et à la distribution se trouve souvent dispersé et entrelacé dans l’implémentation des logiciels distribués. De plus, nous montrons que ce code est résistant à la modularisation et que même après plusieurs cycles de réingénierie, en utilisant la programmation par objets, la modularisation du code pour la distribution et la concurrence ne s’améliore pas. À partir de ces résultats, nous proposons un nouveau langage pour la programmation par aspects avec des abstractions explicites pour la distribution et la concurrence (AWED). Le langage propose un modèle pour les aspects distribués et les coupes distantes, en étendant des travaux sur les aspects séquentiels (non distribués) avec des mécanismes de langage pour la détection de séquences des événements distribués. Le langage propose également un support avancé pour la manipulation de groupes des hôtes, l’exécution distante d’actions, et l’ordonnancement déterministe des messages distribués. Plusieurs expériences ont permis de valider notre travail dans différents domaines : la refactorisation et l’évolution d’un intergiciel distribué, le développement de systèmes de péage automatique, et le débogage et les tests des applications distribuées. Finalement, à l’aide de ce modèle général pour la distribution, nous proposons deux contributions supplémentaires. Tout d’abord, nous présentons les patrons invasifs : une extension des patrons de communication traditionnels pour les applications réparties. Les patrons invasifs présentent un langage d’aspects permettant d’exprimer des protocoles distribués sur différentes topologies et avec différentes stratégies de coordination. Ensuite, nous ajoutons à notre modèle la manipulation déterministe de messages distribués en utilisant les relations de causalité entre messages