Le programme de recherche Ingénierie numérique collaborative augmentée vise à développer des outils et des méthodes pour faciliter le travail des ingénieurs dans la conception de systèmes complexes. Ces derniers se caractérisent par le fait qu’ils intègrent de multiples composants en interaction, avec une part croissante de logiciels.
Un lanceur spatial, un avion de ligne, ou même une automobile sont devenus ce qu’on appelle des systèmes de systèmes. Ces grands objets industriels sont constitués de multiples composants technologiques – mécatroniques, électroniques et, de plus en plus, informatiques – qui interagissent en permanence et qui peuvent mettre en œuvre des fonctions critiques. Ce sont des ensembles dont le fonctionnement atteint des niveaux de complexité très élevé.
L’objectif du programme Ingénierie Numérique Collaborative Augmentée (INCA) est de développer des méthodes et des outils pour assister les ingénieurs dans le développement de ces systèmes complexes à logiciels prépondérants (Software Intensive Systems).
Dans cette optique, les chercheurs axent leurs efforts sur le paradigme de l’ingénierie dirigée par les modèles (ou MBSE pour Model Based System Engineering). Il consiste à formaliser toutes les connaissances d’ingénierie avec un outil informatique. Dès lors, il devient possible d’automatiser les processus et méthodes, vérifier la cohérence des valeurs et simuler le fonctionnement du système avant d’en lancer la conception. Les données de simulation peuvent aussi être transformées pour générer automatiquement le code informatique qui sera embarqué dans le système.
L’outil phare associé à cette approche est Papyrus, la plateforme d’ingénierie système dirigée par les modèles, publiée par le CEA-List sous licence Open Source auprès de la fondation Eclipse. Cette plateforme fait l’objet de partenariats avec des industriels comme SNCF Réseau. Elle est aussi utilisée dans les PME, comme Sherpa Engineering ou CIL4Sys, qui l’intègrent dans leurs prestations et leurs outils.
Les chercheurs du programme INCA cherchent à améliorer le travail des concepteurs en mettant en œuvre les techniques de développement formel, un domaine d’excellence du CEA-List. En s’appuyant sur des formalismes mathématiques, il est possible de développer des logiciels corrects par construction dont l’assurance de certaines propriétés critiques est prouvée mathématiquement.
Un premier exemple est la plateforme Frama-C, qui est ainsi utilisée par Airbus et plusieurs grands industriels depuis des années afin de débusquer les bugs dans les programmes et les rendre plus sûrs. L’objectif de cet axe de recherche est d’étendre l’usage de ces techniques à d’autres domaines.
Un second exemple est le modèle de calcul Polygraph qui est une méthode formelle dirigée par les modèles, qui facilite la conception et la validation de systèmes temps-réel. Il a été transféré par le CEA-List à la startup ALKALEE pour concevoir et surveiller le comportement des systèmes électroniques d’un véhicule.
En savoir plus sur les méthodes formelles
L’intelligence artificielle contribue, elle aussi, à faciliter le travail des ingénieurs. Les chercheurs travaillent notamment sur des chatbots qui vont conseiller les concepteurs de systèmes en leur proposant des solutions déjà mises en œuvre dans d’autres projets ou même d’autres secteurs d’activité.
En savoir plus sur l’IA pour l’ingénierie des systèmes
Le CEA-List a adopté le modèle open source comme un outil pour diffuser les innovations issues de ses groupes de recherche auprès de l’industrie. En droite ligne avec cette stratégie, le programme INCA a diffusé plusieurs projets majeurs sous licences libres avec un certain succès pour Papyrus dans le domaine de l’ingénierie dirigée par les modèles, Frama-C dans la validation formelle de code informatique et LIMA dans l’analyse linguistique.
En savoir plus sur les outils d’ingénierie Open Source
Pour ce programme, le CEA-List dispose de deux atouts maîtres :