Guía estándar DO-178B: herramientas de verificación de software

Índice del contenido

Guía estándar DO-178B: herramientas de verificación de software

Introducción

La seguridad es de suma importancia cuando se trata del diseño de software para la industria aeroespacial, y ninguna directriz de seguridad ha sido tan impactante como DO-178B, también conocida como Consideraciones de software en la certificación de equipos y sistemas aerotransportados. En esta publicación de blog, analizaremos qué es el DO-178B, cómo cumplirlo y las diferentes herramientas y certificaciones disponibles para ayudarlo a hacerlo.

¿Qué es DO-178B?

Publicado en 1992 por la Comisión Técnica de Radio para Aeronáutica (RTCA) y desarrollado conjuntamente con EUROCAE, la Organización Europea de Equipos de Aviación Civil, DO-178B es una guía internacional que se ocupa de la seguridad del software de misión crítica utilizado en sistemas y equipos de a bordo. Aunque es solo una guía y no una política, DO-178B se considera un estándar para el desarrollo de software de aviónica, e incluso la FAA lo usa como guía para determinar si una pieza de software funcionará de manera confiable en un entorno aéreo.

A pesar de haber sido desarrollado específicamente para satisfacer las necesidades únicas de la industria aeroespacial, DO-178B también se ha utilizado en otras industrias, a menudo junto con DO-254, también conocido como Guía de garantía de diseño para hardware electrónico aerotransportado, que se ocupa del desarrollo de hardware electrónico aerotransportado. Al igual que DO-178B, DO-254 es publicado por RTCA, una organización de voluntarios de los Estados Unidos cuya misión es desarrollar una guía técnica para que la utilicen las autoridades reguladoras gubernamentales y la industria.

¿Qué diferencia hay entre DO-178B y DO-178C?

DO-178B y DO-178C son estándares desarrollados por la Comisión Técnica de Radio para Aeronáutica (RTCA) para software utilizado en sistemas aerotransportados. Estos estándares brindan pautas y requisitos para el desarrollo y certificación de software para uso en sistemas de aeronaves. La principal diferencia entre DO-178B y DO-178C radica en su alcance, actualizaciones y mejoras.

DO-178B, también conocido como "Consideraciones de software en la certificación de equipos y sistemas aerotransportados", se publicó en 1992 y se convirtió en el estándar de facto para el desarrollo de software en la industria aeroespacial. Definió un conjunto de objetivos y actividades para garantizar que el software utilizado en los sistemas de las aeronaves sea fiable y seguro. DO-178B está organizado en seis niveles de software, que van desde el nivel A (el más crítico) hasta el nivel E (el menos crítico), según el impacto potencial de una falla de software en la aeronave y sus ocupantes. Proporciona un proceso sistemático para el desarrollo, verificación y validación de software, incluidos los requisitos, el diseño, la codificación y las pruebas.

DO-178C, también conocido como "Consideraciones de software en la certificación de equipos y sistemas aerotransportados", es la versión actualizada de DO-178B. Fue publicado en 2011 e introdujo varios cambios y mejoras significativos en el estándar. DO-178C refleja los avances en las prácticas, tecnologías y herramientas de desarrollo de software que se han producido desde el lanzamiento de DO-178B. Los objetivos principales de DO-178C eran mejorar la consistencia y claridad del estándar, mejorar su facilidad de uso y abordar los desafíos asociados con las técnicas modernas de desarrollo de software.

Uno de los cambios notables en DO-178C es la adición de un nuevo modelo de ciclo de vida de software llamado "Desarrollo y verificación basados ​​en modelos" (MBDV). Este modelo permite el uso de técnicas de diseño y verificación basadas en modelos, que pueden mejorar la eficiencia y la calidad del desarrollo de software. DO-178C también proporciona una guía más clara sobre el uso de métodos formales, tecnología orientada a objetos y la integración de software comercial listo para usar (COTS).

DO-178C mantiene los mismos niveles de software que DO-178B y continúa enfatizando la importancia del desarrollo basado en requisitos, las pruebas rigurosas y la trazabilidad. También incluye orientación actualizada sobre temas como actividades de verificación, calificación de herramientas y el uso de modelos de software y código generado.

En resumen, DO-178C es una versión actualizada de DO-178B que incorpora mejoras y aborda las prácticas y tecnologías de desarrollo de software en evolución. Proporciona una guía más clara, presenta nuevos modelos de ciclo de vida y da cuenta de los avances en ingeniería de software desde el lanzamiento de DO-178B.

Descripción general de DO-178B

DO-178B describe cinco condiciones de falla, que se clasifican por su efecto en los pasajeros, la tripulación y la aeronave. Sus efectos se utilizan para determinar el nivel de software, también conocido como nivel de garantía de diseño (DAL) o nivel de garantía de desarrollo de elementos (IDAL).  El nivel de software indica la cantidad de esfuerzo que se dedica al desarrollo de la aplicación de software dada.
  • Nivel A (catastrófico) La falla impide un vuelo seguro continuo porque puede causar un accidente al deshabilitar una función crítica requerida para volar y aterrizar una aeronave de manera segura.
  • Nivel B (peligroso) La falla tiene efectos adversos en los ocupantes porque reduce la capacidad de los operadores para operar la aeronave correctamente. Pueden producirse lesiones graves o mortales.
  • Nivel C (mayor) La falla no tiene un impacto tan grande como una falla peligrosa, pero sigue siendo muy significativa y aumenta enormemente la carga de trabajo de los operadores y reduce el margen de seguridad.
  • Nivel D (menor) La falla no tiene un impacto tan grande como una falla importante, pero aun así es notable y puede causar molestias a los pasajeros o un cambio en el plan de vuelo de rutina.
  • Nivel E (sin efecto) La falla no afecta la capacidad de operación en absoluto y, por lo tanto, no tiene ningún impacto en la seguridad de la aeronave o la carga de trabajo de los operadores.
Los datos confiables sobre los costos asociados con pasar a un nivel superior son escasos, pero los pocos datos disponibles apuntan a un aumento en los costos de desarrollo entre 75% y 150%. El aumento se debe en gran parte al aumento de los objetivos que se deben cumplir para cada nivel de criticidad. DO-178B permite una gran flexibilidad en lo que respecta al desarrollo de software debido a su naturaleza basada en objetivos, ya que hay muchas formas posibles para que un proyecto real los satisfaga. Un proceso DO-178B genérico se divide en cinco procesos distintos, y cada proceso tiene un conjunto de resultados documentados esperados:
  • Planificación de software Esta es una descripción de los procesos de desarrollo de software y el ciclo de vida del software que se utilizará para satisfacer los requisitos de DO-178B. Los documentos de salida incluyen un plan de desarrollo de software (SDP).
  • Desarrollo Es una descripción de los procesos de desarrollo de software y el ciclo de vida del software que se utiliza para satisfacer los objetivos DO-178C. El los documentos de salida incluyen datos de requisitos de software (SRD), descripción de diseño de software (SDD), código fuente y código de objeto ejecutable.
  • Verificación Esto es una descripción de los procesos de verificación (Revisiones, Análisis y Pruebas) utilizados para satisfacer los objetivos del DO-178C. El Los documentos de salida incluyen casos y procedimientos de verificación de software (SVCP) y resultados de verificación de software (SVR) con la revisión de todos los requisitos, el diseño y el código.
  • Configuration Management Es una descripción de los métodos y el entorno que se utilizará para configurar todos los datos de diseño y la evidencia de cumplimiento necesarios para lograr la certificación DO-178C. Los documentos de salida incluyen el índice de configuración del software (SCI) y el índice de configuración del entorno del ciclo de vida del software (SECI).
  • Garantía de Calidad Esta es una descripción de los métodos y registros asociados que se utilizarán para garantizar que se cumplan los objetivos de garantía de calidad de DO-178C. Los documentos de salida incluyen registros de control de calidad del software (SQAR), revisión de la conformidad del software (SCR) y resumen de logros del software (SAS).

Importancia de la verificación de software en DO-178B

La verificación del software es una parte crítica del estándar DO-178B, ya que garantiza que el software funcione según lo previsto y cumpla con los requisitos de seguridad y confiabilidad. El objetivo principal de la verificación del software es identificar y eliminar los defectos y errores del software antes de que el software se implemente en una aeronave. Mediante el uso de herramientas de verificación de software, los desarrolladores pueden automatizar diversas actividades de verificación y mejorar la eficiencia y la eficacia del proceso de verificación.

Función de las herramientas de verificación de software en DO-178B

Las herramientas de verificación de software juegan un papel crucial en el logro de los objetivos del estándar DO-178B. Estas herramientas ayudan a los desarrolladores a automatizar diversas actividades de verificación de software, como análisis estático, análisis dinámico y pruebas basadas en requisitos. Estas son algunas funciones clave de las herramientas de verificación de software en DO-178B:

Herramientas de análisis estático 

Las herramientas de análisis estático analizan el código fuente del software sin ejecutarlo. Estas herramientas detectan posibles defectos y violaciones de los estándares de codificación al examinar la estructura del código, la sintaxis y el flujo de datos. Las herramientas de análisis estático pueden identificar problemas como variables no inicializadas, desbordamientos de búfer y código inalcanzable. Mediante el uso de herramientas de análisis estático, los desarrolladores pueden detectar errores en las primeras etapas del proceso de desarrollo, lo que reduce la probabilidad de fallas en el funcionamiento del software.

Herramientas de análisis dinámico 

Las herramientas de análisis dinámico monitorean el comportamiento del software durante la ejecución. Estas herramientas capturan información de tiempo de ejecución, como el uso de la memoria, las llamadas a funciones y los valores de las variables. Las herramientas de análisis dinámico son especialmente útiles para detectar errores de tiempo de ejecución, fugas de memoria y cuellos de botella en el rendimiento. Proporcionan información sobre el comportamiento real del software y ayudan a identificar problemas que pueden no ser evidentes durante el análisis estático.

Herramientas de prueba basadas en requisitos 

Las herramientas de prueba basadas en requisitos facilitan la verificación del software frente a los requisitos especificados. Estas herramientas automatizan la generación de casos de prueba en función de los requisitos del sistema y ayudan a garantizar que todos los requisitos se prueben adecuadamente. Las herramientas de prueba basadas en requisitos pueden rastrear la cobertura de las pruebas, lo que garantiza que el software se haya probado exhaustivamente con respecto a los requisitos especificados. Ayudan a lograr la trazabilidad entre los requisitos, el diseño y los casos de prueba, que es un requisito clave de DO-178B.

Consideraciones para seleccionar herramientas de verificación de software

Al seleccionar herramientas de verificación de software para el cumplimiento de DO-178B, se deben tener en cuenta varias consideraciones. Aquí hay algunos factores importantes a considerar:

Calificación de la herramienta 

De acuerdo con DO-178B, las herramientas de verificación de software utilizadas en el proceso de desarrollo deben estar calificadas. La calificación de la herramienta implica demostrar que las herramientas son confiables, efectivas y no introducen errores adicionales. El proceso de calificación generalmente incluye documentar las características, limitaciones y suposiciones de la herramienta, así como proporcionar evidencia de la validación y verificación de la herramienta.

Integración de herramientas 

Las herramientas de verificación de software seleccionadas deben poder integrarse en el entorno de desarrollo y en el ciclo de vida general del desarrollo de software. Las herramientas deberían funcionar a la perfección con las herramientas de desarrollo, los compiladores y otros componentes de software. La integración garantiza un flujo de trabajo fluido y facilita la automatización de las actividades de verificación.

Documentación y soporte de herramientas 

La documentación y el soporte adecuados son esenciales para usar las herramientas de verificación de software de manera efectiva. Las herramientas deben tener una documentación completa, incluidos manuales de usuario, tutoriales y ejemplos. Además, el acceso al soporte técnico y las actualizaciones periódicas del proveedor de la herramienta son cruciales para abordar cualquier problema o actualización requerida durante el proceso de desarrollo.

Cumplimiento de DO-178B

Para garantizar el cumplimiento del estándar DO-178B, las herramientas de verificación de software deben usarse de acuerdo con las pautas especificadas en el estándar. El proceso de selección, calificación y uso de las herramientas debe estar bien documentado, y se debe mantener la evidencia de la calificación y validación de la herramienta. Además, las herramientas deben aplicarse de manera consistente a lo largo del ciclo de vida del desarrollo de software y estar sujetas a pruebas y revisiones rigurosas.

¿Cómo admitir DO-178B?

Hay muchas herramientas que pueden ayudar en los procesos DO-178B, incluidas herramientas de desarrollo, herramientas de verificación y herramientas de gestión de requisitos.

La última categoría de herramientas es especialmente importante porque debería ser posible rastrear el origen de cada requisito durante los procesos DO-178B, y cada cambio realizado en el requisito debería, por lo tanto, documentarse para lograr la trazabilidad. De hecho, el uso del requisito después de la implementación de las características implementadas también debería ser rastreable.

Sería imposible desarrollar software compatible con DO-178B para sistemas aerotransportados sin una herramienta de software capaz de proporcionar una trazabilidad profunda y rigurosa de los artefactos del proyecto a lo largo de todas las etapas del desarrollo.

Documentación requerida para DO-178B

Hay varios documentos requeridos para el cumplimiento de DO-178B. Incluyen:

  • Plan de Aspectos de Certificación de Software (PSAC)
  • Plan de aseguramiento de la calidad del software
  • Plan de gestión de configuración de software
  • Procedimientos de control de configuración
  • Estándar de código de software
  • Estándar de diseño de software
  • Estándar de requisitos de software
  • Plan de desarrollo de software
  • Plan de verificación de software
  • Código fuente, objeto ejecutable, SCI y SECI
  • Documento de diseño de software
  • Documento de requisitos de software
  • Trazabilidad
  • Casos de prueba y procedimientos
  • Resultados de verificación
  • Registros de garantía de calidad
  • Registros de gestión de configuración
  • Informes de problemas
  • Resumen de logros de software

Compatibilidad con DO-178B con una herramienta de gestión de requisitos

Herramientas de gestión de requisitos como Los requisitos de Visure pueden admitir DO-178B proporcionando trazabilidad de extremo a extremo entre todos los requisitos, verificación, informes de problemas, listas de verificación y artefactos del proyecto. Ofrece un entorno cohesivo que actúa como un depósito centralizado y abierto para todos los artefactos, incluidos los objetivos DO-178B.

Con los requisitos de Visure, es fácil estandarizar y hacer cumplir los procesos definidos en toda la organización para cumplir con la directriz DO-178B y hacerlo de una manera accesible, colaborativa y rentable.

Gracias a su plataforma de integración versátil, Visure Requisitos puede integrarse con herramientas de terceros, comerciales o propietarias para ampliar el cambio. análisis de impacto funciones a elementos fuera de su alcance con el fin de admitir aún más DO-178B.

Otras características de gestión de requisitos de Visure Requirements incluyen filtros, vistas definidas por el usuario, interfaz de usuario basada en roles, proceso de requisitos definido gráficamente y trazabilidad de , flujos de trabajo integrados, un número ilimitado de atributos definidos por el usuario, gestión y comparación de versiones, y reversión a versiones anteriores, entre otros.

Conclusión

DO-178B es un estándar de software que garantiza que el software crítico para la seguridad se diseñe, desarrolle y pruebe de manera consistente y repetible. El estándar existe desde principios de la década de 1990 y se ha actualizado con el tiempo para tener en cuenta los cambios en la tecnología. Muchas organizaciones de aviación comercial exigen que sus proveedores estén certificados según DO-178B como parte de su relación comercial con ellos. Para lograr la certificación, las organizaciones deben pasar por un proceso riguroso que incluye la documentación de todos los aspectos del ciclo de vida del desarrollo de software. La plataforma ALM de requisitos de Visure es una de las pocas herramientas de gestión de requisitos que ha sido certificada para admitir DO-178B en el nivel A, el nivel más alto de certificación. Si está buscando una solución de extremo a extremo para administrar sus requisitos y desea garantizar el cumplimiento de este importante estándar, pruebe Visure Requirements hoy mismo. prueba el Prueba gratis de 30-day Ahora!

¡No olvides compartir esta publicación!

Comités

Llegue al mercado más rápido con Visure

Sinergia entre un enfoque de ingeniería de sistemas basado en modelos y un proceso de gestión de requisitos

17th diciembre, 2024

11 a. m. EST | 5:8 CEST | XNUMX a. m. hora del Pacífico

Fernando Valera

Fernando Valera

CTO, Soluciones Visure

Reducir la brecha entre los requisitos y el diseño

Aprenda cómo cerrar la brecha entre el MBSE y el proceso de gestión de requisitos.