Vérification de propriétés de conception à l'exécution à l'aide d'une approche IDM, model@run.time verification - Application aux véhicules connectés autonomes

par Hassan Loulou

Projet de thèse en Informatique

Sous la direction de Cherif Larouci et de Sébastien Saudrais.

Thèses en préparation à Paris Saclay , dans le cadre de Sciences et Technologies de l'Information et de la Communication , en partenariat avec Université Paris-Sud (établissement de préparation de la thèse) depuis le 01-03-2014 .


  • Résumé

    L'ingénierie dirigée par les modèles (IDM) a été proposée par l'Object Management Group (OMG) en 2000 (Model-Driven Engineering, MDE) et est utilisée pour le développement et la maintenance de systèmes avec une dominante logicielle [1]. Le concept de modèle est au centre de l'IDM et représente de manière abstraite les différents éléments du système. Lors d'un processus de développement, plusieurs modèles peuvent être utilisés. Les transformations de modèles permettent d'effectuer le lien entre les modèles et de garantir la cohérence des propriétés. L'ensemble des modèles et des transformations suit le processus de conception du système et offre la possibilité de passer d'une préoccupation à une autre en offrant des passerelles automatisées. L'utilisation de l'IDM lors de la conception et du développement d'une application embarquée, un ensemble de propriétés est vérifié sur les modèles utilisés, de manière formelle ou non, afin de validé l'application désirée et de procéder à la phase de codage. Ces propriétés peuvent portées par exemple sur la sûreté de fonctionnement, des temps de réponses, de la qualité de service ou des charges réseaux et processeurs. Une fois l'application validée, produite et exécutée, il est nécessaire de pouvoir vérifier que les propriétés validées théoriquement lors de la conception, le sont toujours à l'exécution. Dans le cas contraire, les propriétés non-vérifiées doivent être identifiables afin de proposer une adaptation ou une modification de l'application. L'utilisation de l'IDM permettra d'assurer la traçabilité des propriétés depuis la phase de conception jusqu'à l'analyse de l'exécution à l'aide de transformations de modèles. Le concept de model@run.time permettra d'avoir le même niveau d'abstraction lors de ses deux phases [2, 3, 4]. L'objectif de la thèse est de proposer une méthodologie permettant de vérifier que les propriétés validées lors de la conception le sont toujours à l'exécution. Une étude bibliographique permettra de faire un état de l'art sur l'utilisation des modèles à l'exécution et de la vérification formelle de propriétés. La méthodologie s'intéressera dans un premier temps à la vérification de propriétés en lien avec le mesurage de taille fonctionnelle [5, 6] puis sera étendue à d'autres types de propriétés (sûreté de fonctionnement, temps de réponses, qualité de service,…). Un cas d'étude portant sur une application transport, un steer-by-wire par exemple, permettra de valider la méthodologie proposée.

  • Titre traduit

    Verifying Design Properties at Runtime Using Models@Run.Time - Application to Autonomous Connected Vehicles


  • Résumé

    Autonomous Connected Vehicles (ACVs) are Cyber-physical systems (CPS) where the computational world and the real one meet. These systems require a rigorous validation process that starts at design phase and continues after the software deployment. Models@Runtime has appeared as a new paradigm for continuously monitoring software systems execution in order to enable adaptations whenever a change, a failure or a bug is introduced in the execution environment. In this thesis, we are going to tackle ACVs environment where vehicles tries to collaborate and share their data in a secure manner. Different modeling approaches are already used for expressing access control requirements in order to impose security policies. However, their validation tools do not consider the impacts of the interaction between the functional and the security requirements. This interaction can lead to unexpected security breaches during the system execution and its potential runtime adaptations. Also, the real-time prediction of traffic states using crowd sourcing data could be useful for proposition adaptations to AVCs cooperation models. Nevertheless, it has not been sufficiently studied yet. To overcome these limitations, many issues should be addressed: • The evolution of the system functional part must be considered during the validation of the security policy and attack scenarios must be generated automatically. • An approach for designing and automatically detecting security anti-patterns might be developed. Furthermore, new reconfigurations for access control policies also must be found, validated and deployed efficiently at runtime. • ACVs need to observe and analyze their complex environment, containing big-data streams to recommend new cooperation models, in near real-time. In this thesis, we build an approach for sensing the ACVs environment, validating its access control models and securely reconfiguring it on the fly. We cover three aspects: • We propose an approach for guiding security models checkers to find the attack scenarios at design time automatically. • We design anti-patterns to guide the validation process. Then, we develop an algorithm to detect them automatically during models reconfigurations. Also, we design a mechanism for reconfiguring the access control model and we develop a lightweight modular framework for an efficient deployment of new reconfigurations. • We build an approach for the real-time monitoring of dynamic data streams to propose adaptations for the access policy at runtime. The proposed approach was validated using several examples related o ACVs. the results of our experimentations prove the feasibility of this approach.