Soutenance de thèse de Faezeh Khorram
12 décembre 2022 @ 14 h 00 min
Faezeh Khorram, doctorante au sein de l’équipe Naomod, soutiendra sa thèse intitulée :
« Un environnement de test pour les langages dédiés exécutables » / « A Testing Framework for Executable Domain-Specific Languages »
Le lundi 12 décembre à 14h00 à Amphi Blaise Pascal, IMT ATLANTIQUE, Campus de Nantes.
Vous êtes bien sur tous bienvenu(e)s pour y assister sur place ou à distance avec le lien suivant:
Thesis director:
- Prof. Gerson SUNYE (Maître de conférences HDR, Nantes Université, France)
- Dr. Jean-Marie MOTTU (Maître de conférences, Nantes Université, France)
- Dr. Erwan BOUSSE (Maître de conférences, Nantes Université, France)
- Prof. Anne ETIEN (Professeur des universités, Université de Lille, France)
- Prof. Juergen DINGEL (Professor, Queen’s University, Canada)
- Prof. Benoit BAUDRY (Professor, KTH Royal Institute of Technology, Sweden)
- Dr. Javier TROYA (Associate Professor, Universidad de Málaga, Spain)
- Prof. Antoine BEUGNARD (Professeur, IMT Atlantique, France)
Résumé: La croissance continue de la complexité des logiciels soulève le besoin d’une gestion efficace de la complexité dans le cycle de vie du développement logiciel. L’ingénierie dirigée par les modèles (IDM) est un paradigme de développement qui répond à cette exigence en séparant les préoccupations par l’application de modèles. Un modèle est une abstraction spécifique d’un système qui peut être définie par un langage de modélisation dédié (LMD). Un LMD doté de fonctions d’exécution, appelé un LMD exécutable (LMDx), enrichit la qualité de la 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 principale et la plus répandue dans le domaine du génie logiciel. Bien qu’il existe de nombreux cadres de test pour les langages de programmation à usage général, la fourniture d’installations de test pour un LMDx donné reste une tâche coûteuse et difficile.
Dans cette thèse, nous proposons un cadre de test générique pour les DSL exécutables. Étant donné un LMDx, le cadre fournit un langage de test qui prend en charge l’utilisation de concepts spécifiques au LMDx dans la définition des cas de test. Cela permet aux utilisateurs du LMDx, à savoir les experts du domaine, d’écrire des cas de test pour leurs modèles. Les cas de test écrits peuvent être exécutés sur les modèles et les résultats des tests seront produits. Pour aider davantage les experts du domaine à tester les modèles, le cadre offre trois services supplémentaires : (i) la mesure de la qualité des tests pour s’assurer que les cas 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 cas de test écrits à détecter les défauts de régression.
Nous fournissons un support d’outils pour le cadre de travail au niveau du studio GEMOC d’Eclipse. Eclipse GEMOC Studio et évaluons sa généricité par son application sur plusieurs LMDx de différents domaines d’application.
In this thesis, we propose a generic testing framework for executable DSLs. Given an xDSL, the framework provides a testing language that supports the use of xDSL-specific concepts in the definition of test cases. This enables the xDSL’s users, namely the domain experts, to write test cases for their models. The written test cases can be executed on the models and the test results will be produced. To further support the domain expert in efficiently testing models, the framework offers three supplementary services: (i) test quality measurement to ensure that the written test cases are good enough; (ii) test debugging to localize the fault of the model under test in case of test failure; and (iii) automatic test improvement to strengthen the ability of written test cases in detecting regression faults.
We provide tool support for the framework atop the Eclipse GEMOC Studio and evaluate its genericity through its application on several xDSLs of different application domains.