1 / 38

Histoire de bugs

Histoire de bugs. Avant-propos. Le type de bug (buffer overflow, division par zéro, etc.) et ses coûts (perte sèche, correction, perte commerciale, etc.) sont rarement dévoilés. C’est donc par ordre chronologique que je me propose de vous présenter cette « Histoire des bugs célèbres »….

simeon
Download Presentation

Histoire de bugs

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Histoire de bugs

  2. Avant-propos • Le type de bug (buffer overflow, division par zéro, etc.) et ses coûts (perte sèche, correction, perte commerciale, etc.) sont rarement dévoilés. • C’est donc par ordre chronologique que je me propose de vous présenter cette « Histoire des bugs célèbres »…

  3. Sommaire Introduction Les années 60-70 Les années 80-90 L’après 2000 Conclusion

  4. Introduction • Un bug est une anomalie dans un programme informatique, qui l’empêche de fonctionner correctement. • Les conséquences peuvent être bénignes (comme un défaut d’affichage) à gravissimes (mort d’homme).

  5. 1945 : L’Histoire commence • Une panne sur le Mark II de l’US Navy en 1945 fut produite par une mite ayant empêché la fermeture d’un relais. • L’insecte (bug) a été scotché dans le journal de bord de l’ordinateur par Grace Hopper. Il est ainsi connu comme le premier bug… • Thomas Edison…

  6. 1962 : La sonde Mariner I • 22 juillet 1962 : La fusée qui portait la sonde Vénus Mariner I a dévié de sa trajectoire. Elle a du être détruite en vol. • Cause : un trait d’union oublié dans un programme fortran. • Coûts : • Un programme de plus de 80 millions d’euros. • Aucune perte humaine • Aurait pu être évité : relecture, test unitaire

  7. 1969 : Un grand pas… • 20 juillet 1969 : Alors que Neil Armstrong s’apprête à l’alunissage, des alarmes retentissent dans le LEM. • Cause : des aides au debugage “oubliées”. • Coûts : • Une grosse frayeur pour Armstrong • Aurait pu mener au crash du Lem • Aurait pu être évité : c’est délicat…

  8. 1982 : Quand l’arrondi n’a pas la cote • 1982 : le Vancouver stock exchange introduit un nouvel indice à la valeur nominale de Mille (1000,000). L'indice est tronqué après la 3ème décimale. • Après 22 mois sa valeur atteint 524,811 alors que la valeur correcte est 1098,811 • Cause : erreur d’arrondi • Coût : inconnu • Aurait pu être évité : tests aux limites

  9. 1983 : Y a-t-il un frigo dans l’avion ? • Août 1983 : un Boeing 767 de la compagnie United Airlines est congelé lors de son approche de Denver . • Cause : l’ordinateur d’économie de combustible est trop performant, il sur-refroidit les moteurs ! • Cause : non révélée • Coût : aucune victime • Aurait pu être évité : test d’endurance

  10. 1984 : Bons baisers de Russie • Décembre 1984 : Un missile de test russe doit atteindre l’Arctique. • Le missile fait une erreur de 180° et frappe Hamburg (Allemagne). • Cause : arithmétique • Coûts : aucune victime • Aurait pu être évité : tests aux limites

  11. 1985 : Le bug de la mort qui tue • 1985-86 : la machine Therac 25 chargée de traiter des patients atteints du cancer leur a administré une dose mortelle de radiations. • Lorsque le technicien tapait trop vite, le logiciel n’avait pas le temps de suivre et envoyait une très forte dose. • Cause : hardware buffer overflow • Coûts : 5 décès • Aurait pu être évité : tests de robustesse

  12. 1988 : Bank of America, impair et passe • Février 1988 : 28 milliards de dollars transférés sur de mauvais comptes (mauvaises banques). • Seuls 24 milliards sont récupérés ! • Cause : « problème hardware » • Coûts : supérieur à 4 milliards de $ • Aurait pu être évité : non, trop forts les Russes ;)

  13. 1990 : Le bug louche • 25 avril 1990 : Le télescope spatial Hubble est affligé d'un méchant strabisme. • Cause : un bug dans le programme pilotant la machine de polissage de son miroir (certains contrôles de qualité avaient été supprimés pour réduire les coûts...). • Réparé en décembre 1993 avec le remplacement de la caméra par une caméra spécifique corrigeant l’aberration sphérique du miroir. • Coûts : 500 millions de dollars, soit 1/3 du coût total de l’engin ! • Aurait pu être évité : test de Foucault ?

  14. 1991 : Fatal retard • 25 février 1991 : une batterie de missiles Patriot à Dashran (Arabie Saoudite) échoue dans l'interception d'un Scud. Le scud (vitesse MACH 5) atteint un bâtiment de l'armée et tue 28 américains. • Cause : un bug dans l’arrondi des temps (en 10èmes de seconde); cumulé sur 100 heures. • Coûts : 28 morts • Aurait pu être évité : test d’endurance

  15. 1991 : Fatal retard (suite) Au delà de 20 heures la batterie est inopérationnelle. Elle a failli après 100 heures…

  16. 1991 : Fatal retard (suite)

  17. 1991 : Fatal retard (fin)

  18. 1993 : Le bug du Pentium • 1993 : le tout nouveau processeur d’Intel livre des résultats erronés. • Cause : oubli du transfert d’une table de valeurs précalculées. • Coût pour Intel : 475 millions de $ • Aurait pu être évité : intégration ?

  19. 1994 : Un hélico capricieux • 2 juin 1994 : un hélicoptère chinook de la Royal Air Force, qui transportait des experts irlandais, s’écrase en écosse tuant ses 29 occupants (25 passagers, 4 membres d’équipage). • Cause : On parle d’abord d’une erreur humaine, mais une enquête s’oriente vers le logiciel FADEC.

  20. 1994 : Un hélico capricieux (suite) • En 1993 un rapport note que « après avoir examiné seulement 18 pour cent du code 486 anomalies ont été trouvées et la revue arrêtée ». • Le rapport avait également noté que « des défauts moteurs intermittents étaient régulièrement éprouvés par l'équipage du Chinook et il y avait des exemples de pointes non commandées des moteurs vers le haut et vers le bas, ainsi que des mouvements non demandés de commandes de vol ». • Après l’accident des tests montreront que le logiciel FADEC « est invérifiable et … donc incompatible avec son objectif. ».

  21. 1996 : Ariane • 4 juin 1996 : le lanceur Ariane 5 explose à Kourou (Guyane) lors de son premier vol de qualification. • Ironie du sort : le code qui a planté produisait de l'information utile seulement avant décollage ! • Cause : numeric overflow • Coût : > 1 milliard de $ • Aurait pu être évité : tests d’intégration

  22. 1999 : Mars Climate Orbiter • 23 septembre 1999 : Mars Climate Orbiter « entre » dans l'atmosphère martienne à seulement 57 km de la surface. • Elle est détruite par les turbulences et les frottements atmosphériques.

  23. 1999 : Mars Climate Orbiter (fin) • Cause : données fournies en livre/seconde, attendues en newton/seconde. • Coûts : la sonde seule coûtait 125 millions de $ • Aurait pu être évité : spécs, intégration • Heureusement : il reste Mars Polar Lander …

  24. 1999 : Mars Polar Lander • 3 décembre 1999 : perte de Mars Polar Lander. • Lors de l’enquête, D. Goldin a démenti que la NASA ait pu cacher des informations sur les défaillances du réacteur de la sonde Mars Polar Lander. • Il a affirmé au contraire que des essais avaient eu lieu en novembre qui avaient conduit à une reprogrammation sur la sonde.

  25. 2001 : Mars Odyssey • 7 avril 2001 : La sonde Mars Odyssey a été lancée avec succès. • C'est en effectuant un test sur l'atterrisseur de Mars Surveyor 2001 que l'on a découvert le bug fatal qui aurait coûté la vie à Mars Polar Lander. • Amputée de son atterrisseur, la mission Mars Surveyor 2001 ne comprend donc plus qu'un orbiteur, mais cette amputation lui fut salutaire !

  26. 2005 : Bug politique • 21 septembre 2005 : Une trentaine d'habitants de Grenoble ont été réveillés en pleine nuit par un coup de fil d'Alain Carignon, ancien maire de Grenoble et alors président de l'UMP-Isère. • Une opération de marketing téléphonique utilisant la voix d'Alain Carignon, a connu un bug : les personnes absentes en journée ont été rappelées en pleine nuit. • Coût : au moins 37 voix • Aurait pu être évité : appeler un numéro occupé, c’était simple, comme test, non ?

  27. Et pour la bonne bouche…

  28. Sécurité maximum

  29. Ouvert 24h/24, fermé 7j/7 Bug non corrigé à ce jour malgré publication dans SVM de mars !

  30. L’été sera chaud à Melun

  31. Euh… j’hésite !

  32. Cliquer ou ne pas cliquer ?

  33. 1990 Quel avenir pour le bug ? 1970 1980 Et demain ? 2000

  34. Conclusion • Les projets les plus sérieux laissent encore passer les bugs les plus stupides. • La technologie ne cesse de se complexifier. On ne peut donc compter que sur un progrès des tests…

  35. Des questions ?

  36. Proposition de Questions pour l’examen • Qu’est-ce qu’un bug ? • Citer 2 types de bug fréquents

  37. Merci !

More Related