Auteur / Autrice : | Faezeh Khorram |
Direction : | Gerson Sunyé |
Type : | Thèse de doctorat |
Discipline(s) : | Informatique |
Date : | Soutenance le 12/12/2022 |
Etablissement(s) : | Ecole nationale supérieure Mines-Télécom Atlantique Bretagne Pays de la Loire |
Ecole(s) doctorale(s) : | École doctorale Mathématiques et sciences et technologies de l'information et de la communication (Rennes) |
Partenaire(s) de recherche : | Laboratoire : NaoMod - Nantes Software Modeling Group - Département Automatique, Productique et Informatique - Laboratoire des Sciences du Numérique de Nantes |
Jury : | Président / Présidente : Antoine Beugnard |
Examinateurs / Examinatrices : Gerson Sunyé, Anne Etien, Juergen Dingel, Benoit Baudry, Javier Troya, Jean-Marie Mottu, Erwan Bousse | |
Rapporteurs / Rapporteuses : Anne Etien, Juergen Dingel |
Résumé
La croissance continue de la complexité des logiciels soulève le besoin d’une gestion efficace de la complexité. L’ingénierie dirigée par les modèles (IDM) est un paradigme de développement qui répond à ce problème par la mise en place d’une séparation des préoccupations à l’aide de modèles. Un modèle est une abstraction spécifique d’un système qui peut être défini par un langage de modélisation dédié (LMD). Un LMD doté de fonctions d’exécution, appelé un LMD exécutable (LMDx), offre de de nouvelles possibilités dans l’activité de modélisation en permettant l’utilisation de techniques de vérification et de validation (V&V) dynamiques. Le test est la technique de V&V dynamique actuellement la plus répandue dans le domaine du génie logiciel. Bien qu’il existe de nombreux environnements de test pour les langages de programmation, produire un outillage de test pour un LMDx donné reste aujourd’hui une tâche coûteuse et difficile. Dans cette thèse, nous proposons un environnement de test générique et réutilisable pour les LMD exécutables. Étant donné un LMDx, l’environnement fournit un langage de test qui prend en charge l’utilisation de concepts spécifiques au LMDx dans la définition de scénarios de test. Cela permet aux utilisateurs du LMDx, à savoir les experts du domaine, d’écrire des scénarios de test pour leurs modèles. Les scénarios de test écrits peuvent ensuite être exécutés sur les modèles, ce qui entraîne la production de résultats des tests. Pour aider davantage les experts du domaine à tester les modèles, l’environnement proposé offre trois services supplémentaires : (i) la mesure de la qualité des tests pour s’assurer que les scénarios de test écrits sont suffisamment bons ; (ii) le débogage des tests pour localiser le défaut du modèle testé en cas d’échec du test ; et (iii) l’amélioration automatique des tests pour renforcer la capacité des scénarios de test à détecter des régressions introduites dans les modèles testés.