Błąd oprogramowania zabijał ludzi. Dostawali śmiertelne dawki promieniowania

Błąd oprogramowania zabijał ludzi. Dostawali śmiertelne dawki promieniowania

Historia błędów oprogramowania zazwyczaj kończy się na irytacji użytkowników i utracie czasu, ale w latach 80. jeden z takich błędów miał tragiczne konsekwencje. Aparat do radioterapii Therac-25, reklamowany jako przełom w leczeniu onkologicznym, stał się przyczyną serii śmiertelnych wypadków. W latach 1985–1987 co najmniej sześciu pacjentów otrzymało dawki promieniowania stukrotnie przekraczające normę, a trzy osoby zmarły w wyniku tych zdarzeń.

Artykuł opublikowany przez Anne Marie Porrello, studentkę informatyki na California Public University, szczegółowo opisuje naturę błędu/wypadku w sześciu znanych przypadkach. Therac-25 miał być urządzeniem nowej generacji, łączącym w jednym kompaktowym systemie dwa tryby działania. Pierwszy pozwalał na terapię wiązką elektronów w leczeniu nowotworów skóry, drugi – na wykorzystanie promieniowania rentgenowskiego do terapii guzów głębokich. Z perspektywy szpitali była to atrakcyjna oferta: dwa tryby leczenia w jednym urządzeniu, przy jednoczesnym ograniczeniu kosztów i miejsca.

Odejście od blokad sprzętowych

Największą innowacją Therac-25 było przejście na sterowanie wyłącznie programowe. Wcześniejsze maszyny, jak Therac-20, posiadały blokady elektromechaniczne, które zapobiegały uruchomieniu niebezpiecznych trybów, nawet jeśli oprogramowanie zawierało błędy. W nowym modelu producent, firma AECL, zrezygnował z tych zabezpieczeń, zakładając, że oprogramowanie jest wystarczająco niezawodne. Decyzja ta okazała się fatalna.

Wyścig z maszyną

Analizy wykazały, że tragiczne wypadki były efektem rzadkiego, lecz powtarzalnego błędu w logice programu. Jeśli operator wprowadzał zmiany w trybie pracy wyjątkowo szybko – na przykład poprawiając błędnie wybraną opcję – oprogramowanie nie nadążało z kontrolą bezpieczeństwa. Maszyna potrzebowała około ośmiu sekund na przełączenie wiązki, lecz szybkie komendy operatorów zakłócały proces i prowadziły do sytuacji, w której pacjent otrzymywał dawkę promieniowania nieprzeznaczoną dla wybranego trybu.

Od urazów do śmierci

Pierwszy udokumentowany przypadek miał miejsce w czerwcu 1985 roku w Marietta w stanie Georgia, gdzie pacjentka doznała ciężkich obrażeń i utraty sprawności ramienia. W kolejnych miesiącach podobne zdarzenia wystąpiły w Kanadzie i Stanach Zjednoczonych. Trzy ofiary zmarły po sesjach radioterapii w latach 1986–1987 w Tyler w Teksasie oraz w Yakimie w stanie Waszyngton. Raporty medyczne wskazywały na poparzenia, uszkodzenia organów i nieodwracalne zmiany w tkankach.

Reakcja producenta i organów regulacyjnych

Firma AECL początkowo unikała odpowiedzialności i sugerowała błędy po stronie operatorów. Dopiero wiosną 1986 roku rozpoczęto szczegółowe dochodzenie, a amerykańska FDA podjęła własne działania kontrolne. Badania potwierdziły, że źródłem problemu był krytyczny błąd w logice programu oraz brak niezależnych zabezpieczeń sprzętowych.

Skandal związany z Therac-25 stał się punktem zwrotnym w podejściu do oprogramowania medycznego. W środowisku akademickim i przemysłowym zaczęto szerzej mówić o konieczności formalnej weryfikacji kodu, rygorystycznych testów i dokładniejszej dokumentacji. Do dziś przypadek ten omawiany jest jako jedna z najbardziej znanych przestrog w historii inżynierii oprogramowania, pokazująca, że w systemach odpowiedzialnych za ludzkie życie najmniejszy błąd może prowadzić do katastrofy.

Obserwuj nas w Google News

Pokaż / Dodaj komentarze do: Błąd oprogramowania zabijał ludzi. Dostawali śmiertelne dawki promieniowania

 0
Kolejny proponowany artykuł
Kolejny proponowany artykuł
Kolejny proponowany artykuł
Kolejny proponowany artykuł