Las pruebas impulsadas por IA ahora son más inteligentes. Descubra SOAtest 2025.1. >>

Cumplimiento de normas y estándares de codificación de AUTOSAR C++
C++ es un lenguaje complejo que requiere un gran esfuerzo para garantizar la previsibilidad y la seguridad. AUTOSAR (Automotive Open System Architecture) estableció los requisitos de AUTOSAR para C++14 para restringir su uso a construcciones predecibles. Cumpla con estos requisitos con las soluciones de Parasoft para minimizar los riesgos de seguridad.
AUTOSAR (NUEVO)
¿Qué es AUTOSAR?
La Arquitectura de Sistema Abierto Automotriz (AUTOSAR) surge de una colaboración de desarrollo entre entidades del sector automotriz. Fundado en 2003, el grupo buscó establecer una arquitectura de software estandarizada y abierta en torno a las unidades de control electrónico (ECU) automotrices. También abarca semiconductores.
Un espacio para hacer una pausa, reflexionar y reconectarse en privado. AUTOSAR La alianza para el desarrollo buscó mejorar la eficacia y la disponibilidad de los requisitos de seguridad, la escalabilidad, la transferibilidad y la sostenibilidad a lo largo del ciclo de vida del producto. Si bien estos principios suelen asociarse con dispositivos médicos, también se aplican a ciertas tecnologías automotrices clasificadas como sistemas críticos para la seguridad. Productos como los airbags requieren tecnología que los active con precisión, mientras que sistemas como el control de motores requieren consistencia.
Un mayor software integrado en los automóviles también implica una gran cantidad de recopilación y procesamiento de datos en tiempo real. Diversos aspectos de AUTOSAR buscan satisfacer las necesidades de la electrónica y los componentes de software de los automóviles modernos.

Desglose de las pautas de codificación AUTOSAR C++14
AUTOSAR Plataforma Clásica vs. AUTOSAR Adaptativo
Existen dos tipos de plataformas AUTOSAR: Adaptativa y Clásica. La Plataforma Clásica AUTOSAR no ofrece la flexibilidad ni la potencia de procesamiento de la Plataforma Adaptativa. La creciente complejidad de la tecnología automotriz exige reacciones más fáciles y respuestas más rápidas. Sin embargo, ambas plataformas no son rivales. Son compañeras de equipo. Ambas cumplen funciones diferentes en el ecosistema de diseño y desarrollo automotriz.
Plataforma Clásica AUTOSAR | Plataforma adaptable AUTOSAR |
---|---|
Ideal para una arquitectura de uno o varios núcleos y ECU profundamente integradas. | Ideal para ECU más nuevas y diseñado para ejecutarse sobre arquitecturas HPC para aprovecharlas mejor. |
Utiliza comunicación basada en señales con redes BUS como LIN o CAN. | Utiliza comunicación basada en servicios con Ethernet. |
Define un sistema operativo (SO). | Define el contexto de ejecución, así como una interfaz de sistema operativo como PSE51. |
Naturaleza estática con baja flexibilidad. | Proporciona "dinámica planificada" durante la implementación de aplicaciones con integración flexible. |
Los plazos son más apremiantes debido al procesamiento en tiempo real. | Requisito suave en tiempo real. |
Los ejemplos incluyen sistemas de frenado y control del motor. | Los ejemplos incluyen procesamiento de datos de fusión de sensores y actualizaciones inalámbricas (actualizaciones OTA). |
¿Qué es AUTOSAR C++14?
AUTOSAR C++14 es un estándar de codificación Para C++ versión 14 (ISO/IEC 14882:2014). También es un artefacto o uno de los resultados de la definición de la plataforma AUTOSAR Adaptativa, que proporciona especificaciones de interfaz para API y servicios. Esta sección de las directrices de codificación de AUTOSAR se actualizó originalmente. MISRA C++ 2008: un estándar de codificación obsoleto. Sin embargo, MISRA y AUTOSAR anunciaron su fusión en 2019 para apoyar la actualización a C++17, que se ha convertido en el lenguaje predeterminado para muchas soluciones electrónicas modernas de AUTOSAR. Estas directrices son tan robustas y optimizadas que cualquier industria que requiera programación embebida en C++ puede aplicarlas.
Reglas y desviaciones de AUTOSAR C++14
AUTOSAR C++14 cuenta con 342 reglas que proporcionan una comprensión clara y una guía sobre los requisitos de codificación. Las reglas de codificación de AUTOSAR C++14 se clasifican según su nivel de obligación.
- Reglas requeridas
Obligatorio para reclamar el cumplimiento de la norma. - Reglas de asesoramiento
Recomendado pero sin estatus obligatorio.
Sin embargo, los desarrolladores pueden desviarse de un estándar, regla o directriz de AUTOSAR con aprobación. Para evitar el uso indebido, se requiere una aprobación formal para cada desviación. Además, AUTOSAR clasifica las reglas en función de si las herramientas de análisis estático pueden aplicarlas automáticamente.
- Automated
La automatización puede ser totalmente respaldada por herramientas de análisis estático. - Parcialmente automatizado
La automatización puede ser totalmente respaldada por herramientas de análisis estático. - no automatizado
No se puede soportar con herramientas de análisis estático.
El uso de C++14 en colaboración con las directrices AUTOSAR C++14 ofrece a los desarrolladores la posibilidad de usar compiladores superiores y un mejor acceso a herramientas avanzadas de prueba, verificación y análisis. Esto permite el uso de nuevos métodos de desarrollo, como la integración/entrega continua (CI/CD), que permiten detectar errores con mayor rapidez en el ciclo de vida del desarrollo de software.
“MISRA”, “MISRA C” y el logotipo del triángulo son marcas comerciales registradas de The MISRA Consortium Limited. © The MISRA Consortium Limited, 2021. Todos los derechos reservados.
Soluciones para ayudar a cumplir con los requisitos de AUTOSAR

Prueba C / C ++
C/C++test, una potente solución automatizada de pruebas de software para aplicaciones críticas de seguridad automotriz, garantiza el cumplimiento de las directrices AUTOSAR C++14. Se integra a la perfección con su IDE de C y C++, su canalización de CI/CD y sus implementaciones en contenedores, lo que permite los métodos de verificación y validación requeridos por la norma ISO 26262..
Más Información
DTP
Obtenga una visión clara del cumplimiento de AUTOSAR C++14 con nuestra solución de informes y análisis. DTP integra los resultados de las pruebas y la trazabilidad de los requisitos, lo que proporciona una monitorización inteligente y continua de los resultados. El panel dinámico identifica las deficiencias en las pruebas, monitoriza el progreso y automatiza los informes de cumplimiento.
Más InformaciónMejores prácticas de AUTOSAR
Cuando se trata del cumplimiento de AUTOSAR C++14, existen varias prácticas altamente beneficiosas. Aquí hay una lista de algunos de los métodos a considerar.
Realizar revisiones de código / pares | Además del cumplimiento de AUTOSAR C++14, reúnase con sus colegas ingenieros de software y verifiquen sistemáticamente el código de los demás en busca de errores y violaciones del estilo de codificación. Se ha demostrado que esta actividad acelera y mejora sustancialmente la calidad del código. |
Registre correctamente sus desviaciones | Cualquier desviación de las pautas de AUTOSAR C++14 requiere una documentación exhaustiva sobre lo siguiente: la pauta específica, el alcance, la justificación, la garantía de seguridad, las consecuencias y la mitigación. |
Claridad de código | La compatibilidad con AUTOSAR C++14 te ayudará a escribir código fácil de leer y comprender. No escribas código críptico, difícil de seguir o fácilmente malinterpretado. No querrás que otros ingenieros o tú mismo dediquen mucho tiempo a descifrar un error en tu código. |
Portabilidad de código | La compatibilidad con AUTOSAR C++14 promueve la portabilidad del código, lo que permite migrar software fácilmente entre plataformas como POSIX y sistemas basados en ANSI C con cambios mínimos. Esta flexibilidad reduce el esfuerzo de adaptación al cambiar de compiladores, sistemas operativos o hardware, lo que permite a las empresas aprovechar oportunidades estratégicas o de ahorro de costes sin necesidad de realizar grandes modificaciones. |
Reducir el ruido de AUTOSAR C++14 | Ciertas construcciones de código pueden infringir las reglas de AUTOSAR C++14. Parasoft permite filtrar intencionalmente este ruido. |
Complejidad del código | El cumplimiento de AUTOSAR C++14 ayuda a escribir código que no tiene una gran cantidad de bifurcaciones. Cuantas más ramas, mayor es la complejidad del código y mayor el número de errores encontrados en el código. |
Robustez del código | La compatibilidad con AUTOSAR C++14 le ayuda a escribir código confiable que maneja escenarios esperados e inesperados (incluidos casos de uso negativos y condiciones de datos no válidos), lo que garantiza la resiliencia de la aplicación. |
Reutilización de código | El cumplimiento de AUTOSAR C++14 lo ayuda a escribir código portátil que se puede reutilizar en futuros productos o proyectos. Esto mejora la productividad y reduce los costos de mano de obra y pruebas. |
Casos de uso de ejemplo
Los sistemas de software automotrices modernos dependen cada vez más de arquitecturas abiertas y estandarizadas como AUTOSAR para impulsar funciones de conducción autónoma y conectividad esenciales para la seguridad. Dos ejemplos clave de Cumplimiento para pruebas de software de conducción autónoma incluyen:
- Los sistemas avanzados de asistencia al conductor (ADAS), como LIDAR, utilizan software compatible con AUTOSAR para detectar riesgos de colisión al detectar con precisión los objetos circundantes.
- La asistencia al estacionamiento con conducción automatizada depende del código que cumple Requisitos de la arquitectura AUTOSAR para ejecutar maniobras seguras y precisas sin intervención del conductor.
Estos son solo un par de ejemplos notables. La creciente adopción de la Plataforma Adaptativa AUTOSAR y de los vehículos con IoT hace que la medición de datos en tiempo real y las capacidades de respuesta adaptativa sean cruciales.
Informes automatizados de cumplimiento de AUTOSAR
El panel de análisis de Parasoft con informes automatizados de cumplimiento de AUTOSAR facilita el suministro de las pruebas necesarias para la certificación.

Para aplicaciones críticas para la seguridad y la protección, querrá utilizar nuestra solución certificada por TÜV SÜD para garantizar el cumplimiento de los estándares y la facilidad de adopción en sus procesos de desarrollo de alto rendimiento.
Introducción
Una gran ventaja de proponer la compatibilidad de AUTOSAR con C++14 es que puedes presentarlo a tu equipo y empezar a usarlo en cualquier fase del desarrollo de software de un proyecto. Mejor aún, es eficaz incluso si un proyecto o el software de tu ECU está incompleto y parcialmente codificado.
Desafíos AUTOSAR
- Una gran cantidad de código puede producir una gran cantidad de advertencias.
El mayor desafío con la introducción del cumplimiento AUTOSAR C++14 es que una gran cantidad de código puede generar una gran cantidad de advertencias. Por lo tanto, el enfoque al integrar el cumplimiento de AUTOSAR C++14 en un proyecto debe ser lograr que el equipo sea productivo lo antes posible. Esto minimizará las oportunidades para que el equipo se vea abrumado por las advertencias de análisis estático.
A medida que lograr la conformidad con AUTOSAR C++14 se convierte en parte de la rutina diaria de cada desarrollador, pueden analizar los resultados más rápido y corregir errores de manera más eficiente.
La madurez del producto en desarrollo también es importante, ya que influye en la incorporación de la compatibilidad con AUTOSAR C++14. La gestión del ciclo de vida de adopción funciona como se describe a continuación.
Reconocer y aplazar
Este enfoque se centra en proyectos existentes que ya están en el mercado. Con un desarrollo mínimo de código nuevo, todos los errores y vulnerabilidades de seguridad descubiertos se acumulan como deuda técnica dentro del código base existente.
Una línea en la arena
Los proyectos existentes con desarrollo actual hacen que los equipos mejoren el código nuevo a medida que se desarrolla para postergar menos advertencias críticas como deuda técnica.
Greenfield
Los nuevos proyectos adoptan este enfoque. Los desarrolladores pueden integrar AUTOSAR C++14 en sus entornos de desarrollo desde el principio para garantizar un alto nivel de calidad como código.
Por qué Parasoft
Habilite el posprocesamiento automatizado y las estrategias de informes avanzados
Consulte los resultados de la prueba AUTOSAR de C/C++14 en el panel de informes dinámicos de Parasoft. Puede automatizar el posprocesamiento y las estrategias avanzadas de generación de informes utilizando datos históricos.
Es fácil ver los resultados de cumplimiento de AUTOSAR C++14 en compilaciones a lo largo del tiempo. Esto es así incluso al trabajar con bases de código extensas y código heredado, donde la visibilidad del código suele ser difícil. Puede centrarse rápidamente en la calidad del código recién añadido.
Ahorro de tiempo y costes
La solución de análisis de código AUTOSAR de Parasoft, C/C++test, detecta problemas complejos de cumplimiento de C++14 en un entorno de ejecución AUTOSAR desde el inicio del desarrollo, sin necesidad de ejecutar costosas pruebas de ejecución. Esto optimiza los procesos de desarrollo en beneficio de todos.
C/C++test analiza las rutas de ejecución del código y detecta problemas de conformidad con AUTOSAR C++14, como la desreferenciación de punteros nulos, la división por cero y fugas de memoria. También busca vulnerabilidades de seguridad, como operaciones aritméticas en un operando de puntero, desbordamientos de búfer, código inaccesible y la función del sistema cstdlib.
Producir informes automáticos
Con widgets que rastrean automáticamente el cumplimiento de AUTOSAR C++14, los usuarios obtienen una vista dinámica del proceso de cumplimiento y pueden producir fácilmente informes automáticos para auditorías de código y objetivos de certificación.
Preguntas Frecuentes
Recursos relacionados

Mejore sus pruebas de software con las soluciones de Parasoft.