Parece que muchos instrumentos militares/espaciales/de aviación están programados en Ada o Spark. Porque estos lenguajes reclamaban y demostraban su seguridad. ¿Qué sucede si su sistema no está escrito en estos idiomas? ¿Influirá eso en que la FAA le otorgue el certificado de aeronavegabilidad?
En mi experiencia, el lenguaje de programación seleccionado es menos importante que otros factores como:
El desarrollo de software para sistemas aerotransportados generalmente está cubierto por DO-178C (siendo C la última revisión). Cuando las autoridades de certificación analicen su proyecto, buscarán asegurarse de que ha cumplido con todos los objetivos establecidos en este documento, tiene procesos documentados para satisfacer esos objetivos y evidencia de que los ha seguido.
DO-178C no exige ningún idioma en particular sobre otro, se trata de proceso. Como se mencionó, el uso de compiladores calificados / calificables le permite reclamar crédito por muchos de los objetivos relacionados con la trazabilidad del código fuente a objeto, es decir, el código C que escribí coincide con el resultado del compilador. Hay casos en los que un compilador puede optimizar ciertas decisiones en el código según la configuración de optimización. Los desarrolladores deben comprender esta configuración y ceñirse a las pautas establecidas por el desarrollador del compilador.
Si no tiene un compilador calificado, deberá realizar el seguimiento del código fuente-objeto manualmente o usar una herramienta de verificación calificada para verificar la salida.
Además de DO-178C, hay una serie de complementos, incluido DO-332, que cubre técnicas de programación orientada a objetos para admitir lenguajes como C++.
En resumen: el idioma no importa tanto como el proceso.
DJClayworth
Pondlife