Le client conçoit des contrôleurs intelligents utilisés dans l’automatisation industrielle et les machines lourdes. Le firmware était responsable d’opérations sensibles au timing comme le contrôle de pression, la détection de pannes et…
Quelles normes CppDepend prend-il en charge nativement ? Les ensembles de règles intégrés couvrent MISRA C/MISRA C++, CWE, CERT C/CERT C++ et AUTOSAR C++14 — et aucune autre norme. Pour toute autre norme mentionnée sur cette page (ISO 26262, DO-178C, IEC 62304, IEC 61508, JSF++ AV, NIST SSDF, ASPICE…), la conformité est assurée par des règles CQLinq personnalisées rédigées pour votre projet, plus la validation d’architecture et les quality gates CI.
Secteur : Systèmes embarquésProfil client : société d’automatisation industrielle développant du firmware pour contrôleurs intelligentsDomaine : logiciel embarqué temps réel pour la surveillance de capteurs et le contrôle d’actionneursTaille de l’équipe : 20 développeurs et testeurs embarquésLangages : C et C++Normes clés : MISRA C, CERT C, ISO/IEC TS 17961Cibles matérielles : ARM Cortex-M, RTOS (basé sur FreeRTOS)
Le client conçoit des contrôleurs intelligents utilisés dans l’automatisation industrielle et les machines lourdes. Le firmware était responsable d’opérations sensibles au timing comme le contrôle de pression, la détection de pannes et la communication avec les systèmes amont via des protocoles industriels (CANopen, Modbus).
À mesure que le firmware évoluait, l’équipe a rencontré plusieurs difficultés :
L’équipe avait besoin d’un outil pour automatiser l’application des règles de sécurité et de conception, mesurer la maintenabilité et fournir un retour précoce sur le code risqué — sans surcharge ni perturbation des contraintes temps réel du système.
CppDepend a été introduit pour aider l’équipe à reprendre le contrôle d’une complexité croissante du firmware et à garantir la sûreté du code sur de longs cycles de vie produit. Il a été préféré à des linters plus simples grâce à ses capacités d’application d’architecture, ses tableaux de bord de tendances et son intégration CI flexible.
Objectifs clés :
| Métrique | Avant CppDepend | Après 6 semaines |
|---|---|---|
| Violations des règles MISRA/CERT | 800+ | 120 |
| Violations de complexité des fonctions | 60+ | 15 |
| Violations des règles d’architecture | 40+ | 8 |
| Bugs de régression dus à la violation des couches | Fréquent | Rare |
| Charge de revue manuelle (moy./sprint) | ~12 heures | < 3 heures |
CppDepend n’était pas qu’un analyseur statique — c’était un outil de gouvernance de la conception. Il a permis à l’équipe de passer d’une conformité réactive basée sur des checklists à une assurance qualité proactive et automatisée.
Son intégration fluide, son modèle de code riche et ses règles personnalisables le rendaient adapté aux logiciels profondément embarqués avec support produit à long terme.
CppDepend a aidé l’équipe à reprendre le contrôle de son firmware embarqué. Il a réduit le temps de revue, augmenté la modularité et donné aux ingénieurs comme aux managers la visibilité nécessaire pour construire des systèmes embarqués sûrs, évolutifs et testables — prêts pour un déploiement dans des environnements industriels à haute fiabilité.
Lancez l’analyse sur vos propres projets : standards de codage, validation d’architecture, dette technique et quality gates — en quelques minutes.