14-18 juin 2021 Virtuelle (France)
Réparation Automatique des Logiciels: le Rêve et la Fantaisie
Tegawandé Bissyande  1@  
1 : Interdisciplinary Centre for Security, Reliability and Trust [Luxembourg]  (SnT)  -  Site web
6, rue Richard Couhenhove-Kalergi L-1359 Luxembourg -  Luxembourg

La correction automatique des bogues, c'est-à-dire l'idée d'avoir des programmes qui corrigent d'autres programmes, est un rêve de longue date qui est de plus en plus embrassé par la communauté du génie logiciel. En effet, malgré les efforts considérables que les développeurs informatiques consacrent à la révision du code et à l'exécution de campagnes de tests logiciels, des erreurs de programmation se glissent, avec quelques fois de graves conséquences. La correction automatique de ces erreurs a récemment fait l'objet d'un certain nombre de travaux potentiellement prometteurs.
Ces techniques, qui ne semblaient initialement valables que pour des cas d'utilisation hypothétiques, ont très récemment été reconnues capables de corriger des bogues dans le monde réel. Par exemple, le projet académique Repairnator, a réussi à montrer que les moteurs de réparation automatique peuvent être compétitifs avec les développeurs humains : les mainteneurs de logiciels libres ont accepté et fusionné des correctifs sans se rendre compte qu'ils avaient été générés automatiquement et soumis par un robot. Au-delà de cet exploit anecdotique, un récent rapport d'expérience sur l'intégration du système de réparation SapFix chez Facebook (un géant de l'industrie du logiciel) suggère définitivement que la réparation automatisée de programmes n'est plus une fiction.

Malheureusement, plusieurs défis fondamentaux empêchent la réparation automatique des bogues d'être largement adoptée dans l'industrie du logiciel. Des études, y compris certaines par notre équipe, ont en effet mis en évidence divers biais impliquant chaque étape de la réparation automatique classique : des hypothèses irréalistes sur la localisation des fautes, l'ajustement excessif de la suite de tests dans la génération des correctifs, l'ajustement excessif au benchmark dans l'évaluation, la concentration sur les bogues simples et triviaux, etc. Ces préjugés finissent par rendre les praticiens et les autres chercheurs méfiants vis-à-vis des promesses de l'APR.
Dans cet exposé, nous ferons le tour sur les hypothèses utilisées dans la littérature, les limites et biais des évaluations, tout en mettant en avant les possibilités et le grand champ de recherche qui mérite exploration.


Personnes connectées : 2 Vie privée
Chargement...