On Model-based Testing of GALS Systems - TEL - Thèses en ligne Access content directly
Theses Year : 2019

On Model-based Testing of GALS Systems

Etude de génération de tests à partir d'un modèle pour les systèmes GALS

Abstract

This dissertation focuses on the model-based testing of GALS (GloballyAsynchronous and Locally Synchronous) systems, which are inherentlycomplex because of the combination of synchronous and asynchronous aspects.To cope with this complexity, we explore three directions:(1) techniques for synchronous components;(2) techniques for communication protocols between components; and(3) techniques for complete GALS systems, combining theresults of the two previous directions.In the first direction, we explore formal techniques for the functionaltesting of synchronous components.As a case-study, we reconsider the Message Authenticator Algorithm(MAA), a pioneering cryptographic function designed in the mid-80s, andformalize it as a synchronous dataflow.The modeling and validation of the MAA enabled us to discover variousmistakes in prior (informal and formal) specifications of the MAA, thetest vectors and code of the ISO 1987 and ISO 1990 standards, and incompilers and verification tools used by us.In the second direction, we explore the formalization and the functionaltesting of a communication protocol. As a case-study, we reconsider the formalization of the Transport Layer Security (TLS) handshake, a protocol responsible for the authentication and exchange of keys necessary to establish or resume a secure communication.Our model of the TLS version 1.3 has been validated by an approach using our new on-the-fly conformance test case generation tool, named TESTOR, developed on top of the CADP toolbox.TESTOR explores the model and generates automatically a set of controllable testcases or a complete test graph (CTG) to be executed on a physical implementation ofthe system.In the third direction, we propose a testing methodology for GALSsystems combining the two previous directions.We leverage the conformance test generation for asynchronous systems toautomatically derive realistic scenarios (inputs constraints andoracles), which are necessary ingredients for the unit testing of individual synchronouscomponents, and are difficult and error-prone to design manually.Thus our methodology integrates(1) synchronous and asynchronous concurrent models;(2) functional unit testing and behavioral conformance testing;and (3) various formal methods and their tool equipments.We illustrate our methodology on a simple, but relevant example inspiredby autonomous cars.
Cette thèse porte sur la génération de tests à partir d’un modèle pour les systèmes GALS (Globalement Asynchrones et Localement Synchrones). La combinaison des aspects synchrones et asynchrones en font des systèmes complexes, imposant de recourir à de nouvelles méthodes d’analyse. Pour faire face à cette complexité, 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 systèmes GALS complets, combinant les résultats des deux directions précédentes.Dans la première direction, nous explorons des techniques formelles pour le test fonctionnel de composants synchrones. En tant qu’étude de cas, nous reprenons l’algorithme d’authentification de message (MAA), une fonction cryptographique conçue au milieu des années 80. Nous formalisons cet algorithme en tant que flux de données synchrone. La modélisation et la validation du MAA nous ont permis de découvrir diverses erreurs dans les spécifications (informelles et formelles) préalables du MAA, les vecteurs de test et code des normes ISO 1987 et ISO 1990 ; dans les compilateurs et outils de vérification que nous avons utilisés.Dans la seconde direction, nous explorons la formalisation et le test fonctionnel d’un protocole de communication. Dans notre étude de cas, nous évaluons le protocole d’établissement d’une liaison sécurisé au niveau de la couche de transport (TLS), responsable de l’authentification et de l’échange de clés nécessaires pour établir ou reprendre une communication sécurisée. Notre modèle de la version 1.3 TLS a été validé par une approche utilisant notre nouvel outil de génération de cas de test de conformité à la volée, nommé TESTOR, développé à partir de la boı̂te à outils CADP. Cet outil explore le modèle et génère automatiquement un ensemble de cas de tests ou un graphe de test complet (CTG),à exécuter sur une implémentation physique d’un système.Dans la troisième direction, nous proposons une méthodologie de test permettant d’analyser les systèmes GALS dans leur ensemble. Nous tirons parti de la génération de tests de conformité des systèmes asynchrones pour dériver automatiquement des scénarios réalistes (contraintes d’entrées et oracles), qui sont ardus à concevoir manuellement et sujet d’erreurs. Ainsi, notre méthodologie intègre (1) modèles concurrents synchrones et asynchrones; (2) les tests unitaires fonctionnels et les tests de conformité comportementale; et (3) diverses méthodes formelles et leurs outils. Nous illustrons notre méthodologie sur un exemple simple, mais représentatif inspiré des voitures autonomes.
Fichier principal
Vignette du fichier
MARSSO_2019_diffusion.pdf (2.35 Mo) Télécharger le fichier
Origin : Version validated by the jury (STAR)
Loading...

Dates and versions

tel-02948083 , version 1 (24-09-2020)

Identifiers

  • HAL Id : tel-02948083 , version 1

Cite

Lina Marsso. On Model-based Testing of GALS Systems. Formal Languages and Automata Theory [cs.FL]. Université Grenoble Alpes, 2019. English. ⟨NNT : 2019GREAM078⟩. ⟨tel-02948083⟩
250 View
272 Download

Share

Gmail Facebook X LinkedIn More