Encore un exemple de code spaghetti : Toyota

Posté par (page perso) . Édité par ZeroHeure, palm123, Benoît Sibaud, Nicolas Casanova et BAud. Modéré par tuiu pol. Licence CC by-sa
Tags :
53
6
mar.
2014
C et C++

Après plusieurs journaux récents concernant des histoires de mauvaises pratiques de code dans des logiciels de sécurité (goto fail pour Apple et goto cleanup pour GnuTLS, divers patchs monolignes erronés), nous avons maintenant une histoire où de mauvaises pratiques de code dans de l'embarqué ont entraîné un accident grave.

Toyota a mis en vente en 2005 sur le marché son modèle Camry, dont le moteur est contrôlé par de l'électronique et du logiciel. Par exemple la pression sur la pédale de frein est détectée par un capteur que le système doit analyser pour commander le freinage.

Un jour lors d'un freinage périlleux le freinage électronique a échoué à freiner efficacement, entraînant un accident qui a coûté la vie à la conductrice et blessé gravement son amie.

Dans un procès fait à Toyota, deux experts en embarqué ont donné leur avis sur le code source que Toyota avait utilisé dans sa voiture. C'était du code très sale, comme vous pouvez le voir dans la suite de cette dépêche.

NdM : merci à Zarmakuizz pour son journal.