Thèse de Mickaël Duruisseau

Améliorer la compréhension d'un programme à l'aide de diagrammes dynamiques et interactifs

Les développeurs occupent une place prépondérante dans le développement logiciel. Dans ce cadre, ils doivent réaliser une succession de tâches élémentaires (analyse, codage, liaison avec le code existant...), mais pour effectuer ces tâches, un développeur doit régulièrement changer de contexte de travail (recherche d'information, lecture de code…) et analyser du code qui n'est pas le sien. Ces actions nécessitent un temps d'adaptation élevé et réduisent l'efficacité du développeur. La modélisation logicielle est une solution à ce type de problème. Elle propose une vue abstraite d'un logiciel, des liens entre ses entités ainsi que des algorithmes utilisés. Cependant, l'Ingénierie Dirigée par les Modèles (IDM) est encore trop peu utilisée en entreprise. Dans cette thèse, nous proposons un outil pour améliorer la compréhension d’un programme à l’aide de diagrammes dynamiques et interactifs. Cet outil se nomme VisUML et est centré sur l'activité principale de codage du développeur. VisUML fournit des vues (sur des pages web ou sur des outils de modélisation) synchronisées avec le code. Les diagrammes UML générés sont interactifs et permettent une navigation rapide avec et dans le code. Cette navigation réduit les pertes de temps et de contextes dues aux changements d'activités en fournissant à tout moment une vue abstraite sous forme de diagramme des éléments actuellement ouverts dans l’outil de codage du développeur. Au final, VisUML a été évalué par vingt développeurs dans le cadre d'une expérimentation qualitative de l'outil afin d'estimer l'utilité d'un tel outil.

Jury

M. Xavier LE PALLEC Université de Lille Directeur de thèse M. Philippe PALANQUE Université Paul Sabatier Toulouse III - IRIT Rapporteur Mme Marianne HUCHARD Université de Montpellier - LIRMM Rapporteur M. Sébastien GÉRARD CEA Co-directeur de thèse M. Bruno DUMAS Université de Namur Examinateur M. Jean-Claude TARBY Université de Lille

Thèse de l'équipe CARBON soutenue le 16/07/2019