Seminario web destacado: Pruebas de API mejoradas con IA: un enfoque de prueba sin código | Vea ahora
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.
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.
Mejore sus pruebas de software con las soluciones de Parasoft.
Explora los capítulos
- Introducción "
- 1. Descripción general »
- 2. Análisis estático »
- 3. MISRA »
- 4. AUTOSAR C++ 14 »
- 5. SEI/CERTIFICACIÓN »
- 6. CWE »
- 7. Pruebas unitarias »
- 8. Pruebas de regresión »
- 9. Pruebas de integración de software »
- 10. Pruebas de sistemas de software »
- 11. Cobertura del código estructural »
- 12. Matriz de trazabilidad de requisitos »
- 13. Calificación de herramientas »
- 14. Informes y análisis »