On Model-based Testing of GALS Systems. (Etude de génération de tests à partir d'un modèle pour les systèmes GALS)

Cette these porte sur la generation de tests a partir d’un modele pour les systemes GALS (Globalement Asynchrones et Localement Synchrones). La combinaison des aspects synchrones et asynchrones en font des systemes complexes, imposant de recourir a de nouvelles methodes d’analyse. Pour faire face a cette complexite, nous explorons trois directions : (1) techniques pour les composants synchrones ; (2) techniques pour les protocoles de communication entre les composants ; et (3) techniques pour des systemes GALS complets, combinant les resultats des deux directions precedentes.Dans la premiere direction, nous explorons des techniques formelles pour le test fonctionnel de composants synchrones. En tant qu’etude de cas, nous reprenons l’algorithme d’authentification de message (MAA), une fonction cryptographique concue au milieu des annees 80. Nous formalisons cet algorithme en tant que flux de donnees synchrone. La modelisation et la validation du MAA nous ont permis de decouvrir diverses erreurs dans les specifications (informelles et formelles) prealables du MAA, les vecteurs de test et code des normes ISO 1987 et ISO 1990 ; dans les compilateurs et outils de verification que nous avons utilises.Dans la seconde direction, nous explorons la formalisation et le test fonctionnel d’un protocole de communication. Dans notre etude de cas, nous evaluons le protocole d’etablissement d’une liaison securise au niveau de la couche de transport (TLS), responsable de l’authentification et de l’echange de cles necessaires pour etablir ou reprendre une communication securisee. Notre modele de la version 1.3 TLS a ete valide par une approche utilisant notre nouvel outil de generation de cas de test de conformite a la volee, nomme TESTOR, developpe a partir de la boite a outils CADP. Cet outil explore le modele et genere automatiquement un ensemble de cas de tests ou un graphe de test complet (CTG),a executer sur une implementation physique d’un systeme.Dans la troisieme direction, nous proposons une methodologie de test permettant d’analyser les systemes GALS dans leur ensemble. Nous tirons parti de la generation de tests de conformite des systemes asynchrones pour deriver automatiquement des scenarios realistes (contraintes d’entrees et oracles), qui sont ardus a concevoir manuellement et sujet d’erreurs. Ainsi, notre methodologie integre (1) modeles concurrents synchrones et asynchrones; (2) les tests unitaires fonctionnels et les tests de conformite comportementale; et (3) diverses methodes formelles et leurs outils. Nous illustrons notre methodologie sur un exemple simple, mais representatif inspire des voitures autonomes.