Fiche recherche - Roy AWEDIKIAN - LGI

Transcription

Fiche recherche - Roy AWEDIKIAN - LGI
Ecole Doctorale en Sciences de l’Ingénieur de l’ECP
Formation doctorale en Génie Industriel
Qualité de la conception de tests logiciels : plate-forme de
conception et processus de test
Quality of the design of test cases for automotive software:
design platform and testing process
par Roy Awedikian
Résumé de thèse
Doctorat de Génie Industriel
Laboratoire Génie Industriel - Ecole Centrale Paris
2009 - 01
N° 2009 – 01
Roy Awedikian est né le 11 novembre 1981 au Liban. En 2004, il a obtenu le
diplôme d’Ingénieur en Systèmes Electroniques et Informatique Industrielle
de l’Ecole polytechnique de l’Université de Nantes en France. En 2005, il a
obtenu un Diplôme de Master Recherche en Génie Industriel de l’Ecole
Centrale Paris, avec la spécialité « Innovation – Conception – Ingénierie ».
Entre janvier 2006 et janvier 2009, il a effectué une thèse au Laboratoire
Génie Industriel de l’Ecole Centrale Paris dans le cadre d’une convention
CIFRE avec l’industriel Johnson Controls. Ses travaux de recherche portent
sur l’amélioration de la conception des cas de test fonctionnel pour les
produits logiciels.
Thèse soutenue le 6 février 2009 à l’Ecole Centrale Paris
Devant le jury composé de :
Directeur de thèse:
Bernard YANNOU
Professeur, Ecole Centrale Paris
Co-Directeur de thèse:
Mounib MEKHILEF
Maître de conférences, HdR, Université de Bourges
Jury:
Jean-Marc FAURE
Professeur, Supmeca et ENS de Cachan, Rapporteur
Abdessamad KOBI
Professeur, Université d’Angers, Rapporteur
Line BOUCLIER
Johnson Controls, France, Examinatrice
Jean-Paul CALVEZ
Professeur, Ecole polytechnique de l’Université de Nantes, Examinateur
Philippe LEBRETON
Johnson Controls, France, Examinateur
Harriet Black NEMBHARD
Professeur associé, Penn State University, USA, Examinatrice
Le mémoire de thèse et les publications sont disponibles auprès de :
Anne PREVOT
Laboratoire Génie Industriel
Ecole Centrale Paris
Grande Voie des Vignes
92295 Châtenay Malabry Cedex
Tél : 01 41 13 13 88 – E-mail : [email protected]
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.
Mots clefs: Vérification et validation logicielle, Automobile, Processus de test logiciel, Simulation
fonctionnelle, Qualité logicielle, Gestion des connaissances, Prise de décision, Processus de conception.
Abstract: Nowadays, car electronics become more and more complex and represents more than 30% of the
total cost of a car. For instance, in a 2008 BMW 5 series model, one can find up to 80 electronic modules
communicating together and representing 10 million lines of software code. Facing this growing complexity,
carmakers and automotive electronic suppliers are looking for efficient methods to develop, verify and validate
electronic modules. In fact, they focus on the software part of these modules since it accounts for more than
80% of the total number of problems detected on these modules. In this context, we achieved our research
project with the aim of proposing a global approach able to improve the quality of automotive embedded
software. We started with an audit of the software practices currently used in automotive industry and we
pinpointed potential levers to improve the global software quality. Based on the results of the audit and the
literature review related to software quality, we developed a global approach to improve the design of test
cases for software products. In fact, we developed a test generation platform to automatically generate test
cases for a software product. It is mainly based on modeling the software functional requirements in order to
be simulated when testing the software, focusing on critical tests to be done (because of their higher
probability to detect a bug) and monitoring the automatic generation of tests by quality indicators such as the
structural and functional coverage but also the tests cost. The generation of critical tests is based on the
definition of real use profiles by software product and on the reuse of bugs and test cases capitalized on
previous projects. Besides the computational aspects of software testing, our approach takes into account
organizational matters such as knowledge management, competency management and project management.
Our approach have been implemented in a computer platform and experimented on two typical case studies of
an automotive electronic supplier, with historical test data. The results of our experiments reveal significant
improvement in software quality: more bugs are detected earlier and in less time.
Keywords: Software verification and validation, Automotive, Software testing process, Functional
simulation, Software quality, Knowledge management, Decision making, Design process.
L’Ecole Doctorale de l’Ecole Centrale Paris
P
luridisciplinaire, l’Ecole Doctorale en Sciences pour l’Ingénieur de l’ECP permet aux doctorants
d’effectuer un travail de recherche dans l’une des disciplines des sciences pour l’ingénieur et des
sciences pour l’entreprise, ce qui, pour bon nombre d’entre eux complète utilement leur formation de
base.
Elle permet par ailleurs de concrétiser des liens entre les laboratoires et de mutualiser les moyens
matériels et humains.
Le Laboratoire Génie Industriel
L
e Laboratoire Génie Industriel (LGI) de l’Ecole Centrale Paris élabore des méthodes d’aide à la
décision en conception et optimisation de produits, services et systèmes industriels et logistiques.
L’activité de recherche du laboratoire s’applique aux méthodes d’organisation, de gestion et d’exécution
de la conception, de la production et de la distribution des produits et services, sur l’ensemble de leur
cycle de vie.
Elle a pour finalité de fournir aux entreprises les méthodes nécessaires à l’amélioration de leur
compétitivité en termes de performances (qualité, coût, délai).
Le Laboratoire s’organise en deux thèmes et trois axes de recherche :
Thème 1 : Développement des biens et des services
Thème 2 : Production / Distribution de biens et de services
Axe 1 : Management de Projets
Axe 2 : Management des Connaissances et des S.I.
Axe 3 : Management de l’Innovation
Les thèses se font principalement dans l’un des domaines scientifiques relatifs à un thème ou à un axe,
même s’il peut arriver qu’elles se fassent transversalement à ces thèmes ou à ces axes. C’est la
complexité des approches (robust-design, axiomatic-design, approche systémique, recherche
opérationnelle, modèles stochastiques, évaluation des performances …) qui fait la force, la performance
et l’originalité du Laboratoire.
Publications scientifiques
Papiers soumis
• Awedikian R., Yannou B. A formal language to simulate the software functional requirements in
automotive industry. Submitted on January 2009 in the “Computers In Industry” Journal
• Awedikian R., Yannou B. Automatic generation of relevant test cases: A practical model-based testing
approach. Submitted on January 2009 in the “Software Testing, Verification and Reliability”
Journal
Conférences internationales
• Yannou B., Awedikian R., 2005, “A Plug-And-Contract Mechanism for a Robust Assessment of
Design Concepts.” Proceedings of the ASME Design Engineering Technical Conferences / Design
Automation Conference - DETC/DAC 2005, Long Beach, CA, USA, DETC2005/85457.
• Awedikian R., Yannou B., Mekhilef M., Bouclier L. and Lebreton P., 2007, “Proposal for a holistic
approach to improve software validation process in automotive industry.” Proceedings of the 16th
International Conference on Engineering Design - ICED 2007, pp. 695-696, Paris, France.
• Awedikian R., Yannou B., Mekhilef M., Bouclier L. and Lebreton P., 2008, “A simulated model of
software specifications for automating functional tests design.” Proceedings of the 10th International
Design Conference - DESIGN 2008, Dubrovnik, Croatia.
• Awedikian R., Yannou B., Mekhilef M., Bouclier L. and Lebreton P., 2008, “A Radical improvement of
software defects detection when automating the test generation process.” Proceedings of the 10th
International Design Conference - DESIGN 2008, Dubrovnik, Croatia.
• Awedikian R., Yannou B., 2008, “An objective function for optimizing the generation of test cases for
automotive software product.” Proceedings of IDMME - Virtual Concept 2008 - IDMME 2008, Beijing,
China.
• Yannou B., Dihlmann M., Awedikian R., 2008, “Evolutive design of car silhouettes.” Proceedings of
the ASME Design Engineering Technical Conferences / Design Automation Conference - DETC/DAC
2008, New York City, NY, USA, DETC2008/49439.