Méthodologie de développement de véhicules autonomes sûrs à partir d'exigences fonctionnelles et non fonctionnelles

par Yasmine Assioua

Projet de thèse en Information, communications, électronique

Sous la direction de Renaud Pacalet et de Rabéa Ameur-Boulifa.

Thèses en préparation à l'Institut polytechnique de Paris , dans le cadre de École doctorale de l'Institut polytechnique de Paris , en partenariat avec Laboratoire de Traitement et Communication de l'Information (laboratoire) et de LabSoc – System on Chip (equipe de recherche) depuis le 08-01-2020 .


  • Résumé

    L'objectif de cette thèse est d'améliorer le processus de conception du logiciel au sens large, et à fortiori chez Renault en développant des méthodes et des outils susceptibles d'améliorer les produits en termes de performance et de robustesse. Elle vise à proposer un environnement pour la maîtrise du développement de software qui se nourrit des spécifications présentes dans le flot type MBSE (Model-Based System Engineering – Ingénierie de systèmes basée sur des modèles). Pour ce faire, nous suggérons de décrire de manière précise et non ambiguë toutes les caractéristiques du système à développer. Plus précisément, nous proposons de formaliser des exigences, fonctionnelles, de sûreté et de sécurité, héritées des systèmes. Cette formalisation sera ensuite intégrée dans un flot de développement de logiciel, qui à partir des modèles (machines d'états)validés,sera alors généré automatiquement du code sûr. Notre objectif est donc d'intégrer des phases de vérification formelle des exigences dans le flot de définition d'architectures ainsi que génération automatique des modèles de type SysML, garantissant ainsi une stricte équivalence entre les étapes du flot. Aujourd'hui, l'architecture est définie dans un flot de conception de systèmes basée sur des modèles et les exigences et une partie des exigences sont stockées dans l'outil de gestion d'exigences DOORS [2]. Mais il n'existe pas de relation définie entre les modèles et les exigences correspondantes. Le sujet s'attache à faire les liens entre DOORS et les différents flots pré-cités. En plus de la problématique de la traçabilité, le sujet s'attache à étudier les problèmes de cohérence et complétude en formalisant les modèles qui seront sûrs par construction. Ces preuves formelles sont des éléments critiques pour assurer la sûreté et la sécurité des systèmes en cours de définition. Les approches développées lors de la thèse permettront de s'assurer que chaque étape spécifiée dans la méthode sera conforme au standard ISO 26262 pour des niveaux d'ASIL élevés. De manière plus pragmatique, la thèse devra délivrer un framework, au sens outil permettant de faire le lien automatique ente les exigences issues du flot MBSE, en les complétant le cas échéant (propositions d'exigences complétées à valider par un expert métier), et en vérifiant leurs cohérences. Cette étape permettra alors de générer automatiquement un code exécutable avec ses propriétés vérifiées. Code qui sera livré aux équipes de développement. Le flot pourrait s'enrichir également de tests pour les exigences ne pouvant pas être formellement vérifiées (comme proposé par STIMULUS, par exemple). Ainsi, un lien automatique entre les flots MBSE et MBSW (en particulier, dans l'implémentation de MagicDraw), avec limitation d'intervention humaine participera à une génération plus sûre de code. Verrous scientifiques adressés par la thèse. Les verrous scientifiques ciblés par cette thèse concernent l'analyse et la validation rigoureuse des exigences (fonctionnelle et de sûreté), ce qui est peu abordé dans la littérature. L'approche préconisée permettra la conception de systèmes avec une garantie de 100% de conformité aux exigences et la qualité du “zéro défaut”. Notre but est d'améliorer la méthodologie de conception du logiciel embarqué afin d'analyser les différents types d'exigences et tout au long du flot: les exigences de sûreté, et fonctionnelles et de sécurité.

  • Titre traduit

    Methodology for the development of safe autonomous vehicles based on functional and non-functional requirements


  • Résumé

    The objective of this thesis is to improve the software design process in the global sense, and also at Renault, by developing methods and tools that can improve products in terms of performance and robustness. It aims to provide an environment for the control of software development that is based on the specifications in MBSE (Model-Based System Engineering). To do this, we suggest that all the characteristics of the system to be described precisely and unambiguously. More specifically, we propose to formalize functional, safety and security requirements inherited from the systems. This formalisation will then be integrated into a software development flot, which will then automatically generate secure code from validated models (state machines). Our objective is therefore to integrate phases of formal vérification requirements into the flot of définition architectures as well as automatic generation of SysML-type models, thus ensuring strict equivalence between the steps of flot. Today, the architecture is defined in a model-based system design flot and the requirements and some of the requirements are stored in the DOORS requirement management tool[2]. But there is no relationship specified between the models and the corresponding requirements. The subject focuses on the links between DOORS and the various flots mentioned above. In addition to the issue of traceability, the subject is concerned with studying the problems of coherence and completeness by formalising the models that will be safe by construction. This formal evidence is critical to ensure the safety and security of ongoing systems. The approaches developed during the thesis will ensure that each step specified in the method will comply with the ISO 26262 standard for high ASIL levels. More pragmatically, the thesis will have to deliver a framework, in the sense of a tool allowing the automatic link between the requirements from MBSE, by completing them if necessary (proposals of completed requirements to be validated by an expert), and verifying their coherence. This step will then automatically generate an executable code with its verified properties . Code that will be delivered to the development teams. The flot could also be enriched with tests for requirements that cannot be formally verified (as proposed by STIMULUS, for example). Thus, an automatic link between flots MBSE and MBSW (in particular, in the implementation of MagicDraw), with limited human intervention, will contribute to a more secure code generation. Scientifique lockes addressed by the thesis. The scientifique locks targeted by this thesis concern the rigorous analysis and validation of requirements (functional and safety), which is not well addressed in the literature. The recommended approach will allow the design of systems with a 100% guarantee of compliance with the requirements and the quality of "zero defect". Our goal is to improve the design methodology of the embedded software to analyze the different types of requirements and throughout flot: safety, and functional and security requirements.