Quand les applications se reconfigurent automatiquement

Par 25 juillet 2011
Mots-clés : Digital Working, Europe
clouyd

Savoir reconfigurer une application dynamiquement, au moment de son lancement, pourrait s'avérer particulièrement utile dans le cas d'utilisation de services tiers, par exemple.

La grande complexité des applications actuelles ne vient pas seulement de leur impressionnant nombre de lignes de code. Dans une ère informatique orientée vers les services et le Cloud Computing, les applications utilisent largement des composants issus de fournisseurs tiers, distribués via Internet, en différents langages et fonctionnant sur des périphériques très différents les uns des autres. Aujourd’hui, outre la question de l’assemblage de ces différentes pièces logicielles, se pose également la problématique de leur reconfiguration au moment de leur exécution. C’est le point de départ d’une recherche menée par Christian Krause, étudiant à l’IPA (Institute for Programming research and Algorithmics).

A la recherche d’une méthode de gestion

Cette étude porte principalement sur la recherche d’une méthodologie de gestion des composants avec le langage Reo, conçu pour la coordination et la distribution des modules applicatifs. Les connecteurs écrits en Reo peuvent ainsi contrôler les flux de données et donc améliorer les protocoles d’échange entre les composants traditionnels. Ces connecteurs intermédiaires améliorent par exemple les flux de communication synchrones et asynchrones, la gestion de la mémoire tampon, le filtrage et la manipulation des données, les comportements contextuels ou encore les composants liés à la mobilité.

Reconfigurer, mais dynamiquement

Si le reconfiguration logicielle n’est pas une procédure inhabituelle, c’est bien la reconfiguration automatique, au moment de l’exécution du programme, qui constitue une approche innovante. Celle-ci pourrait être particulièrement utile dans le cas de logiciels ou de composants critiques qu’il est impossible de rebooter ou d’éteindre, comme par exemple les micro-logiciels embarqués dans les voitures actuelles. Une autre champ d’application dans lequel la reconfiguration dynamique serait intéressant est celui des modules utilisant des services tiers, et donc en dehors du contrôle du concepteur de l’application. En cas de défaillance d’un ou plusieurs de ces services externes, par exemple, la reconfiguration dynamique permettrait alors de lancer le programme sans erreur en se connectant à des services différents et disponibles.

Mentions légales © L’Atelier BNP Paribas