Thèse soutenue

Rendre agile les tests d'intégration des systèmes avioniques par des langages dédiés

FR  |  
EN
Auteur / Autrice : Robin Bussenot
Direction : Christian PerceboisHervé Leblanc
Type : Thèse de doctorat
Discipline(s) : Réseaux, Télécoms, Systèmes et Architecture
Date : Soutenance le 16/07/2018
Etablissement(s) : Toulouse 3
Ecole(s) doctorale(s) : École doctorale Mathématiques, informatique et télécommunications (Toulouse)
Partenaire(s) de recherche : Laboratoire : Institut de Recherche en Informatique de Toulouse (1995-....)

Mots clés

FR  |  
EN

Résumé

FR  |  
EN

Dans l'ingénierie avionique, les tests d'intégration sont cruciaux : ils permettent de s'assurer du bon comportement d'un avion avant son premier vol, ils sont nécessaires au processus de certification et permettent des tests de non-régression à chaque nouvelle version d'un système, d'un logiciel ou d'un matériel. La conception d'un test d'intégration coûte cher car elle mêle la réalisation de la procédure, le paramétrage de nombreux outils couplés au banc de test ainsi que l'adressage des interfaces du système testé. Avec des procédures de test écrites en langage naturel, l'interprétation des instructions d'un test lors de son rejeu manuel peut provoquer des erreurs coûteuses à corriger, en raison notamment des actions précises à entreprendre lors de l'exécution d'une instruction de test. La formalisation et l'automatisation de ces procédures permettraient aux équipes de testeurs de se concentrer sur la réalisation de nouveaux tests exploratoires et sur la mise au point de tels systèmes au plus tôt. Or, un système avionique est composé de plus d'une centaine de systèmes embarqués, chacun concernant des compétences spécifiques. Notre contribution est alors un framework orchestrant les langages de test dédiés à l'intégration de systèmes avioniques dans une vision Agile. Nous introduisons tout d'abord le concept de langage spécifique à un domaine (Domain Specific Language ou DSL) et montrons comment nous l'utilisons pour la formalisation des procédures de test dédiées à un type de système particulier. Ces langages devront pouvoir être utilisés par des testeurs avioniques qui n'ont pas forcément de compétences en informatique. Ils permettent l'automatisation des tests d'intégration, tout en conservant l'intention du test dans la description des procédures. Puis, nous proposons l'approche BDD (Behavior Driven Development) pour valider l'intégration de systèmes par scénarios comportementaux décrivant le comportement attendu de l'avion. Nous nommons Domain Specific Test Languages (DSTL) les langages utilisés par les testeurs. A chaque système (ATA ou Air Transport Association of America) correspond un DSTL métier. Un premier DSTL concernant les systèmes de régulation de l'air a été développé entièrement en tant que preuve du concept à partir de procédures existantes pseudo-formalisées. L'expérimentation s'est poursuivie avec les calculateurs standardisés IMA (Integrated Modular Avionic) pour lesquels les procédures de test sont décrites en langage naturel et sont donc non automatisables. A partir d'un corpus de procédures, nous proposons un premier processus empirique d'identification des patrons de phrases peuplant un DSTL. Le corpus fourni est composé de dix procédures totalisant 108 chapitres de test et 252 tests ou sous-tests comportant au total 3708 instructions pour 250 pages Word. Rendre agile ces tests d'intégration consiste à proposer une approche collaborative pour formaliser un DSTL que ce soit pour les patrons de phrase de la grammaire concrète ou pour les patrons de transformations vers des langages exécutables.