Logotipo de Parasoft Buscar

¡Descubre GoogleTest, con certificación TÜV y la tecnología Agentic AI para pruebas de C/C++!
Obtenga los detalles »

EMBEDDED

Pruebas funcionales de software embebido: del código al sistema.

Las pruebas funcionales de software embebido para sistemas críticos de seguridad deben verificar más que el código. También deben validar las interacciones entre los componentes, incluidas las API, los servicios y los mensajes que determinan si el sistema se comporta de forma segura y fiable en el entorno real. Parasoft realiza pruebas de ambos aspectos, conforme a todos los estándares que rigen su sector.

Con la confianza de los líderes en seguridad crítica.

Logotipo de Denso
Logotipo de Daimler
Logotipo de la empresa American Honda
Logotipo de JoyNext
logotipo marelli
Logotipo de Schaeffler
Logotipo de Solero Technologies
Logotipo del Grupo Volkswagen
Logotipo tejido por Toyota
Logotipo de Denso
Logotipo de Daimler
Logotipo de la empresa American Honda
Logotipo de JoyNext
logotipo marelli
Logotipo de Schaeffler
Logotipo de Solero Technologies
Logotipo del Grupo Volkswagen
Logotipo tejido por Toyota

Garantizar la seguridad y la fiabilidad en todo el software embebido.

El software embebido ya no funciona de forma aislada. Un vehículo, aeronave, bomba de infusión o controlador de fábrica moderno es una red de componentes que intercambian mensajes a través de arquitecturas orientadas a servicios y buses de mensajes, que a menudo se actualizan de forma inalámbrica mucho después de su lanzamiento. La calidad depende tanto de cómo se comunican esos componentes como de cómo procesa cada uno de ellos.

Parasoft realiza ambas pruebas con una plataforma automatizada. Prueba C / C ++ y C/C++test CT se encargan de la verificación a nivel de código: análisis estático, pruebas unitarias, cobertura estructural y evidencia de certificación. Prueba SOA y Virtualizar Extender ese rigor a las pruebas de integración: las API, los servicios y las dependencias entre componentes. DTP Lo vincula con la trazabilidad y la elaboración de informes listos para auditoría.

DIFERENCIADOR

Las pruebas funcionales integradas van más allá del código.

La verificación a nivel de código es esencial. Pero un sistema crítico para la seguridad es más que sus unidades. Los defectos que provocan la inmovilización de aeronaves, la retirada de vehículos y la activación de acciones correctivas en los dispositivos residen cada vez más en las interfaces y la comunicación entre los componentes.

Una unidad de control electrónico de frenado que supera todas las pruebas unitarias aún puede fallar si un controlador dependiente envía un mensaje erróneo en el momento equivocado. Un monitor que funciona a la perfección en el banco de pruebas puede fallar cuando el sistema conectado del que depende agota el tiempo de espera.

Las normas lo saben, por eso exigen pruebas de integración, pruebas de interfaz y pruebas de robustez frente a entradas anómalas (DO-178C §6.4.2.2; inyección de fallos ISO 26262; tablas del anexo IEC 61508).

Para satisfacerlos, hay que impulsar las conexiones, no solo el código.

Ilustración de una ECU de frenado que se comunica con un servicio en la nube, haciendo hincapié en que las pruebas completas del sistema requieren la validación tanto del código de los componentes como de las API y los mensajes intercambiados entre los sistemas.

El desafío de la integración

Para probar el comportamiento de un componente a través de una interfaz, el elemento del otro extremo debe estar presente y ser lo suficientemente controlable como para generar las condiciones que exige la prueba. En el desarrollo de sistemas críticos para la seguridad, esto es lo que suele interponerse.

La dependencia aún no existe.

Todavía está en construcción por otro equipo o proveedor. La espera retrasa la verificación hasta muy tarde, cuando los defectos son los que más cuestan.

El hardware es escaso y caro.

Los sistemas HIL, las placas objetivo y los bancos de pruebas certificados son limitados, costosos y compartidos, lo que dificulta las pruebas continuas.

Los entornos compartidos chocan.

Un puñado de plataformas de prueba y una cola de ingenieros y trabajos de integración continua implican contención, conflictos de programación y pruebas que no se pueden ejecutar en paralelo.

No se pueden forzar estados de fallo de forma segura.

Los estándares exigen robustez e inyección de fallos: rangos anormales, pérdida de mensajes, condiciones fuera de límites. No es posible, de forma fiable y repetible, provocar esos estados en una unidad de control electrónico de frenado real o mediante bombeo en un banco de pruebas.

El sistema se fabrica en cientos de variantes.

Líneas de modelos, niveles de equipamiento y características, configuraciones regionales y de suscripción: cada combinación debe verificarse, a menudo con opciones a las que no se puede acceder físicamente. Recrear entornos reales para cada variante no es viable a gran escala.

La virtualización de servicios elimina la dependencia como obstáculo.

Virtualize simula el comportamiento, las respuestas y los protocolos de los componentes con los que se comunica su sistema. Está disponible bajo demanda, se puede controlar hasta el nivel de mensaje y es seguro para simular cualquier condición de fallo que exija el estándar.

Adelanta las pruebas. Los equipos ponen a prueba las condiciones anormales y límite obligatorias según sea necesario, y cada ingeniero y proyecto cuenta con su propio entorno aislado. Deja de esperar a que se rompa hardware escaso, inacabado o que no sea seguro.

La capa conectada se prueba con el mismo rigor que el código, que es la única forma de verificar realmente el sistema.

Diseñado para cumplir con los estándares que rigen la seguridad integrada.

Los estándares exigen técnicas y evidencias rigurosas. Parasoft ofrece ambas cosas.

Las técnicas que exigen las normas

Análisis estático, pruebas unitarias y cobertura estructural, hasta cobertura de código objeto (MC/DC) cuando así lo exige el nivel A de DO-178C. Recopilados tanto en el host como en el destino.

Las pruebas que exige el proceso de seguridad

Herramientas de análisis y ensayo con certificación TÜV SÜD, kits de cualificación de herramientas automatizadas e informes que cumplen con la documentación y la trazabilidad que exige el proceso de certificación.

Un único enfoque, adaptado a cada sector vertical.

Un núcleo común para equipos críticos para la seguridad

  • Análisis estático y estándar de codificación
    conformidad
  • Pruebas funcionales basadas en requisitos
  • Pruebas unitarias con cobertura estructural
    escalado al nivel de integridad
  • Pruebas de integración e interfaz
  • Trazabilidad bidireccional y evidencia lista para auditoría
  • Calificación de herramientas para el proceso de seguridad

Rigor específico del sector para cada desafío.

Ingenieros revisando un modelo digital 3D de un vehículo en un laboratorio de diseño y desarrollo automotriz de alta tecnología.

Estándares

ISO 26262 ASIL AD ISO/CLASIFICACIÓN 8800 MISRA C/C++ y AUTOSAR C++14 ISO 21448 / SOTIF

Experiencia

Motorium

El desafío

Los vehículos definidos por software han integrado docenas de ECU en arquitecturas zonales con redes Ethernet orientadas a servicios. Los equipos deben alcanzar una cobertura estructural con grado ASIL (hasta MC/DC en ASIL D) y validar la mensajería orientada a servicios basada en AUTOSAR (incluido SOME/IP) entre las ECU, a menudo antes de que existan físicamente todas las dependencias.

Cómo ayuda Parasoft

C/C++test y C/C++test CT ofrecen análisis estático, pruebas unitarias, conformidad con MISRA/AUTOSAR C++14 y cobertura. SOAtest y Virtualize validan la mensajería SOME/IP y virtualizan las dependencias de ECU no disponibles con pruebas de robustez integradas. Las herramientas con certificación TÜV SÜD y la trazabilidad DTP generan la evidencia ISO 26262 que necesita.

Un buque de guerra de la armada navega en aguas tranquilas y abiertas bajo un cielo azul despejado.

Estándares

CARA™ ED-12C DAL AE con suplementos DO-178C / ED-12C DAL AE ARP4754A DO-254

Experiencia

Aeroespacial

El desafío

La norma DO-178C establece los estándares más estrictos de cualquier industria. En el Nivel A, la cobertura estructural se extiende más allá del código MC/DC hasta el código objeto/ensamblaje, las pruebas de robustez son obligatorias y el software nunca se certifica de forma independiente, sino únicamente como parte del sistema a bordo, a través de un DER. Los entornos objetivo son escasos y el tiempo de prueba certificado es costoso.

Cómo ayuda Parasoft

C/C++test con ASMTools automatiza la cobertura de código objeto/ensamblador, un requisito de nivel A sin equivalente. Los kits de cualificación DO-330 automatizan la evidencia de cualificación de herramientas (TQL-1–5). SOAtest impulsa las pruebas de interfaz y robustez, mientras que Virtualize reemplaza a las LRU y buses dependientes, de modo que las pruebas de integración no dependen del hardware. DTP centraliza la trazabilidad y la evidencia de auditoría.

Estetoscopio médico apoyado sobre un portapapeles con gráficos superpuestos de análisis y rendimiento de datos sanitarios digitales.

Estándares

UL 2900 e IEC 62443 ISO 14971, IEC 62304 Clase A/B/C FDA 21 CFR / SaMD IEC 62366 Sistema de gestión de calidad ISO 13485

Experiencia

Dispositivos médicos

El desafío

El rigor médico se basa en el riesgo, no en la cobertura. No existe una tabla de cobertura predefinida. La garantía se deriva de los controles de riesgo de la norma ISO 14971. Los equipos deben gestionar el software de origen desconocido (SOUP) y no pueden provocar fallos peligrosos en un dispositivo real durante un ensayo. Sin embargo, eso es precisamente lo que el control de riesgos les exige verificar. Los dispositivos conectados añaden HL7/FHIR y mensajería en la nube a la superficie de prueba.

Cómo ayuda Parasoft

C/C++test garantiza la seguridad en la codificación (MISRA, CERT, CWE) con trazabilidad bidireccional que vincula las pruebas y la cobertura con los controles de riesgo de la norma ISO 14971. SOAtest y Virtualize prueban la mensajería de dispositivos conectados y simulan sistemas dependientes y condiciones de fallo que no pueden reproducirse de forma segura en hardware. DTP centraliza la trazabilidad que respalda la evidencia de validación de software de la FDA.

Brazo robótico industrial operando en una planta de fabricación automatizada con contenedores de almacenamiento y equipos de producción.

Estándares

IEC 61508 SIL 1-4 IEC 62061 / ISO 13849 IEC 62443 IEC 61511

Experiencia

Automatización Industrial

El desafío

El SIL se define por la probabilidad de fallo peligroso, y el rigor de la cobertura estructural aumenta con él, hasta MC/DC en SIL 4, según el Anexo B de la norma IEC 61508-3. Los controladores funcionan durante décadas en redes de plantas en funcionamiento que no se pueden desconectar ni forzar a estados de fallo para realizar pruebas, y los dispositivos de campo a menudo no están disponibles durante el desarrollo.

Cómo ayuda Parasoft

C/C++test se corresponde directamente con las técnicas del Anexo A/B de la norma IEC 61508-3, según lo exige el nivel SIL, e incluye análisis estático, pruebas unitarias y cobertura certificados por TÜV SÜD. SOAtest realiza pruebas funcionales mediante protocolos conectados como MQTT, mientras que Virtualize simula las dependencias de los dispositivos de campo y de la planta para que las pruebas de integración y de fallos se ejecuten sin interrumpir los sistemas en producción. DTP proporciona trazabilidad SIL.

Tren de pasajeros que circula por vías férreas electrificadas a través de un paisaje rural.

Estándares

EN 50716 SIL 0-4 EN 50126 / EN 50129

Experiencia

Larguero

El desafío

El software ferroviario se rige por el riguroso estándar SIL, con largos ciclos de certificación transfronterizos y entornos de prueba certificados escasos y costosos. Los componentes de señalización y control deben verificarse conjuntamente, pero los subsistemas dependientes y el equipo de vía rara vez están disponibles simultáneamente.

Cómo ayuda Parasoft

C/C++test cuenta con la certificación TÜV SÜD para EN 50128/EN 50716, lo que garantiza el análisis estático, las pruebas unitarias y la cobertura que exigen los niveles SIL. SOAtest y Virtualize gestionan y simulan subsistemas dependientes para que las pruebas de integración comiencen pronto. DTP genera la trazabilidad y la evidencia de auditoría para la aceptación cruzada.

¿POR QUÉ PARASOFT?

Un conjunto de herramientas, del código al cumplimiento normativo.

 

Una plataforma, ambas capas

Verificación a nivel de código con C/C++test y C/C++test CT. Verificación a nivel de integración con SOAtest y Virtualize. Todo en una única cadena de herramientas unificada. Sin necesidad de herramientas adicionales para conectar las unidades y el sistema.

Certificado de seguridad

C/C++test y C/C++test CT cuentan con la certificación TÜV SÜD para la seguridad funcional según las normas IEC 61508, IEC 62304, EN 50128/EN 50716 e ISO 26262, tanto para el host como para el destino, con kits de cualificación que automatizan la obtención de pruebas de cualificación de herramientas según las normas DO-178C/DO-330 e ISO 26262.

Prueba sin el hardware

Virtualize elimina las dependencias escasas, incompletas y que no se pueden romper de forma segura como restricción. Adelanta las pruebas y haz que la robustez y las condiciones de fallo requeridas sean reproducibles bajo demanda.

Listo para auditoría de forma predeterminada

DTP centraliza la trazabilidad bidireccional de los requisitos, la cobertura y la generación de informes de cumplimiento. La evidencia se recopila automáticamente a medida que se realizan las pruebas.

Diseñado para CI/CD

Pruebas continuas tanto en el host como en el destino, integradas con las cadenas de herramientas integradas y los sistemas ALM que sus equipos ya utilizan.

Prueba todo el sistema, no solo el código.

Contáctenos