Le 23 septembre dernier, la NASA a vécu un jour particulièrement noir. Mars Climate Orbiter, une des sondes envoyées par l'agence américaine vers la planète rouge, ratait sa mise en orbite. Elle s'est soit consumée dans l'atmosphère martienne, soit crashée sur la planète.
A la tristesse provoquée par la perte du vaisseau, qui naviguait depuis neuf mois vers sa cible, a rapidement succédé la stupeur, lorsqu'on a appris les causes de cet échec: dans le logiciel de navigation, les pouces et les pieds du système anglo-saxon de mesures de longueur côtoyaient les mètres. Le tout sans prévoir la conversion automatique de ces deux types de données.
Mercredi, la commission de la NASA chargée d'enquêter sur ce bug peu glorieux a rendu un premier rapport. Elle propose diverses mesures pour pallier ce type d'accident, avec effet immédiat. Car le temps presse: le 3 décembre prochain, un autre vaisseau – le Mars Polar Lander – arrive à destination, avec un atterrissage à la clé près du pôle Sud de la planète. Sûr que personne ne pardonnera une seconde erreur d'arithmétique élémentaire à la NASA.
Ce funeste 23 septembre, Mars Climate Orbiter arrive dans la banlieue martienne. Après un voyage de 670 millions de kilomètres (ou 416,4077 millions de miles?*), la sonde s'apprête à entamer le léger freinage qui lui permettra de se mettre sur une orbite elliptique autour de la planète. Lorsqu'elle aborde la planète par la tangente, elle doit impérativement viser une fourchette d'altitudes assez étroite: si elle passe trop loin de la planète, elle poursuit son voyage vers l'infini, si elle passe trop près, elle entre dans une atmosphère dense qui, par frottement, la ferait se consumer. Les ingénieurs avaient choisi l'altitude de 140 kilomètres. Un logiciel la propulse à 37,29 miles. L'accident était inévitable. La NASA, encore sereine, perd contact avec son engin: c'est normal, il est en train de tourner derrière la planète. Elle n'entendra plus jamais les joyeux bips-bips qui auraient dû lui parvenir lorsque les antennes radio étaient censées être à nouveau en vue de la Terre.
Le Commission d'enquête de la NASA a ainsi confirmé mercredi que la cause principale de la perte du vaisseau spatial était «l'absence de conversion des unités anglo-saxones en unités métriques dans un segment du logiciel de navigation». Il ne s'agissait pas d'un logiciel embarqué à bord de la sonde, mais d'un programme utilisé par les ingénieurs au sol.
Mais les enquêteurs ne se sont pas arrêtés là. La commission a cherché à comprendre comment l'erreur a pu être commise, comment elle s'est propagée jusqu'au moment où elle a résulté dans la perte de cette sonde chère aux scientifiques (surtout les adeptes de météo martienne) et aux contribuables (elle a coûté 327 millions de dollars).
Dans son analyse, la commission a notamment relevé que les diverses équipes d'ingénieurs communiquaient entre elles par des canaux trop informels; que la petite équipe chargée de la navigation était surchargée, et que son travail n'était pas contrôlé par des experts indépendants; que les processus de vérification et de validation des équipements produits par les différents groupes associés au projet étaient inadéquats… Bref, il existait des problèmes de communication entre les centaines de personnes qui ont gravité autour de ce projet, de sa conception jusqu'à l'arrivée dans la banlieue martienne. Arrivés à cet instant crucial, toujours selon la commission d'enquête, les navigateurs n'ont pas été correctement informés sur l'orientation du vaisseau qu'ils dirigeaient. Flairant quelque chose, ces derniers ont même hésité à rallumer le moteur de l'engin pour l'éloigner de la planète, une procédure qui était prévue en option. Ils ne l'ont pas fait. Dommage.
* Un mile = 1609 mètres.