Les 10 règles de la NASA pour coder "safe"

Bonjour,

La NASA a publié The Power of Ten Rules for Developing Safety Critical Code, un ensemble de 10 règles
visant à améliorer la sécurité dans le code.

Certains points sont évidents (retours de fonctions…), d’autres sont tendancieux (goto…).

Que pensez-vous de ce “standard” ?

PS : Un article sur le sujet

1 « J'aime »

A moins de coder en ASM ou en Basic, on m’a toujours dit que les “goto” étaient à bannir donc cela ne me choque pas.

Toutes ces règles ont pour but de limiter les risques et le manque de contrôle sur le code. Par exemple, concernant la limitation de l’usage du préprocesseur, c’est logique de devoir le limiter vu que le typage n’est pas contrôlé par le développeur mais bel et bien par le préprocesseur. Je ne connais pas l’aérospatiale mais quand je bossais dans l’aéronautique, il fallait que les logiciels embarqués répondent (entre autres) à la norme DO-178 et selon le niveau, il y avait plus ou moins de restrictions.

Cet ensemble de règles est propre au domaine de l’aérospatiale (et aux langages qui y sont employés). Il ne faut donc pas le considérer comme standard universel mais bel et bien comme standard en informatique aérospatiale même s’il peut être intéressant de l’appliquer ailleurs (surtout justement pour les goto réputés pour casser la structure du code).

1 « J'aime »
Human Coders - Le centre de formation recommandé par les développeur·se·s pour les développeur·se·s