Titre original :

Construire et maîtriser l'évolution d'une architecture logicielle à base de composants

  • Langue : Français
  • Discipline : Informatique
  • Identifiant : Inconnu
  • Type de thèse : Doctorat
  • Date de soutenance : 01/01/2005

Résumé en langue originale

Dans une industrie du logiciel où la complexité des applications ne cesse de croître, un des objectifs du génie logiciel est de conserver l'intelligibilité du processus de construction et de maintenance de ces applications. Dans ce cadre, le concept de composant a été introduit comme une extension du concept d'objet pour faciliter la conception d'applications réparties complexes, c'est-à-dire formées de nombreux éléments en coopération, distribuées sur différents sites d'exploitation, et de nombreuses contraintes qui expriment des exigences variées (persistance, sécurité, tolérance aux pannes, etc.). Il existe à ce jour de nombreux modèles de composants avec des objectifs différents. Cependant, un des points communs de ces modèles est la mise en lumière de l'architecture de l'application, c'est-à-dire une description de haut niveau de cette application décomposée en différents composants interconnectés et définis par leurs fonctionnalités requises et offertes. De par la complexité de certaines applications, la définition de l'architecture est elle-même une opération délicate et très propice aux erreurs. L'objectif de cette thèse vise à améliorer la maîtrise de la complexité de la construction de l'architecture d'une application définie par assemblage de composants. Nous proposons pour cela un modèle de composant abstrait, nommé SafArchie, qui permet d'assister l'architecte dans la construction d'une architecture logicielle cohérente. Ainsi, dans SafArchie, l'interface des différents composants d'une architecture est spécifiée à l'aide de contrats. Ces contrats permettent de définir la structure du composant, mais aussi son comportement vis-à-vis de son environnement. A partir de ces différentes informations et de la définition de l'assemblage de composants, nous proposons une notion de compatibilité entre composants interconnectés. Cette compatibilité permet de déterminer la cohérence de l'architecture. Un deuxième axe de la thèse part du constat qu'il est difficile de construire un assemblage de composants qui adresse l'ensemble des préoccupations d'une application en une seule étape. L'idéal est alors de proposer une démarche de construction incrémentale où l'architecte peut à chaque étape ajouter une nouvelle préoccupation à son architecture. Malheureusement, les modèles de composants ne proposent en générale qu'une unique dimension de structuration d'une application, SafArchie n'échappe pas à cette règle. Dès lors, certaines préoccupations comme la sécurité, la persistance ou la traçabilité ne peuvent être correctement structurées au sein d'un seul composant et se retrouvent alors noyées au sein de nombreux éléments de l'architecture. Cette mauvaise structuration est très préjudiciable pour l'intégration de ces préoccupations dans une architecture existante. Nous proposons donc, dans une deuxième partie de cette thèse, un canevas de conception d'architecture nommé TranSAT qui permet l'intégration de nouvelles préoccupations dans une architecture par transformation de cette dernière. Ce canevas introduit la notion de patron d'architecture pour structurer les différentes préoccupations transverses d'une application. Ce patron comprend les éléments d'architecture à intégrer, les transformations à apporter sur l'architecture de base, mais aussi un ensemble de contraintes génériques sur les éléments d'une architecture cible sur laquelle le patron peut être intégré. De plus, TranSAT propose un langage dédié pour spécifier les modifications à apporter sur l'architecture de base afin d'intégrer la nouvelle préoccupation. Ce langage est concis et expressif, sa spécialisation permet de produire différentes analyses statiques afin de garantir la cohérence de l'architecture résultante sans analyser la totalité de cette architecture.

  • Directeur(s) de thèse : Duchien, Laurence

AUTEUR

  • Barais, Olivier
Droits d'auteur : Ce document est protégé en vertu du Code de la Propriété Intellectuelle.
Accès libre