Logo Parasoft Rechercher

Découvrez GoogleTest certifié TÜV avec Agentic AI pour les tests C/C++ !
Plus de détails »

Conformité des logiciels ISO 26262 dans l'industrie automobile

MISRA C 2023

MISRA C est un ensemble de recommandations de codage pour le langage de programmation C. Cette norme vise à améliorer la sécurité des logiciels en prévenant les erreurs de codage susceptibles d'entraîner des défaillances à l'exécution (et d'éventuels problèmes de sécurité), notamment en évitant les constructions problématiques connues du langage C.

Au fil des ans, de nombreux développeurs de systèmes embarqués se sont plaints (et se plaignent toujours) du fait que la norme MISRA C était trop stricte et que le coût de l'écriture d'un code entièrement conforme était difficile à justifier. De manière réaliste, étant donné que la norme MISRA C est appliquée aux logiciels critiques pour la sécurité, la valeur de l'application de la norme à un projet dépend de facteurs tels que :

  • Risque de dysfonctionnement du système en raison d'une défaillance logicielle
  • Coût d'une défaillance du système pour l'entreprise
  • Outils de développement et plateforme cible
  • Niveau d'expertise du développeur

Les programmeurs doivent trouver un terrain d’entente pratique qui satisfasse l’esprit de la norme tout en revendiquant la conformité MISRA sans gaspiller leurs efforts sur des activités sans valeur ajoutée.

Lors de la première introduction de MISRA C dans un projet , généralement lorsqu'il existe déjà du code, le document clé est le plan de recatégorisation des directives. Ce document recense toutes les directives et règles, et identifie les catégories qui ont été recatégorisées. Il est toutefois important d'appliquer la même catégorisation logique au nouveau code. Par exemple, le diagramme suivant illustre une partie d'un plan de recatégorisation.

Rapport de conformité MISRA

Le document de conformité « MISRA C 2023 » déconseille toute reclassification d'une classification moins stricte vers une classification plus stricte. De plus, il est possible de supprimer complètement les règles consultatives après avoir examiné les types de violations avec l'équipe.

L'obligation de documenter les écarts n'est nécessaire que pour toutes les règles obligatoires. Toute violation du code adopté doit être examinée. Les écarts doivent clairement indiquer que les violations ne compromettent pas la sécurité et la sûreté. Indépendamment de la recatégorisation, si une constatation compromet la sécurité ou la sûreté du système est constatée, le problème doit être résolu. De plus, les modifications apportées au code existant peuvent introduire d'autres problèmes que le développeur n'a pas clairement perçus.

Un homme et une femme discutent à l'intérieur d'un bâtiment technologique

Améliorez vos tests logiciels avec les solutions Parasoft.

Contactez-Nous