Les outils de développement de logiciels système sûrs d’AdaCore se frottent à l’automobile

AdaCore

Lors de l’événement TU-Automotive Detroit qui s’est tenu la semaine dernière aux Etats-Unis, la société franco-américaine AdaCore a démontré comment ses environnements de développement et de vérification de logiciels pour des applications critiques de sécurité peuvent rationaliser la production et la vérification de logiciels sûrs ...et sécurisés utilisés dans les automobiles à conduite autonome. AdaCore s’inscrit ainsi dans un mouvement où les entreprises qui ont acquis pendant de nombreuses années des compétences pointues dans le domaine du développement critique dans l’avionique (comme par exemple le franco-allemand Sysgo) se tournent vers le monde automobile dont les contraintes, avec l'arrivée de la voiture autonome, se rapprochent de celles rencontrées dans les avions.

Les experts américains en sécurité des transports, notamment ceux du DoT (Department of Transports) et ceux de la NHTSA (National Highway Traffic Safety Administration) encouragent par exemple les ingénieurs impliqués dans le développement de systèmes d’aide à la conduite à utiliser les principes de l'ingénierie des systèmes utilisés avec succès depuis des décennies dans les programmes aérospatiaux et de Défense. Dans cette veine, le document “Automated Driving Systems 2.0: A Vision for Safety” émis par le DoT exhorte les entreprises technologiques travaillant sur les systèmes ADAS (Advanced Driver Assistance Systems) à adopter directives, meilleures pratiques, principes de conception et normes industrielles proches de ceux mis en œuvre dans l'aviation, l'espace et le militaire. Car, au sein des voitures autonomes, le nombre de lignes de code dépasse désormais le nombre de celles présentes dans un avion commercial moderne.

Dans ce contexte, les produits d’AdaCore incluent la suite d'outils de développement et de vérification dirigés par les modèles QGen, qui génèrent du code dans le langage Misra C ou le langage Spark formellement analysable à partir d'un sous-ensemble sécurisé de modèles Simulink et Stateflow. Sont également concernés les environnements de développement Gnat Pro Ada, C et C ++, les outils d'analyse reposant sur des méthodes formelles de Spark Pro et l'analyseur statique avancé de CodePeer pour Ada, qui permet de détecter les vulnérabilités logicielles.