Modèle de maintenabilité logicielle par analyse statique du graphe de code du programme
Auteur / Autrice : | Sébastien Bertrand |
Direction : | Jean-Marc Andre |
Type : | Projet de thèse |
Discipline(s) : | Automatique, Productique, Signal et Image, Ingénierie cognitique |
Date : | Inscription en doctorat le 28/01/2020 |
Etablissement(s) : | Bordeaux |
Ecole(s) doctorale(s) : | École doctorale des sciences physiques et de l'ingénieur |
Partenaire(s) de recherche : | Laboratoire : Laboratoire de l'Intégration du Matériau au Système |
Equipe de recherche : Cognitique et Ingénierie Humaine (CIH) |
Mots clés
Résumé
Le coût élevé de la maintenance des logiciels exige de travailler sur leur maintenabilité. Bien qu'émergente de la structure du code source, son évaluation est subjective, car elle dépend des développeurs et du contexte. Les modèles de maintenabilité actuels tendent à réduire la maintenabilité à un score unidimensionnel basé sur des métriques, souvent mal définies, qui représentent mal la structure du code. Nos travaux se sont basés sur l'analyse statique des graphes de code pour évaluer la maintenabilité. Ils ont permis de développer Javanalyser, un outil libre qui génère automatiquement le graphe de code d'un programme Java. Ces graphes ont permis de formaliser 33 métriques statiques sous forme de requêtes déclarative, et ont permis de reproduire avec succès une étude de Schnappinger et al. Notre extension de l'étude confirme l'importance de la taille du programme comme facteur influençant la maintenabilité, sans toutefois négliger l'impact d'autres métriques. Ce travail ouvre la voie à une compréhension plus approfondie de la maintenabilité, grâce à une représentation multidimensionnelle permettant de prendre en compte de la variabilité entre les développeurs.