Seminario web destacado: Pruebas de API mejoradas con IA: un enfoque de prueba sin código | Vea ahora

Conformidad de software ISO 26262 en la industria automotriz

Requisitos y Matriz de Trazabilidad

En la norma ISO 26262, la gestión de requisitos es una parte obligatoria del proceso de desarrollo de software y es necesario garantizar la trazabilidad de esos requisitos hasta la implementación y, posteriormente, la prueba de su correcta implementación.

Se define la trazabilidad de los requisitos como “la capacidad de describir y seguir la vida de un requisito, tanto hacia adelante como hacia atrás (es decir, desde sus orígenes, pasando por su desarrollo y especificación, hasta su posterior implementación y uso, y a través de períodos de refinamiento e iteración continuos en cualquiera de estas fases)”.1

En el sentido más simple, la trazabilidad de los requisitos es necesaria para llevar un registro exacto de lo que se está construyendo al escribir software. Se utiliza para verificar los requisitos, lo que significa comprobar la documentación y las especificaciones de diseño con respecto a los requisitos para garantizar que el software haga lo que se supone que debe hacer y que solo se esté construyendo lo que se necesita.

La trazabilidad funciona tanto para demostrar que cumplió con los requisitos como para identificar lo que no. Si hay elementos arquitectónicos o código fuente que no se pueden rastrear hasta un requisito, entonces es un riesgo y no debería estar allí. Los beneficios van más allá de proporcionar una prueba de la implementación. La trazabilidad disciplinada es una visibilidad importante del progreso del desarrollo.

Es importante tener en cuenta que muchos de los requisitos del software crítico para la seguridad se derivan del análisis de seguridad y la gestión de riesgos. El sistema debe realizar las funciones previstas, por supuesto, pero también debe mitigar los riesgos para reducir en gran medida la posibilidad de lesiones. Además, para documentar y demostrar que estas funciones de seguridad se implementan y prueban de forma completa y correcta, la trazabilidad es fundamental.

El seguimiento de los requisitos no consiste simplemente en vincular un párrafo de un documento a una sección de código o una prueba. La trazabilidad debe mantenerse a lo largo de las fases de desarrollo a medida que los requisitos se manifiestan en el diseño, la arquitectura y la implementación. Considere el diagrama en V típico del software.

Gráfico que muestra cómo la trazabilidad avanza y retrocede a través de cada fase del desarrollo.
El diagrama clásico en V muestra cómo la trazabilidad avanza y retrocede a través de cada fase del desarrollo.
Cada fase impulsa la fase siguiente. A su vez, los elementos de trabajo de estas fases deben satisfacer los requisitos de la fase anterior. El diseño del sistema está impulsado por los requisitos. El diseño del sistema satisface los requisitos, y así sucesivamente.

La gestión de trazabilidad de requisitos (RTM) demuestra que cada fase satisface los requisitos de cada fase posterior. Sin embargo, esto es solo la mitad del panorama. Ninguna de estas trazabilidades demuestra que se están cumpliendo los requisitos. Eso requiere pruebas a través de la ejecución para validar los requisitos.

Gráfico de la validación del modelo V entre cada fase de desarrollo y prueba.
Se validan distintos niveles de requisitos en distintas fases de desarrollo utilizando diferentes métodos de prueba.
En el diagrama en V anterior, cada fase de prueba valida los requisitos asociados con la fase de diseño/implementación correspondiente. En el ejemplo, se ve:
  • Las pruebas de aceptación validan los requisitos del cliente.
  • Las pruebas del sistema validan los requisitos del sistema.
  • Las pruebas de integración validan el diseño de la arquitectura.
  • Las pruebas unitarias validan el diseño del módulo.

El desarrollo de software en cualquier escala realista, de moderada a grande, tendrá muchos requisitos, un diseño y una arquitectura complejos y, posiblemente, miles de unidades y pruebas unitarias. La automatización de la RTM en las pruebas es necesaria, especialmente para el software crítico para la seguridad que requiere documentación de trazabilidad para certificaciones y auditorías.

Requerimientos de trazabilidad matriz

A Matriz de trazabilidad de requisitos es un documento que ilustra la satisfacción de los requisitos con un elemento de trabajo correspondiente, como una prueba unitaria, un código fuente de un módulo, un elemento de diseño de arquitectura, etc.

La matriz se suele mostrar como una tabla que muestra cómo se “marca” cada requisito en la parte correspondiente del producto. La creación y el mantenimiento de estas matrices suelen automatizarse con herramientas de gestión de requisitos que permiten mostrarlas visualmente de muchas formas e incluso en papel, si es necesario.

A continuación se muestra un ejemplo de matriz de trazabilidad de requisitos de PTC Codebeamer. Muestra los requisitos a nivel del sistema desglosados ​​en requisitos de alto y bajo nivel, y los casos de prueba que verifican cada uno.

Instantánea de una matriz de trazabilidad de Codebeamer
Ejemplo de matriz de trazabilidad de requisitos en PTC Codebeamer.

Automatización de la trazabilidad bidireccional

Mantener registros de trazabilidad en cualquier tipo de escala requiere automatización. Las herramientas de gestión del ciclo de vida de las aplicaciones incluyen capacidades de gestión de requisitos que están maduras y tienden a ser el centro de la trazabilidad. Las herramientas de prueba de software integradas como Parasoft completan la verificación y validación de los requisitos al proporcionar una trazabilidad bidireccional automatizada al caso de prueba ejecutable, que incluye el resultado de aprobado o reprobado y rastrea hasta el código fuente que implementa el requisito.

Parasoft se integra con sistemas de gestión de requisitos y planificación ágil líderes en el mercado, como PTC Codebeamer, Polarion de Siemens, Jama Connect, Atlassian Jira y Azure DevOps Requirements.

Como se muestra en la imagen a continuación, cada una de las herramientas de automatización de pruebas de Parasoft, C/C++test, C/C++test CT, Jtest, dotTEST, SOAtest y Selenic, admiten la asociación de pruebas con elementos de trabajo definidos en estos sistemas, como requisitos, historias, defectos y definiciones de casos de prueba. La trazabilidad se gestiona a través del panel central de informes y análisis, Parasoft DTP.

Infografía de las herramientas de Parasoft y su trazabilidad bidireccional de requisitos con sistemas de gestión de requisitos mediante DTP.
Parasoft proporciona trazabilidad bidireccional desde los elementos de trabajo hasta los casos de prueba y los resultados de las pruebas, mostrando informes de trazabilidad con Parasoft DTP e informando los resultados al sistema de gestión de requisitos.

Parasoft DTP correlaciona los identificadores únicos del sistema de gestión con los resultados del análisis estático, la cobertura del código y los resultados de las pruebas de la unidad, la integración y las pruebas funcionales. Los resultados se muestran en los informes de trazabilidad de Parasoft DTP y se envían al sistema de gestión de requisitos. Proporcionan trazabilidad e informes bidireccionales completos como parte de la matriz de trazabilidad del sistema.

Los informes de trazabilidad en Parasoft DTP son altamente personalizables. La siguiente imagen muestra una plantilla de matriz de trazabilidad de requisitos con requisitos creados en Polarion que se relacionan con los casos de prueba, los hallazgos de análisis estáticos, los archivos de código fuente y las revisiones manuales de código.

Captura de pantalla de DTP que muestra el panel de cumplimiento de la norma ISO 26262
Plantilla de matriz de trazabilidad de requisitos de Parasoft DTP integrada con Polarion ALM.

La correlación bidireccional entre los resultados de las pruebas y los elementos de trabajo proporciona la base para la trazabilidad de los requisitos. Parasoft DTP agrega prueba y análisis de cobertura de código para evaluar la integridad de las pruebas. Mantener esta correlación bidireccional entre los requisitos, las pruebas y los artefactos que las implementan es un componente esencial de la trazabilidad.

La trazabilidad bidireccional es importante para que las herramientas de gestión de requisitos y otras herramientas del ciclo de vida puedan correlacionar los resultados y alinearlos con los requisitos y los elementos de trabajo asociados.

La complejidad de los proyectos de software modernos requiere Automatización para escalar requisitos de trazabilidadLas herramientas de Parasoft están diseñadas para integrarse con las mejores herramientas de gestión de requisitos para facilitar la trazabilidad de los resultados de la automatización de pruebas y completar la verificación de pruebas de software y la validación de requisitos.

1Gotel OCZ y Finkelstein ACW, “Un análisis del problema de trazabilidad de requisitos”, en Actas de ICRE94, 1.ª Conferencia internacional sobre ingeniería de requisitos, Colorado Springs, Co, IEEE CS Press, 1994

Pancarta azul oscuro con imagen de un hombre hablando con una mujer sosteniendo una tableta en la mano en una sala de servidores.
Imagen de un hombre y una mujer con una tableta en la mano conversando en una sala de servidores.

Mejore sus pruebas de software con las soluciones de Parasoft.