Logotipo de Parasoft

Conformidad de software ISO 26262 en la industria automotriz

MISRA C 2023

MISRA C es un conjunto de pautas de codificación para el lenguaje de programación C. El objetivo del estándar es aumentar la seguridad del software al evitar de manera preventiva que los programadores cometan errores de codificación que pueden provocar fallas en tiempo de ejecución (y posibles problemas de seguridad) al evitar construcciones problemáticas conocidas en el lenguaje C.

A lo largo de los años, muchos desarrolladores de sistemas integrados se quejaron (y siguen quejándose) de que MISRA C era un estándar demasiado estricto y de que el coste de escribir código totalmente compatible era difícil de justificar. Siendo realistas, dado que MISRA C se aplica en software crítico para la seguridad, el valor de aplicar el estándar a un proyecto depende de factores como:

  • Riesgo de mal funcionamiento del sistema debido a un fallo del software
  • Costo de una falla del sistema para la empresa
  • Herramientas de desarrollo y plataforma de destino
  • Nivel de experiencia del desarrollador

Los programadores deben encontrar un punto intermedio práctico que satisfaga el espíritu del estándar y aún así reclamar el cumplimiento de MISRA sin desperdiciar esfuerzos en actividades que no agregan valor.

cuando primero Introducción de MISRA C en un proyecto, por lo general, cuando ya existe código, el documento clave es el plan de recategorización de pautas. Este documento captura todas las directivas y reglas e identifica qué categorías se han recategorizado. Sin embargo, es importante tener la misma categorización racional también para el código desarrollado recientemente. Por ejemplo, el siguiente diagrama muestra parte de un plan de recategorización.

Informe de cumplimiento de MISRA

El documento de cumplimiento "MISRA C 2023" recomienda no recategorizar de una clasificación menos estricta a una más estricta. Además, es posible desestimar por completo las normas consultivas tras revisar los tipos de infracciones con el equipo.

El requisito de documentar las desviaciones solo es necesario para todas las reglas obligatorias. Se deben revisar todas las infracciones del código adoptado. Las desviaciones deben indicar claramente que no comprometen la seguridad. Independientemente de la recategorización, si se detecta un hallazgo que compromete la seguridad del sistema, el problema debe solucionarse. Además, las modificaciones al código existente pueden introducir otros problemas que el desarrollador no haya visto claramente.

Hombre y mujer discutiendo dentro de un edificio tecnológico

Mejore sus pruebas de software con las soluciones de Parasoft.

Contáctenos