Thomas Ledoux, maître-assistant au sein de l’équipe STACK, soutiendra son Habilitation à Diriger des Recherches (HDR) intitulée « Reconfiguration dynamique d’architectures logicielles : des métaclasses aux « nuages verts »«
mardi 17 juillet à 11h00,à IMT Atlantique campus de Nantes (amphi G. Besse).
Jury :
Mme Laurence DUCHIEN, Professeur, Université Lille – Sciences et Technologies (Rapporteur)
M. Michel RIVEILL, Professeur, Polytech’Nice Sophia (Rapporteur)
M. Jean-Bernard STEFANI, Directeur de recherche, INRIA Grenoble-Rhône-Alpes (Rapporteur)
M. Pierre COINTE, Professeur, IMT Atlantique (Examinateur)
M. Thierry COUPAYE, VP Recherche Internet des objets, Orange Labs (Examinateur)
M. Rachid GUERRAOUI, Professeur, École polytechnique fédérale de Lausanne (Examinateur)
M. Claude JARD, Professeur, Université de Nantes (Examinateur)
Résumé :
Cette habilitation à diriger des recherches présente une synthèse de mes travaux ayant trait à la reconfiguration dynamique d’architectures logicielles.
En première partie, je propose une analyse de l’adaptation dynamique du logiciel avec la volonté de poser les concepts de base et d’identifier les verrous à lever. Je motive l’intérêt de l’adaptation dynamique et modélise son processus de développement. Je présente un nombre de caractéristiques indispensables à l’adaptation dont la réification et la modularité. Je traite alors l’adaptation dynamique du logiciel comme un objet de première classe introduisant un découplage spatio-temporel entre code métier et logique d’adaptation. L’adaptation dynamique ne pouvant se faire au détriment de la qualité du logiciel et de son intégrité, j’énumère un nombre de propriétés indispensables à respecter, de pistes à étudier pour réaliser à l’exécution ce processus d’adaptation du logiciel.
En deuxième partie, je présente ma contribution à la mise en œuvre de l’adaptation dynamique pour les logiciels à base de composants. Dans un premier temps, je propose un patron d’auto-administration pour les architectures à composants, des langages dédiés pour la navigation et la reconfiguration dans les architectures logicielles Fractal, un framework pour faciliter la création d’applications sensibles au contexte. Dans un second temps, je développe une approche multi-étape pour des reconfigurations dynamiques fiables, qui contient à la fois une partie prévention de fautes basée sur une analyse statique et une partie tolérance aux fautes assurée par un moniteur transactionnel. Cette approche s’appuie sur une spécification des (re)configurations du modèle Fractal basée sur une logique du premier ordre.
En troisième partie, je montre que la reconfiguration dynamique dans les « architectures en nuages » (Cloud computing) peut apporter une réponse à un enjeu sociétal important, à savoir les transitions numérique et énergétique. Contrairement aux travaux actuels qui visent à améliorer l’efficacité énergétique des centres de données en proposant des solutions dans les couches basses du Cloud, je préconise une approche d’éco-élasticité logicielle sur ses couches hautes. En m’inspirant à la fois du concept d’innovation frugale (Jugaad) et du mécanisme d’effacement de la consommation électrique, un certain nombre d’artefacts originaux comme le Cloud SLA, l’effacement de la consommation du logiciel, la virtualisation de l’énergie ou encore le SaaS green energy-aware, sont suggérés pour diminuer l’empreinte carbone des architectures en nuages.
En conclusion, je dresse un bilan final de ma contribution et présente mes perspectives de recherche centrées d’abord sur une généralisation de l’approche précédente à l’aide de méta-modèles, puis sur la conception de micro-services « verts ».