Les aspects distribués : pour une meilleure séparation des préoccupations transverses dans les logiciels distribués

par Luis Daniel Benavides Navarro

Thèse de doctorat en Informatique et applications

Sous la direction de Pierre Cointe.

Soutenue en 2009

à Nantes .


  • Résumé

    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

  • Titre traduit

    Distributed aspects : better separation of crosscutting concerns in distributed software systems


  • Pas de résumé disponible.


  • Résumé

    This thesis shows that abstractions provided by current mainstream Object Oriented (OO) languages are not enough to address the modularization of distributed and concurrent algorithms, protocols, or architectures. In particular, we show that code implementing concurrent and distributed algorithms is scattered and tangled in the main implementation of JBoss Cache, a real industrial middleware application. Additionally, we show that such code is resilient to modularization. Thus, we show that several cycles of re-engineering using the same set of OO abstractions do not improve on the modularization of disributed and concurrent code. From these findings we propose a novel Aspect Oriented programming language with explicit support for distribution and concurrency (AWED). The language uses aspects as main abstractions and propose a model for distributed aspects and remote pointcuts, extending sequential approaches with support for regular sequences of distributed events. The language also proposes advanced support for the manipulation of groups of host, and the fine-grained deterministic ordering of distributed events. To evaluate the proposal we perform several experiments in different domains. Finally, using this general model for distribution we provide two additional contributions. First, we introduce Invasive Patterns, an extension to traditional communication patterns for distributed applications. Second, we add the deterministic manipulation of distributed messages to our model by means of causally ordered protocols.

Consulter en bibliothèque

La version de soutenance existe sous forme papier

Informations

  • Détails : 1 vol. (179 p.)
  • Notes : Publication autorisée par le jury
  • Annexes : Bibliogr. p. 171-179

Où se trouve cette thèse ?

  • Bibliothèque : Université de Nantes. Service commun de la documentation. Section Sciences.
  • Disponible pour le PEB
  • Cote : 2009 NANT 2002
  • Bibliothèque : Ecole nationale supérieure des techniques industrielles et des mines. Centre de documentation.
  • Disponible pour le PEB
Voir dans le Sudoc, catalogue collectif des bibliothèques de l'enseignement supérieur et de la recherche.