Logo Parasoft Rechercher

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

Blog Parasoft

Les 15 meilleurs outils de conformité MISRA pour C et C++ en 2026

By Ricardo Camacho • 10 septembre • 14 min de lecture
10 septembre | 14 min de lecture
By Ricardo Camacho
Texte à gauche : Les 15 meilleurs outils de conformité MISRA pour C et C++ en 2026. À droite, un graphique 3D coloré montre 3 personnes courant de manière compétitive sur des pistes constituées de petits blocs de construction colorés.

Vous recherchez des solutions conformes à la norme MISRA ? Consultez ce comparatif des 15 meilleurs outils MISRA pour C et C++ afin de choisir celui qui convient le mieux à votre développement de logiciels embarqués.

Points clés à retenir

  • La prise en charge de MISRA ne garantit pas une conformité totale à MISRA. Évaluez les éditions spécifiques de MISRA, la couverture des règles, la gestion des écarts et les preuves de conformité prises en charge par chaque outil.
  • Les pourcentages de couverture ne sont pas directement comparables. Les fournisseurs peuvent calculer la couverture selon des ensembles de directives ou des règles d'application automatique différents.
  • Les équipes soumises à la réglementation ont besoin de bien plus que la simple détection des infractions. L'aide à la qualification, le reporting, la traçabilité, l'établissement de référentiels et les preuves d'audit peuvent être tout aussi importants que le contrôle des règles.
  • Le choix du meilleur outil MISRA dépend de votre flux de travail de vérification global. Réfléchissez à la manière dont l'analyse statique s'intègre aux flux de travail des développeurs, à l'intégration continue et au déploiement continu (CI/CD), aux tests, à la couverture de code, à la traçabilité des exigences et aux rapports de conformité.

Choisir un outil MISRA ne se limite pas à vérifier si un analyseur statique affirme simplement être compatible MISRA. MISRA fournit des recommandations de codage pour développer des logiciels C et C++ sûrs, sécurisés et fiables. Cependant, les outils MISRA pour C et C++ peuvent différer sensiblement dans les domaines suivants :

  • Les normes qu'ils soutiennent.
  • Règles qu'ils automatisent.
  • Preuves de conformité qu'ils produisent.
  • Flux de travail de développement avec lesquels ils s'intègrent.

La solution de conformité MISRA la plus adaptée dépend de vos besoins spécifiques. Ce guide compare 15 outils pour le développement de logiciels embarqués réglementés et critiques pour la sécurité : des solutions de conformité complètes et des analyseurs statiques spécialisés aux options économiques.

Comparaison des outils MISRA C et C++ pour les équipes embarquées

La comparaison suivante constitue un point de départ pour l'évaluation des outils MISRA destinés au développement embarqué en C et C++.

Au lieu de considérer la prise en charge de MISRA comme un simple élément de liste de contrôle, tenez compte des points suivants :

  • Prise en charge de certaines éditions de MISRA.
  • Étendue de l'application automatisée des règles.
  • Comment chaque outil s'intègre à votre flux de travail de développement et de conformité.

Le choix approprié dépend également de vos besoins en fonctionnalités allant au-delà de l'analyse statique, telles que :

  • Gestion des écarts
  • Soutien à la qualification
  • Tests, traçabilité
  • Rapports centralisés
  • Preuves de conformité prêtes pour l'audit
OutilMeilleur ajustementÉditions MISRA prises en chargeConsidérations d'évaluation
Parasoft C / C ++test Flux de travail de vérification et de certification critiques pour la sécuritéMISRA C:2012, C:2023, C:2025 ; MISRA C++:2008, C++:2023Il convient d'examiner si l'analyse MISRA doit être liée aux tests unitaires, à la couverture, à la traçabilité, à l'intégration continue et à la livraison continue (CI/CD) et aux rapports de conformité.
Perforce QACApplication dédiée de la norme MISRA pour le C/C++ embarquéMISRA C:2012, C:2023, C:2025 ; MISRA C++:2008, C++:2023Examinez le fondement des demandes de couverture publiées et les preuves de qualification requises.
Suite d'outils LDRAVérification et certification des éléments critiques pour la sécuritéMISRA C:2012, C:2023, C:2025 ; MISRA C++:2008, C++:2023Déterminez les composants de la suite nécessaires à l'analyse, aux tests, à la couverture et à la traçabilité.
Espace polynôme de MathWorksAnalyse formelle et développement basé sur des modèlesMISRA C:2012, C:2023 ; MISRA C++:2008, C++:2023Déterminez quelles intégrations Bug Finder, Code Prover et MathWorks sont nécessaires.
Groupe Qt AxivionVérification d'architecture MISRA plusMISRA C:2012, C:2023, C:2025 ; MISRA C++:2008, C++:2023Il convient d'examiner si la gouvernance de l'architecture constitue un élément important de l'évaluation.
Perforce KlocworkAnalyse statique continue à grande échelleMISRA C:2012, C:2023, C:2025 ; MISRA C++:2008, C++:2023Comparez les capacités étendues de l'analyse SAST avec la profondeur des flux de travail MISRA dédiés.
CodeSonar AdaCoreAnalyse approfondie de l'ensemble du programmeMISRA C:2012, C:2023, C:2025 ; MISRA C++:2023Confirmer les éditions requises, les modèles de compilateur, les preuves de qualification et le flux de travail.
Couverture Black DuckAnalyse de la qualité, de la sécurité et de la conformité MISRA sur de vastes bases de codeMISRA C:2012, C:2023, C:2025 ; MISRA C++:2008, C++:2023Examiner la portée des règles et la manière dont les directives inapplicables sont traitées.
ÉCLAIR DE BUGSENGAnalyse spécialisée des normes de codage à haute intégritéMISRA C:2012, C:2023, C:2025 ; MISRA C++:2008, C++:2023Valider les affirmations de couverture des fournisseurs et les intégrations requises.
AbsInt Astrée + RuleCheckerAnalyse des erreurs d'exécution du Sound pour les systèmes C critiques de sécuritéMISRA C:2012, C:2023, C:2025 ; MISRA C++:2008, C++:2023Déterminer si une preuve d'erreur d'exécution est nécessaire parallèlement à l'application de la loi MISRA
PVS-StudioAnalyse statique générale avec diagnostics cartographiés MISRAMISRA C:2012, C:2023 ; MISRA C++:2008, C++:2023Distinguer les diagnostics cartographiés d'un flux de travail complet de conformité MISRA
Vector PC-lint PlusAnalyse statique embarquée légèreMISRA C:2012, C:2023, C:2025 ; MISRA C++:2008, C++:2023Évaluer les besoins en matière de rapports, de qualifications, de gouvernance et de vérification plus générale.
IAR C-STATAnalyse MISRA au sein des chaînes d'outils intégrées IARC:2012, C:2023 ; MISRA C++:2008, C++:2023Confirmer la prise en charge de l'édition MISRA et la certification de sécurité fonctionnelle pour la chaîne d'outils IAR requise et l'architecture cible.
Cppcheck / Cppcheck PremiumPoint d'entrée open source et évaluation à moindre coûtCppcheck : MISRA C : 2012 ; Premium : MISRA C : 2023, C : 2025 ; MISRA C++ : 2008, C++ : 2023N’attribuez pas les fonctionnalités premium de MISRA à la version open-source.
Systèmes d'assurance qualité QA-MISRAVérification MISRA ciblée pour C/C++MISRA C:2012, C:2023, C:2025 ; MISRA C++:2008, C++:2023Évaluer les exigences en matière de qualification, d'intégration et de flux de travail de conformité plus large.

Comment comparer la couverture MISRA, SAST et les flux de travail de conformité

Un pourcentage de couverture MISRA publié ne signifie pas nécessairement une conformité MISRA complète ni ne fournit une base équivalente pour comparer les outils.

Commencez par vérifier l' édition MISRA C ou MISRA C++ prise en charge , puis examinez la couverture au niveau des règles et la méthode de calcul du pourcentage utilisée par le fournisseur. Certaines directives ne peuvent être pleinement appliquées par la seule analyse statique et peuvent nécessiter un examen ou des processus supplémentaires.

La profondeur de l'analyse statique est importante.

Les violations de la MISRA peuvent être détectées par une analyse basée sur des modèles, une analyse du flux de contrôle ou une analyse plus approfondie du flux de données et des procédures, selon la directive et le code concernés.

Les outils diffèrent dans les techniques d'analyse qu'ils proposent, de sorte que deux produits prenant en charge la même édition MISRA peuvent ne pas détecter les violations de la même manière ou ne pas fournir une analyse équivalente sur une base de code complexe.

Réfléchissez à ce dont vous avez besoin au-delà d'un simple vérificateur de code MISRA. Certains outils de test statique de sécurité des applications (SAST) combinent le respect des normes de codage avec une détection plus large des défauts et des vulnérabilités, tandis que d'autres outils d'analyse statique MISRA se spécialisent davantage dans la conformité aux normes de codage.

Pour le développement réglementé et critique en matière de sécurité, ainsi que pour la conformité en matière de sécurité fonctionnelle des logiciels C et C++ , évaluez la façon dont l'outil gère :

  • déviations
  • Répressions
  • Lignes de base
  • Configurations du compilateur et de la construction
  • Code généré ou hérité
  • Soutien à la qualification
  • Rapports de conformité

Si MISRA fait partie d'un processus de vérification plus large, envisagez également son intégration avec :

  • Flux de travail des développeurs et CI/CD
  • Tests unitaires
  • Couverture du code structurel
  • Traçabilité des exigences
  • Preuves de conformité centralisées

Les 15 meilleurs outils de conformité MISRA pour les équipes C et C++ embarquées

Les outils de conformité MISRA suivants représentent un éventail d'approches, allant des analyseurs de normes de codage dédiés aux solutions plus larges de vérification et de qualité logicielle. Chaque outil est évalué selon les critères suivants :

  • Capacités MISRA
  • adéquation au développement embarqué
  • Flux de travail de conformité
  • Considérations relatives au développement de logiciels réglementés et critiques pour la sécurité

1. Test Parasoft C/C++

Idéal pour : Relier l'application de la loi MISRA à la vérification C/C++ critique pour la sécurité et aux preuves de conformité prêtes pour l'audit.

À qui s'adresse-t-il et pourquoi ? Les suites de test C/C++ de Parasoft sont destinées aux équipes travaillant sur des systèmes embarqués et critiques pour la sécurité, qui doivent se conformer à la norme MISRA dans le cadre d'un processus de vérification logicielle plus large. Elles permettent aux organisations de garantir une application cohérente de la norme MISRA et la correction des erreurs par les développeurs au sein des équipes, des bases de code, des chaînes d'outils et des versions, tout en reliant l'analyse statique aux tests unitaires, à la couverture structurelle du code, à la traçabilité des exigences, à l'automatisation CI/CD et à la production de rapports de conformité centralisés.

Principales fonctionnalités:

  • MISRA C:2012/2023, C:2025, MISRA C++:2008 et C++:2023 avec analyse basée sur les modèles, le flux de contrôle, le flux de données et l'analyse interprocédurale
  • Intégration IDE et CI/CD avec correction assistée par IA, gestion des écarts, définition des références, analyse centralisée et rapports de conformité
  • Tests unitaires intégrés, couverture de code structurelle et traçabilité des exigences pour une vérification et une preuve de conformité plus larges
  • Certification TÜV SÜD, assistance à la qualification et centralisation des rapports de conformité avec Parasoft DTP

Éléments à prendre en compte : Déterminer si l’équipe a principalement besoin d’un vérificateur MISRA autonome ou d’un flux de travail de vérification plus large qui relie l’analyse statique aux tests, à la couverture, à la traçabilité et aux preuves de conformité prêtes pour l’audit.

Sources à l'appui :

2. Perforce QAC

Idéal pour : Une application rigoureuse de la réglementation MISRA pour les programmes C et C++ embarqués.

À qui s'adresse-t-il et pourquoi ? Perforce QAC est une solution d'analyse statique spécialisée pour le développement C/C++ embarqué et critique, mettant l'accent sur le respect des normes de codage. Elle est parfaitement adaptée aux organisations qui nécessitent une analyse MISRA détaillée pour leurs bases de code évolutives, leurs compilateurs spécialisés et leurs environnements de développement réglementés. Perforce publie des matrices de conformité au niveau des règles pour ses modules de conformité MISRA.

Principales fonctionnalités:

  • Prise en charge des normes MISRA C:2012, C:2023, C:2025, MISRA C++:2008 et C++:2023
  • Analyse complète du programme et du flux de données avec prise en charge des compilateurs embarqués spécialisés
  • Modules de conformité, suppressions/déviations, définition des valeurs de référence, intégration CI/CD et rapports centralisés via Perforce Validate
  • Certification TÜV SÜD pour une utilisation dans le développement lié à la sécurité, incluant la validation des normes ISO 26262, IEC 61508, EN 50128, IEC 60880 et IEC 62304

Éléments à prendre en compte : Examinez le fondement des allégations d’application de la loi et déterminez les modules de conformité, les preuves de qualification, le support du compilateur et les capacités de production de rapports dont votre programme a besoin.

Sources à l'appui :

3. Suite d'outils LDRA

Idéal pour : Allier la conformité MISRA aux essais critiques de sécurité et au soutien à la certification

À qui s'adresse-t-il et pourquoi ? La suite d'outils LDRA est parfaitement adaptée aux équipes travaillant sur des systèmes embarqués et critiques pour la sécurité, qui souhaitent intégrer l'analyse MISRA à leurs activités de test et de certification logicielle. Sa suite d'outils modulaires accompagne les organisations qui ont besoin de se conformer aux normes de codage, d'effectuer des tests, d'assurer la couverture des exigences, de garantir leur traçabilité et de fournir des preuves de conformité tout au long du cycle de vie du développement logiciel.

Principales fonctionnalités:

  • Prise en charge des normes MISRA C:2012, C:2023, C:2025, MISRA C++:2008 et C++:2023
  • Analyse statique et vérification de la conformité MISRA avec exclusions de violations et rapports de conformité
  • Tests unitaires et d'intégration avec couverture structurelle, incluant la couverture des instructions, des branches et des MC/DC
  • Traçabilité des exigences et preuves de vérification et de certification centralisées
  • Suite d'outillage homologuée TÜV avec kits de qualification d'outils pour les normes de sécurité critiques applicables

Éléments à prendre en compte : Déterminer quels composants et modules optionnels de la suite d’outils LDRA sont nécessaires pour le flux de travail prévu en matière de MISRA, de tests, de traçabilité, de rapports et de qualification.

Sources à l'appui :

4. Espace polynomial de MathWorks

Idéal pour : l'analyse MISRA dans les environnements de vérification formelle et de développement basé sur des modèles.

À qui s'adresse Polyspace et pourquoi : Polyspace est parfaitement adapté aux équipes travaillant sur des systèmes embarqués et critiques pour la sécurité, utilisant MATLAB, Simulink, Embedded Coder ou le développement basé sur des modèles. Polyspace Bug Finder effectue une analyse statique des défauts et des violations des normes de codage, notamment MISRA, tandis que Polyspace Code Prover, disponible séparément, étend l'environnement avec une vérification formelle des erreurs d'exécution spécifiées.

Principales fonctionnalités:

  • Vérification des normes MISRA C:2012, C:2023, MISRA C++:2008 et C++:2023 avec couverture de règles publiée
  • Analyse statique utilisant des techniques de flux de contrôle, de flux de données, interprocédurales et d'interprétation abstraite
  • Analyse du code C/C++ écrit manuellement et généré
  • Intégration avec MATLAB, Simulink, Embedded Coder, les IDE et les flux de travail d'intégration continue
  • Soutien à la qualification pour le développement critique en matière de sécurité

Éléments à prendre en compte : Déterminer si Polyspace Bug Finder fournit le flux de travail MISRA requis et si l’organisation bénéficie de son intégration étroite avec l’environnement de développement basé sur des modèles MathWorks plus large.

Sources à l'appui :

5. Groupe Qt Axivion

Idéal pour : la conformité MISRA combinée à la vérification de l'architecture logicielle.

À qui s'adresse Axivion et pourquoi ? Axivion est parfaitement adapté aux équipes travaillant sur des systèmes embarqués et critiques qui souhaitent une analyse statique approfondie et une vérification de conformité MISRA, en parallèle d'une vérification continue de l'architecture logicielle. Il aide les équipes à identifier les défauts au niveau du code et les violations des normes de codage, tout en contrôlant les dépendances architecturales et en prévenant l'érosion structurelle des bases de code complexes ou évolutives.

Principales fonctionnalités:

  • MISRA C:2012, C:2023, C:2025, MISRA C++:2008 et C++:2023 avec couverture de toutes les règles automatiquement testables
  • Analyse des flux de contrôle et de données pour la détection des défauts et des violations des normes de codage
  • Gestion des écarts, analyse des deltas, intégration IDE et CI/CD, et rapports de conformité
  • Vérification continue de l'architecture pour détecter les violations et les dépendances architecturales
  • Assistance à la certification de sécurité fonctionnelle et à la qualification des outils pour le développement de systèmes critiques pour la sécurité

Éléments à prendre en compte : Déterminer si la vérification de l’architecture constitue une partie importante du processus de conformité et évaluer les capacités requises en matière d’analyse statique, de qualification et d’intégration pour l’environnement de développement cible.

Sources à l'appui :

6. Perforce Klocwork

Idéal pour : Déployer la conformité MISRA et SAST à grande échelle au sein de grandes équipes de développement.

À qui s'adresse-t-il et pourquoi ? Perforce Klocwork est parfaitement adapté aux organisations souhaitant se conformer à la norme MISRA dans le cadre d'un processus plus large de tests de sécurité statique des applications (SAST) et d'assurance qualité du code. Compatible avec le développement en C/C++ ainsi qu'avec plusieurs autres langages de programmation, il constitue une solution idéale pour les environnements logiciels vastes ou multilingues nécessitant une analyse centralisée et une gestion de la conformité.

Principales fonctionnalités:

  • Prise en charge des normes MISRA C:2012, C:2023, C:2025, MISRA C++:2008 et C++:2023
  • Analyse approfondie des flux de données et des chemins interprocéduraux pour détecter les défauts, les vulnérabilités de sécurité et les violations des normes de codage
  • Intégration des environnements de développement intégrés (IDE) et des processus CI/CD avec analyse différentielle et suppression des problèmes
  • Gestion centralisée de la conformité, rapports et contrôles qualité
  • Remédiation par l'intégration d'assistants de codage IA

Éléments à prendre en compte : Déterminer si le programme a principalement besoin de la conformité MISRA pour le C/C++ embarqué ou s’il bénéficie d’une solution SAST plus large prenant en charge plusieurs langages, normes de sécurité et équipes de développement.

Sources à l'appui :

7. CodeSonar AdaCore

Idéal pour : L'analyse statique approfondie des systèmes embarqués C/C++ complexes.

À qui s'adresse CodeSonar et pourquoi : CodeSonar est parfaitement adapté aux équipes travaillant sur des systèmes embarqués, critiques pour la sécurité et exigeant une intégrité élevée, qui ont besoin d'une vérification MISRA ainsi que d'une analyse approfondie des défauts logiciels et des vulnérabilités de sécurité. Son analyse complète du programme est particulièrement pertinente pour les bases de code complexes où les problèmes peuvent impliquer des interactions entre fonctions, modules, chemins d'exécution et flux de données.

Principales fonctionnalités:

  • Prise en charge des normes MISRA C:2012, C:2023, C:2025 et C++:2023
  • Analyse de programme complet utilisant l'interprétation abstraite et l'exécution symbolique
  • Analyse des flux de contrôle, des flux de données, de la contamination et des interactions entre les procédures pour les défauts et les vulnérabilités complexes
  • Intégration IDE et CI/CD avec historique centralisé de la gestion et de l'analyse des problèmes
  • Cartographies et rapports de conformité spécifiques à MISRA

Éléments à prendre en compte : Déterminer si l’exigence principale est une analyse statique approfondie et une analyse SAST ou un flux de travail de conformité MISRA plus large qui intègre également les tests logiciels, la couverture structurelle, la traçabilité des exigences et les preuves de qualification.

Sources à l'appui :

8. Couverture du Canard Noir

Idéal pour : SAST étendu et détection de défauts avec prise en charge MISRA.

À qui cela convient-il et pourquoi : Coverity est parfaitement adapté aux organisations souhaitant intégrer la vérification MISRA à un programme plus vaste de sécurité des applications et de qualité logicielle. Il prend en charge le développement C/C++ embarqué et critique pour la sécurité, tout en analysant plusieurs langages de programmation. Il est donc pertinent pour les organisations qui doivent gérer la conformité aux normes de codage, les défauts et les vulnérabilités de sécurité dans divers environnements logiciels.

Principales fonctionnalités:

  • Prise en charge des normes MISRA C:2012, C:2023, C:2025, MISRA C++:2008 et C++:2023
  • Analyse statique interprocédurale pour la détection de défauts complexes et de vulnérabilités de sécurité dans les fichiers et les fonctions
  • Vérification MISRA en parallèle avec CERT, AUTOSAR, CWE et autres normes de sécurité et de codage
  • Intégration des développeurs et des processus CI/CD avec gestion centralisée des problèmes, rapports de conformité et analyse des tendances
  • Assistance à la certification et à la qualification TÜV SÜD pour le développement de systèmes critiques pour la sécurité

Éléments à prendre en compte : Déterminer si le besoin principal est un SAST multilingue et étendu avec prise en charge de MISRA ou un flux de travail de vérification logicielle et MISRA plus axé sur les systèmes embarqués, qui relie également l’analyse statique aux tests, à la couverture structurelle et à la traçabilité des exigences.

Sources à l'appui :

9. BUGSENG ECLAIR

Idéal pour : une application rigoureuse de la norme MISRA sur les bases de code C/C++ actuelles et anciennes.

À qui s'adresse ECLAIR et pourquoi : ECLAIR est parfaitement adapté aux équipes C/C++ travaillant sur des systèmes embarqués et critiques pour la sécurité, qui ont besoin d'une vérification MISRA détaillée et d'un contrôle rigoureux des configurations de conformité. Sa compatibilité avec plusieurs générations de normes MISRA C et C++ le rend particulièrement pertinent pour les organisations qui gèrent des bases de code évolutives tout en adoptant les nouvelles éditions MISRA.

Principales fonctionnalités:

  • Prise en charge des normes MISRA C:2012, C:2023, C:2025, MISRA C++:2008 et C++:2023
  • Analyse statique sémantique des violations MISRA, des défauts logiciels et des vulnérabilités de sécurité
  • Gestion des écarts, analyse configurable, indicateurs et rapports de conformité
  • Détection automatique du compilateur/de la chaîne d'outils avec intégration IDE et CI/CD
  • Kits de certification et de qualification TÜV SÜD pour le développement critique en matière de sécurité

Éléments à prendre en compte : Évaluer le progiciel ECLAIR et les options de qualification requis pour les éditions MISRA du projet, les besoins d’analyse et les normes de sécurité fonctionnelle applicables.

Sources à l'appui :

10. AbsInt Astrée + RuleChecker

Idéal pour : la vérification des règles MISRA combinée à une analyse statique robuste pour les logiciels C/C++ critiques pour la sécurité.

À qui s'adresse cette solution et pourquoi : Astrée avec RuleChecker est parfaitement adapté aux équipes travaillant sur des systèmes embarqués critiques pour la sécurité et qui ont besoin d'une vérification de conformité MISRA ainsi que d'une analyse rigoureuse des erreurs d'exécution et des conflits d'accès aux données. Le RuleChecker intégré effectue l'analyse de conformité aux normes de codage MISRA, tandis qu'Astrée y ajoute une analyse sémantique robuste basée sur l'interprétation abstraite afin d'analyser le comportement du programme et de prouver l'absence d'erreurs d'exécution spécifiées.

Principales fonctionnalités:

  • Vérification de la conformité aux normes MISRA C:2012, C:2023, C:2025, MISRA C++:2008 et C++:2023 via RuleChecker
  • Vérification des règles de codage, métriques du code et analyse de conformité via RuleChecker
  • Analyse sémantique robuste avec Astrée pour prouver l'absence d'erreurs d'exécution et de conflits de données spécifiés.
  • Intégration de RuleChecker avec Astrée pour renforcer l'analyse des règles MISRA nécessitant une analyse sémantique
  • Soutien à la qualification pour le développement critique en matière de sécurité

Éléments à prendre en compte : la vérification MISRA est effectuée par RuleChecker, intégré à Astrée. Cependant, son objectif diffère de celui de l’analyse d’erreurs d’exécution principale d’Astrée. Il convient de déterminer si le projet nécessite avant tout une vérification des règles MISRA ou s’il tire profit de l’analyse sémantique plus approfondie d’Astrée.

Sources à l'appui :

11. PVS-Studio

Idéal pour : L'analyse statique à usage général avec une couverture MISRA partielle.

À qui s'adresse-t-il et pourquoi ? PVS-Studio est idéal pour les équipes qui souhaitent effectuer des vérifications MISRA en complément d'analyses plus larges des défauts et de la sécurité. Il prend en charge plusieurs éditions MISRA C et C++ et s'intègre aux flux de travail des développeurs et des systèmes d'intégration continue.

Principales fonctionnalités:

  • Prise en charge des normes MISRA C:2012, C:2023, MISRA C++:2008 et C++:2023
  • Analyse statique des violations de la loi MISRA, des défauts logiciels et des vulnérabilités de sécurité
  • Analyse interprocédurale pour une détection plus approfondie des défauts
  • intégration IDE, ligne de commande, système de compilation et CI/CD
  • Rapports de conformité MISRA avec prise en charge des écarts et des recatégorisations

Éléments à prendre en compte : la couverture MISRA varie considérablement selon l’édition. PVS-Studio indique actuellement une couverture de 86 % pour les règles obligatoires et requises pour MISRA C:2012 et C:2023, de 33 % pour les règles requises et recommandées pour MISRA C++:2008 et de 35 % pour MISRA C++:2023. Comparez les correspondances de règles publiées avec les directives requises par votre projet.

Sources à l'appui :

12. Vector PC-lint Plus

Idéal pour : L'analyse statique MISRA configurable pour les équipes C/C++ embarquées.

À qui cela convient-il et pourquoi : PC-lint Plus est parfaitement adapté aux équipes travaillant sur des systèmes embarqués et critiques pour la sécurité qui souhaitent une analyse statique C/C++ dédiée, prenant en charge les éditions MISRA actuelles et établies, ainsi qu’une intégration flexible dans les environnements de développement et les flux de travail de compilation existants.

Principales fonctionnalités:

  • Prise en charge des normes MISRA C:2012, C:2023 et C:2025 ; MISRA C++:2008 et C++:2023
  • Analyse statique des violations des normes de codage, des défauts logiciels et des failles de sécurité
  • Analyse des flux de contrôle et des flux de données pour une détection plus approfondie des défauts et des règles
  • Gestion traçable des suppressions et des écarts avec rapports de conformité
  • Intégration IDE, système de compilation et CI/CD avec certification de sécurité fonctionnelle

Points à prendre en compte : la compatibilité avec MISRA n’implique pas l’application intégrale de toutes les directives. Les matrices de règles actuelles de Vector indiquent une compatibilité globale de 90.4 % avec MISRA C:2025 (21 directives non prises en charge) et de 76.8 % avec MISRA C++:2023 (41 directives non prises en charge). Examinez la couverture détaillée des règles, y compris les directives partiellement prises en charge, au regard des exigences de votre projet.

Sources à l'appui :

13. IAR C-STAT

Idéal pour : l'analyse statique MISRA intégrée aux chaînes d'outils de développement embarqué IAR.

À qui cela convient-il et pourquoi : IAR C-STAT est parfaitement adapté aux équipes embarquées utilisant déjà IAR Embedded Workbench ou IAR Build Tools et qui souhaitent une analyse statique et une vérification MISRA étroitement intégrées à leur compilateur, leur IDE et leur environnement de construction.

Principales fonctionnalités:

  • Prise en charge des normes MISRA C:2012, C:2023, MISRA C++:2008 et MISRA C++:2023
  • Analyse statique des violations des normes de codage, des défauts logiciels et des vulnérabilités de sécurité
  • Intégration native avec IAR Embedded Workbench, IAR Build Tools et les flux de travail en ligne de commande et CI/CD
  • Prise en charge des normes MISRA, CERT C/C++, CWE et autres normes de codage et de sécurité
  • Configurations de sécurité fonctionnelle certifiées TÜV SÜD pour certaines architectures IAR

Éléments à prendre en compte : La couverture MISRA varie selon la norme et la chaîne d’outils. La documentation détaillée d’IAR décrit les vérifications effectuées pour certaines règles MISRA C:2023 et MISRA C++:2023. La norme C++:2023 est actuellement disponible pour les chaînes d’outils Arm, RISC-V, RX et RL78. La certification de sécurité fonctionnelle est également limitée à certaines architectures. Veuillez consulter la couverture des règles, la chaîne d’outils et la certification requises par votre projet.

Sources à l'appui :

14. Cppcheck et Cppcheck Premium

Idéal pour : une analyse statique C/C++ flexible avec un point d'entrée open source et des capacités de conformité MISRA étendues dans la version Premium.

À qui s'adresse-t-il et pourquoi ? Cppcheck est parfaitement adapté aux équipes recherchant une analyse statique C/C++ accessible, tandis que Cppcheck Premium étend les fonctionnalités de l'outil aux organisations soumises à des exigences de conformité MISRA et de sécurité plus rigoureuses. La version open source assure la vérification MISRA C:2012 grâce à son module complémentaire MISRA, tandis que la version Premium offre une prise en charge intégrée plus large de MISRA C/C++, des rapports de conformité et des options de qualification.

Principales fonctionnalités:

  • Le logiciel libre Cppcheck assure la vérification MISRA C:2012 via l'extension misra.py, bien que sa documentation signale des lacunes dans la couverture des règles.
  • Cppcheck Premium prend en charge les normes MISRA C:2012, C:2023, C:2025, MISRA C++:2008 et C++:2023.
  • Couverture complète des directives MISRA C:2025 dans l'édition Premium
  • Contrôle intégré de la conformité MISRA et rapports de conformité, y compris les suppressions et les violations acceptées
  • Licence de sécurité Cppcheck Premium certifiée TÜV SÜD avec kits de qualification d'outils pour les projets de sécurité fonctionnelle

Points à prendre en compte : Les fonctionnalités MISRA des versions open source de Cppcheck et Cppcheck Premium ne sont pas équivalentes. Cppcheck open source s’appuie sur son module complémentaire MISRA et ne propose pas une couverture complète des règles, tandis que Premium offre une prise en charge intégrée plus étendue de la vérification, de la génération de rapports et de la qualification MISRA. Pour Premium, il est recommandé d’examiner la couverture au niveau des règles pour chaque édition MISRA requise plutôt que de supposer que sa couverture complète de la norme MISRA C:2025 s’applique de la même manière à toutes les éditions MISRA C++ prises en charge.

Sources à l'appui :

15. Systèmes d'assurance qualité QA-MISRA

Idéal pour : Vérification dédiée de la conformité MISRA pour le développement C/C++ critique en matière de sécurité.

À qui s'adresse QA-MISRA et pourquoi ? QA-MISRA est parfaitement adapté aux équipes travaillant sur des systèmes embarqués et critiques qui recherchent un outil d'analyse statique ciblé pour la conformité aux normes de codage. Basé sur la technologie de vérification des règles de codage développée par AbsInt, QA-MISRA est distribué par QA Systems comme solution de conformité dédiée pour C et C++. Il prend en charge les éditions MISRA actuelles et établies, avec une analyse et un reporting de conformité au niveau des règles.

Principales fonctionnalités:

  • Prise en charge des normes MISRA C:2012, C:2023, C:2025, MISRA C++:2008 et C++:2023
  • Analyse statique des violations des règles de codage syntaxique et sémantique
  • Matrices de conformité publiées montrant le degré de soutien aux règles individuelles de la MISRA
  • Règles configurables, métriques de code, rapports et intégration CI/CD
  • Certification SGS-TÜV avec kits de support pour la certification et la qualification des outils de développement critiques pour la sécurité

Éléments à prendre en compte : la prise en charge de MISRA varie selon les directives et les éditions. Pour les règles sémantiques nécessitant une analyse approfondie, QA-MISRA peut être associé à l’analyse d’erreurs d’exécution d’AbsInt Astrée, ce qui peut améliorer la prise en charge des règles. Consultez les matrices de conformité publiées par QA Systems en les comparant aux directives MISRA spécifiques requises par le projet.

Sources à l'appui :

Comment sélectionner les outils MISRA pour un programme embarqué réglementé

Le choix du meilleur outil de conformité MISRA dépend des normes du programme, de la chaîne d'outils, du flux de travail de vérification et des exigences en matière de preuves. Avant de sélectionner un outil, effectuez une preuve de concept en utilisant un code de production représentatif ainsi que le compilateur, le système de compilation, le pipeline CI/CD et l'environnement de reporting réels.

  • Identifiez les éditions MISRA C et MISRA C++ requises et demandez une preuve de couverture au niveau des règles, y compris la manière dont tout pourcentage de couverture est calculé.
  • Confirmer la prise en charge des compilateurs cibles, des architectures, des versions de langage, des systèmes de construction et du code généré, hérité ou tiers.
  • Évaluer la manière dont les violations, les écarts, les suppressions, les références et les approbations sont gérés entre les développeurs et les versions.
  • Confirmer les kits de qualification requis, les certifications, les rapports de conformité et les preuves de traçabilité avec l'équipe de sécurité fonctionnelle ou de qualité.
  • Les flux de travail des développeurs de tests, les performances CI/CD, les rapports centralisés, la gouvernance et les efforts nécessaires pour maintenir des preuves de conformité prêtes pour l'audit.

Une évaluation réussie devrait déterminer si un outil détecte les violations de la loi MISRA et si l'équipe peut l'adopter et le maintenir dans le cadre de son processus réel de développement et de conformité.

Approfondissez

Passer de la détection des violations à la conformité prête pour l'audit

La détection d'une violation de la MISRA ne représente qu'une partie du maintien de la conformité tout au long du cycle de vie de développement critique pour la sécurité. Les équipes doivent également corriger ou justifier les anomalies constatées, gérer les écarts, vérifier le code par des tests unitaires et une analyse de la structure, assurer la traçabilité des exigences et conserver les preuves de conformité lors des différentes versions et mises en production.

Parasoft C/C++test relie l'application de la loi MISRA à :

  • Remédiation du développeur
  • Gestion des écarts
  • Tests unitaires
  • Couverture du code structurel
  • Traçabilité des exigences
  • Automatisation CI/CD
  • Rapports de conformité centralisés

Ensemble, ces fonctionnalités aident les équipes à passer de l'identification des infractions individuelles au maintien de preuves de conformité cohérentes et prêtes pour l'audit tout au long du développement.

Approfondissez

Auteur collaborateur : Miroslaw Zielinski

FAQ sur l'évaluation des outils MISRA

Un outil d'analyse statique peut-il garantir la conformité à la norme MISRA ?

Non. L'analyse statique automatise la détection de nombreuses violations de la loi MISRA, mais la conformité à la loi MISRA implique également des processus documentés, des écarts et des directives qui ne peuvent pas être entièrement vérifiés par la seule analyse automatisée.

Que signifie une couverture MISRA à 100 % ?

Cela dépend du dénominateur. Un fournisseur peut entendre par là 100 % des règles statiquement applicables, des règles automatiquement testables, ou un autre sous-ensemble défini, et non nécessairement toutes les directives MISRA. Il est toujours conseillé de consulter la matrice de couverture des règles du fournisseur.

Un outil MISRA doit-il être qualifié selon la norme ISO 26262 ou une autre norme de sécurité fonctionnelle ?

Pas automatiquement. Les exigences de qualification des outils dépendent de la norme de sécurité applicable. Pour les projets réglementés, évaluez la certification de l'outil, les kits de qualification et les justificatifs au regard des exigences de votre projet.

En quoi les outils MISRA diffèrent-ils des outils de test de sécurité statique des applications (SAST) ?

Les outils MISRA se concentrent principalement sur la conformité aux normes de codage sûres et fiables. Les outils SAST mettent généralement l'accent sur la détection plus large des défauts et des vulnérabilités de sécurité. De nombreux outils d'analyse statique commerciaux offrent ces deux fonctionnalités.

« MISRA », « MISRA C » et le logo triangulaire sont des marques déposées de The MISRA Consortium Limited. © The MISRA Consortium Limited, 2021. Tous droits réservés.