Analyse Logique des Données pour détecter des fautes dans les programmes
Loading...
Date
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
Le développement de logiciels est un processus complexe et itératif souvent sujet
aux erreurs. Ces erreurs peuvent se manifester de diverses manières, allant de simples
problèmes d’interface utilisateur à des défaillances critiques du système pouvant entraîner
des pertes de données ou des comportements inattendus. Ceci est particulièrement
dangereux, surtout s’il est question de déployer ces programmes sur du matériel. C’est
pourquoi la détection et la correction précoces des fautes sont d’une importance capitale
pour garantir la livraison de logiciels robustes, fiables et de haute qualité.
Dans ce mémoire de fin d’études, nous proposons nos approches basées sur l’Analyse
Logique de Donne (ALD) dont l’objectif est de permettre aux programmeurs de localiser
plus facilement les erreurs avec une bonne précision et ainsi de les corriger par la suite.
Nous avons développé quatre algorithmes, dont trois variantes de l’algorithme glouton
(heuristique) et une méthode dite exacte. Avec glouton , nous extrayons d’abord plusieurs
motifs suspects, puis nous les classons grâce à aux mesures de suspicion. Ceux ayant un
score élevé contiennent plus souvent l’instruction fautive.
Nous avons testé nos approches sur une base de données open source nommée ISSTA13
(International Symposium on Software Testing and Analysis) de l’année 2013. Cette base
de données contient 10 programmes présentant des fautes localisées à des emplacements
distincts, ce qui en fait un outil idéal pour tester et évaluer nos algorithmes.
Pour évaluer les performances de nos approches proposées, nous avons utilisé des mesures
d’évaluation des performances, il s’agit de l’exam score avec ses trois versions pessimistes
et optimistes, ainsi que le delta Exam score. Les résultats illustrés sont satisfaisants.
