Anne Etien : maintenir et faire évoluer les logiciels "patrimoniaux"

Date :
Mis à jour le 13/03/2020
Comment maintenir et faire évoluer des logiciels dans lesquels une entreprise a concentré son métier, ses règles de gestion et son expertise depuis des décennies ? C’est le sujet sur lequel travaille Anne Etien, enseignante-chercheuse en génie logiciel dans l’équipe RMoD.
portrait de chercheuse
© Inria / Photo C. Morel

Tout utilisateur de PC le sait : installer une nouvelle version d’un programme, c’est s’exposer aux bugs. Cette règle vaut également pour les logiciels dits "patrimoniaux" qui gèrent la production d’une usine, les flux financiers d’une banque ou les effectifs d’une multinationale. Leurs bugs peuvent avoir un impact désastreux sur la production, les ventes, la paie, etc. Et pourtant, il faut bien faire évoluer ces logiciels, même s’ils sont souvent mal documentés...

Des millions de lignes de code à analyser

Chercheuse dans l’équipe RMoD d’Inria, Anne Etien travaille sur ce sujet avec pour principaux outils l’abstraction et la modélisation. « Il serait impossible d’exploiter en l’état les millions de lignes de code de ces programmes, souvent écrites dans un langage de programmation ancien. Nos outils d’analyse et de modélisation retrouvent la grammaire de ce langage, le décortiquent, identifient les dépendances entre fonctions, évaluent l’impact des modifications envisagées. Ils ouvrent la voie à des évolutions maîtrisées et fiables. »

Avant d’en arriver à ces sujets, Anne Etien avait emprunté des chemins inhabituels pour une future scientifique : prépa HEC, puis Institut national des communications (aujourd’hui Mines Télécom Business School). Là, elle s’est passionnée pour l’informatique, puis orientée vers une thèse sur les systèmes d’information des entreprises qui lui a fait découvrir la puissance de la modélisation.

« Un système d’information qui gère par exemple la paie des salariés, c’est du logiciel, des bases de données et des processus. Un changement minime de processus peut avoir des impacts logiciels majeurs. L’analyse et la modélisation sont indispensables pour maîtriser ces complexités. »

Du modèle à la génération automatique de code

Après sa thèse, la chercheuse s’est spécialisée dans le génie logiciel. Postdoctorante à Inria en 2006, puis maîtresse de conférences dans l’équipe DART, elle a travaillé sur la conception de systèmes embarqués à partir de modèles qui, par transformations successives, généraient le code de l’application. « Nous avons été les premiers en France à réaliser ces transformations de modèles pour différents langages informatiques. »

Quand elle rejoint l’équipe RMoD en 2012, ses recherches s’orientent vers les logiciels patrimoniaux. « C’était ce que je souhaitais : que mes travaux, même s’ils sont abstraits, servent à résoudre de vrais problèmes dans la vraie vie, pour de vrais gens. »

Des collaborations avec Siemens, Thales, Worldline

RMoD, qui s’appuie sur le logiciel libre Moose, a notamment aidé Siemens à piloter les évolutions d’un logiciel industriel. Celui-ci était conçu en programmation orientée "objet" (un objet pouvant être une pièce, une machine, une étape de fabrication etc.) et comptait 10 000 objets liés par des interactions. « Siemens considérait les évolutions comme hautement risquées, voire impossibles. Nos outils les ont rendues simples et rapides. »

Autre exemple, l’équipe RMoD a aidé un laboratoire de recherche lillois, CRIStAL, à gérer les modifications d’une base de données qui compte une centaine de tables. Supprimer une colonne dans une seule table pouvait provoquer de multiples perturbations ailleurs. Les détecter à la main était très long et pas forcément fiable à 100 %. Aujourd’hui, l’outil permet d’obtenir facilement la liste des changements et de générer un script de migration prêt à l’emploi !

RMoD a accompagné également un éditeur de logiciels pris au dépourvu quand Google a annoncé en 2015 qu’il arrêtait la maintenance de sa suite d’outils pour applications web Google Web Toolkit. D’autres projets sont menés par le biais de thèses, par exemple avec Thales ou Wordline (services de paiement). « Ces résultats sont le fruit d’un travail collaboratif et d’une émulation intellectuelle permanente, conclut Anne Etien. La confrontation de nos idées avec les problèmes des industriels nous aide à garder un pied dans la réalité. »