Qualité de la conception de tests logiciels : plate-forme de conception et processus de test
Auteur / Autrice : | Roy Awedikian |
Direction : | Bernard Yannou |
Type : | Thèse de doctorat |
Discipline(s) : | Génie industriel |
Date : | Soutenance le 06/02/2009 |
Etablissement(s) : | Châtenay-Malabry, Ecole centrale de Paris |
Ecole(s) doctorale(s) : | École doctorale Sciences pour l'Ingénieur (Châtenay-Malabry, Hauts de Seine) |
Partenaire(s) de recherche : | Laboratoire : Laboratoire génie industriel (Gif-sur-Yvette, Essonne) |
Jury : | Président / Présidente : Jean-Paul Calvez |
Examinateurs / Examinatrices : Bernard Yannou, Mounib Mekhilef, Jean-Marc Faure, Abdessamad Kobi, Harriet Nembhard |
Mots clés
Mots clés contrôlés
Résumé
L’électronique dans les voitures devient de plus en plus complexe et représente plus de 30% du coût global d’une voiture. Par exemple, dans une BMW série 5 modèle 2008, on peut trouver jusqu’à 80 calculateurs électroniques communiquant ensemble et représentant aux alentours de 10 millions de lignes de code logiciel. Face à cette montée en complexité, les constructeurs et équipementiers électroniques de l’automobile s’intéressent de plus en plus à des méthodes efficaces de développement, vérification et validation de modules électroniques. Plus précisément, ils focalisent leurs efforts sur la partie logicielle de ces modules puisqu’elle est à l’origine de plus de 80% des problèmes détectés sur ces produits. Dans ce contexte, nous avons mené un travail de recherche dont l’objectif est de proposer une approche globale d’amélioration de la qualité des logiciels embarqués dans les véhicules. Notre recherche part d’un audit des processus et outils actuellement utilisés dans l’industrie électronique automobile. Cet audit a permis d’identifier des leviers potentiels d’amélioration de la qualité logicielle. En se basant sur les résultats de l’audit et en tenant compte de la littérature dans le domaine de la qualité logicielle, nous avons proposé une approche globale de conception de cas de test pour les produits logiciels. En effet, nous avons développé une plateforme de génération automatique de tests pour un produit logiciel. Cette plateforme consiste à modéliser les spécifications du produit logiciel pour le simuler lors de tests, à se focaliser sur les tests critiques (ayant une forte probabilité de détecter des défauts) et à piloter la génération automatique des tests par des critères de qualité ; telles que la couverture du code et de la spécification mais aussi le coût des tests. La génération de tests critiques est rendue possible par la définition de profils d’utilisation réelle par produit logiciel, ainsi que par la réutilisation des défauts et des tests capitalisés sur des anciens projets. En plus des aspects algorithmiques du test logiciel, notre approche prend en compte des aspects organisationnels tels que la gestion des connaissances et des compétences et la gestion de projet logiciel. Notre approche a été mise en œuvre sur deux cas d’étude réels d’un équipementier électronique automobile, disposant de données de tests historiques. Les résultats de nos expérimentations révèlent des gains de qualité significatifs : plus de défauts sont trouvés plus tôt et en moins de temps.