- #Vesmír
- 2 min.
- 4.6.2025
Keď 37 sekúnd stálo miliardy: Zlyhanie Ariane 5 navždy zmenilo svet softvéru
Presne 4. júna 1996 o 12:33 UTC odštartovala z kozmodrómu Kourou vo Francúzskej Guyane nová európska nosná raketa Ariane 5 na svoj prvý let. Bol to veľký deň pre Európsku vesmírnu agentúru (ESA), ktorá do vývoja tejto rakety investovala viac než 7 rokov práce a viac ako 500 miliónov dolárov.
Namiesto oslavného víťazstva však nastala katastrofa. Len 37 sekúnd po štarte sa raketa začala z výšky 3,7 km nekontrolovane odkláňať z trajektórie. Z bezpečnostných dôvodov bola zničená aj s dvojicou cenných satelitov na palube.
Príčina zlyhania sa neukrývala vo výbušninách, či zlyhaní motorov, ale v niečom omnoho abstraktnejšom, v softvéri. Aby sme boli presní, v chybe pri konverzii dát. Systém riadenia trysiek rakety spracovával dáta o polohe a rýchlosti pomocou softvéru zdedeného z predchádzajúcej generácie (Ariane 4). Ten však nepočítal s omnoho dynamickejším letovým profilom Ariane 5.
V okamihu, keď sa systém pokúsil skonvertovať 64-bitové desatinné číslo reprezentujúce horizontálnu rýchlosť na 16-bitové celé číslo, došlo k pretečeniu buffera, k fatálnej chybe. Softvér následne vyhodil výnimku, no keďže druhý (záložný) systém bežal úplne rovnaký kód, správal sa rovnako. Raketa stratila orientáciu a autonómny bezpečnostný systém vydal rozkaz na jej zničenie.
Tento incident sa stal učebnicovým príkladom zlyhania v oblasti softvérového inžinierstva. Odhalil niekoľko zásadných nedostatkov: absenciu dostatočného testovania v reálnych podmienkach, chýbajúcu kontrolu výnimiek a nepochopenie rozdielov medzi verziami rakiet. Hoci bol výsledok tragický, práve táto skúsenosť sa stala dôvodom, prečo sa neskôr Ariane 5 vyprofilovala ako jeden z najspoľahlivejších vesmírnych nosičov, je schopný dopraviť na orbit satelity, vedecké experimenty ako i modul s teleskopom Jamesa Webba.
Výbuch Ariane 5 ukázal, že vo svete technológií môžu byť aj tie najdrahšie a najdokonalejšie projekty zraniteľné kvôli jedinému podceneniu počítačového kódu. Poučenie z tohto neúspechu dodnes rezonuje v dizajne každého kritického systému, od autonómnych áut, cez lietadlá, až po zdravotnícke zariadenia.