Articles avec le tag ‘bug’
Les bugs qui coûtent chers…
Tout le monde connait la notion de « bug informatque », ces petits dysfonctionnements présents dans un programme informatique et qui font s’arrêter le système, donnent des résultats aberrants ou encore de magnifiques écrans bleu (Blue Sreen Of Death). Jusque là, rien de bien dramatique. Juste quelques utilisateurs qui râlent, des PC à redémarrer… Mais quand l’impact du bug se compte en quelques millions de dollars ou en vies humaines, les conséquences sont autres.
Petit tour d’horizon des bugs les plus chers (et parfois les plus ridicules) de l’histoire de l’Informatique.
Attention aux approximations
23 Août 1991 : Une plate-forme de forage de 100 000 tonnes coule provoquant un séisme de magnitude 3 sur l’échelle de Richter. L’expertise a montré qu’une approximation effectuée dans le logiciel de calcul de la résistance des parois a conduit à une sous-estimation de 47% de cette résistance. Le point de rupture était situé à 65m de profondeur, alors que les calculs sans estimation ont montré que la rupture était probable à partir de 62m. Coût estimé : 700 millions de dollars
Attention à l’accumulation de retard…
25 février 1991 : En Arabie Saoudite, un missile irakien détruit un baraquement américain. Bilan : 28 morts, 100 blessés. Pourquoi les américains n’ont-il pas envoyé de missiles anti-missiles ?
Le logiciel chargé de la protection de la base effectuait une erreur d’arrondi lors du calcul du temps, erreur évaluée à 0,000000095 secondes. Or, le logiciel étant au moment de la catastrophé lancé depuis 100 heures, l’erreur finale était de 0,3 secondes. De plus, la vitesse d’un missile étant 1676m/s, l’erreur commise sur la position était de 500m. L’alerte n’a donc pas été déclenchée et aucune protection n’a été lancée. Le plus drôle (ou grave, selon les points de vues…) est que le bug a été détecté le 11 février, donc bien avant ‘attaque. Le correctif de ce bug est arrivé le 26 février.
Attention à la réutilisation !
4 juin 1996 : La fusée Arianne 5, lancée depuis la base de Kourou en Guyanne Française, s’auto-détruit après 40 secondes de vol. Une vitesse horizontale importante avait été signalée peu avant par le Système de Référence Inertielle. Ce système (SRI), développé pour Arianne 4, n’était plus utile sur Ariane 5 mais à été conservé néanmoins.
Les études ont montré que l’erreur était due à un dépassement de capacité dans le code du SRI (pour les non-initié : un dépassement de capacité, ou buffer overflow, se produit lorsquer le codage de la valeur stockée est plus important que la taille mémoire disponible pour le stockage. Par exemple, une valeur de 32 se code sur 5 bits. Si la mémoire utilisée pour stocker cette valeur ne fait que 4bits, on aura alors un dépassement de capacité). La vitesse d’Ariane 5 est bien plus élevée que celle d’Ariane 4, par conséquent le SRI conservé depuis Ariane 4 ne pouvait supporter cette valeur. Coût de la perte : 500 millions de dollars
(Mes-)Entente entre les équipes de développement
Pour finir, un petit « bug » qui n’ a rien d’informatique, mais dont les auteurs auraient dû recevoir le prix IgNobel de la communication…
23 septembre 1999 : la sonde Mars Climate Orbiter, chargée de graviter autour de la planète rouge, est déclarée disparue après plusieurs heures sans réponse aux appels incessants de la base. Il semblerait que la sonde ait survolé Mars à une altitude beaucoup plus basse que celle prévue théoriquement, ce qui aurait provoqué son crash sur la planète. De nombreuses études sont menées pour découvrir la cause du problème, notamment sur le logiciel chargé d’effectuer la dernière correction de trajectoire avant la mort de la sonde. Il était en effet très probable que l’erreur vienne d’ici (dernière « personne » à avoir vu la sonde vivante…)
Après une semaine complète de recherches dans tous les rouages du projet concernant Mars Climate Orbiter, le verdict tombe, et il en est presque ridicule.
En effet, deux équipes avaient travaillées lors de la conception d’un des logiciels embarqués dans la sonde. L’une d’entre elle, composée d’ingénieurs du Lockheed Martin Astronautics, envoyait ses données en utilisant le système métrique anglo-saxon (pieds, miles et autres joyeusetés), tandis que l’autre, ingénieurs du Jet Propulsion Laboratory, utilisait ces données transmises en considérant qu’elles étaient codées dans le système métrique international. Les systèmes de correction de trajectoires « exploitaient » donc ces erreurs en imposant à la sonde une erreur de trajectoire qui lui fut fatale…
Pour teminer, petit clin d’oeil à la sonde russe Kosmos, écrasée elle aussi sur Mars suite à une erreur de paramétrage. En effet, le module chargé de positionner la sonde correctement après sa mise en orbite ne s’est pas allumé comme prévu. Il a été montré que cette erreur est due à la mauvaise manipulation d’un technicien qui a programmé la mise en route du module, non pas à 1,5 heures comme prévu, mais 1,5 années… Epic Fail…
« Informatique : Alliance d’une science inexacte et d’une activité humaine faillible »Luc Fayard, Dictionnaire impertinent des branchés