Repairnator, un bot mis au point par des chercheurs suédois, serait capable de détecter et de corriger des bugs, avec une qualité comparable à celui d’un développeur. L’outil illustrerait « l’avenir du développement de logiciels, où robots et humains collaboreront », estiment les membres de l’Institut royal de technologie de Stockholm.
Trouver des bugs et les corriger : voici le quotidien de certains développeurs de logiciels. Automatiser cette tâche, particulièrement consommatrice en temps et en ressources, pourrait permettre d’accélérer le processus. Des chercheurs de l’Institut royal de technologie de Stockholm (Suède) ont ainsi mis au point un bot, baptisé Repairnator, qui serait capable de rivaliser avec les programmeurs humains pour trouver des bugs et les corriger, rapporte Developpez.com.
Le premier test se solde par un échec
Pour prouver les capacités de leur bot, les chercheurs l’ont fait passer pour un humain. Ainsi, ils ont créé un utilisateur GitHub appelé Luc Esape, un ingénieur logiciel censé travailler dans leur laboratoire. « Luc a une photo de profil et ressemble à un développeur junior, désireux de faire des contributions open source sur GitHub », expliquent les chercheurs. Le bot a ainsi pu se mêler aux humains pour développer des correctifs.
Deux étapes ont marqué ce test grandeur nature. La première s’est déroulée de février à décembre 2017, lorsque l’équipe a lancé Repairnator à la recherche d’erreurs sur une liste fixe de 14 188 projets GitHub. L’outil a été capable de développer un patch dans 15 cas mais « aucun de ces correctifs n’a été accepté (…) car Repairnator prenait trop de temps pour les développer ou écrivait des correctifs qui étaient peu performants pour être acceptés », indique Developpez.com.
Cinq correctifs acceptés en six mois
La deuxième étape, qui s’est déroulée de janvier à juin 2018, a marqué un tournant décisif. Après avoir reçu des améliorations, le bot s’est en effet montré plus performant. Le 12 janvier, l’un de ses correctifs a ainsi été accepté par un modérateur humain. Sur une période de six mois, quatre autres « réparations » ont été acceptées par les développeurs.
« En d’autres termes, Repairnator pouvait rivaliser avec les humains pour la première fois », estiment les chercheurs qui pensent que leur outil illustre « l’avenir du développement de logiciels, où robots et humains collaboreront ».