Felhasználói eszközök

Eszközök a webhelyen


passport:therac-25

Ez a dokumentum egy előző változata!


Therac-25: A hibaüzenet, amit senki nem értett

A Therac-25 egy úgynevezett lineáris gyorsító (linac) volt, amelyet elsősorban rákos daganatok sugárkezelésére használtak az 1980-as években. Bár korának legmodernebb eszközének számított, a használata és elterjedtsége korlátozott maradt, éppen a bekövetkezett balesetek miatt. Összesen mindössze 11 darabot épített belőle az AECL (Atomic Energy of Canada Limited); 5 gép az Egyesült Államokban és 6 gép Kanadában üzemelt. Neves onkológiai központokban használták, többek között a texasi Tylerben, a washingtoni Yakimában és a kanadai Hamiltonban.

A berendezés a korábbi modellekhez (Therac-6, Therac-20) képest sokkal hatékonyabbnak tűnt, mert egyrészt a számítógépes vezérlés miatt a technikusoknak kevesebb manuális beállítást kellett végezniük, így több beteget tudtak ellátni egy nap alatt, másrészt egy új technológiának köszönhetően a gép kisebb helyet foglalt el, így olcsóbban lehetett telepíteni a kórházakba.

A Therac-25 kezelései alapvetően két helyszínen – a sugárbiztos kezelőben és a külső vezérlőteremben – zajlottak, szigorú, de a szoftveresítés miatt felgyorsított protokoll szerint.

Először a radiológus technikus a beteget a kezelőasztalra fektette és manuálisan beállította a gép fejét (gantry), a besugárzási mező méretét, valamint rögzítette a szükséges kiegészítőket. A gép úgynevezett „field light” (mezőfény) üzemmódba állításával egy tükör segítségével látható fényt vetítettek a betegre. Ez pontosan megmutatta, hová fog irányulni a (jó esetben) láthatatlan sugár.

Ezután a technikus elhagyta a védett szobát és a külső terminálnál (billentyűzet és monitor segítségével) megadta a beteg adatait és a kezelési tervet: az üzemmódot (Elektron vagy röntgen), az energiaszintet és a dózist. A szoftver összehasonlította a terminálon beírt adatokat a gép mechanikus beállításaival. Ha egyeztek, megjelent a „VERIFIED” felirat. Végül a technikus a „Beam ON” gombbal indította el a kezelést, amely általában 1–5 percig tartott.

A végzetes "gyorsaság"

A tapasztalt kezelők rendkívül gyorsan, rutinszerűen kezelték a billentyűzetet. Néha előfordult, hogy a kezelő véletlenül X-et (Röntgenmód) ütött be, majd villámgyorsan visszalépett és ezt javította E-re (Elektronmód). Ha ez a javítás 8 másodpercen belül történt, a szoftver kijelezte az új módot, de (és ez a kezelő számára nem derült ki) a gép belső mechanikája (a forgótárcsa) már nem állt át időben.

A berendezés ugyan jelezte a hibát a semmitmondó “Malfunction 54” hibakóddal, aminek a jelentése „dose input 2” (dózisbevitel 2) volt. Ez azonban még a szakembereknek sem mondott semmit arról, hogy mi a valódi probléma. A kezelőknek adott kézikönyvben nem szerepelt a hibakódok listája vagy magyarázata. Semmi nem utalt arra, hogy ez a jelzés bármilyen kockázatot jelentene a betegre.

Amikor a Malfunction 54 megjelent, a gép nem állt le vészleállással, hanem csak „szüneteltette” (Pause) a kezelést. A kezelőszemélyzet úgy tudta, hogy a szünetelést okozó hibák ártalmatlanok (például egy kisebb feszültségingadozás), és az eljárás a „P” (Proceed) gombbal egyszerűen folytatható.

A képernyőn a hiba mellett az jelent meg, hogy „No dose” (nincs dózis), vagyis a gép azt állította, hogy még egyáltalán nem sugárzott. A kezelő ezért nyugodt szívvel nyomta meg a folytatást, hogy a beteg megkapja a tervezett dózist – miközben valójában minden egyes gombnyomással újabb halálos retesznyitást hajtott végre a gép.

A technikusok naponta akár 40 hasonló hibaüzenetet is láttak, amelyek többsége valóban ártalmatlan volt. Emiatt kialakult náluk egyfajta „riasztási fásultság”: a Malfunction 54-et is csak egynek látták a sok bosszantó, de jelentéktelen szoftveres hiba közül.

Több esetben a betegek a kezelések után jelezték, hogy valami nincs rendben. Ray Cox, az egyik áldozat, egy „elektromos ütést” érzett és látta a gépből kivillanó kékes fényt. A kórházi személyzet azonban eleinte nem hitt nekik, mert a monitor tájékoztatása szerint minden a legnagyobb rendben zajlott.

Amikor a Tyler-i kórház először mégis jelezte a problémát az AECL-nek, a gyártó (meglehetősen arrogánsan) úgy reagált, hogy a Therac-25-tel soha nem történt még sugártúladagolás. Azt állították, hogy a gép hardveresen és szoftveresen is biztonságos, a hibát pedig elektromos zárlatnak, de leginkább tévedésnek tulajdonították.

Fritz Hager magánnyomozása

Fritz Hager, aki a texasi Tylerben található East Texas Cancer Center vezető fizikusa volt, nem fogadta el a gyártó válaszait. Amikor 1986 áprilisában egy második beteg is ugyanazokat az igencsak gyanús jelenségeket észlelte ugyanannál a technikusnál, Hager elhatározta, hogy addig nem hagyja abba a készülék tesztelését, amíg nem reprodukálja a jelenséget.

Hager és a technikus órákon és napokon át próbálgatták a gépet, de az hibamentesen működött. Végül rájöttek a titokra: a technikusnak olyan gyorsan kellett gépelnie, ahogy csak a napi rutin során szokott. Amikor Hagernek sikerült a javítást 8 másodpercen belül elvégeznie, a gép végre kiírta a hírhedt Malfunction 54 üzenetet.

Hager ekkor mérőműszereket telepített az ágyra, a beteg helyére, és elszörnyedve látta, hogy a gép a tervezett dózis százszorosát adta le. Ezzel a bizonyítékkal a kezében már nem tudott mit tenni a gyártó: kénytelenek voltak belső vizsgálatba kezdeni, majd végül beismerni a szoftverhibát és jelenteni az esetet az FDA-nak (U.S. Food and Drug Administration).

Hager felismerte, hogy a gyártó mérnökei azért nem bukkanhattak a hibára, mert ők „mérnöki lassúsággal”; óvatosan gépeltek, míg a napi rutinban dolgozó technikusok ujjai szinte repültek a billentyűkön, és a hiba csak ilyenkor állt elő.

Végül a vizsgálat során kielemezték, hogy a gépet vezérlő PDP-11 számítógép egy valós idejű operációs rendszert futtatott, amely egyszerre több feladatot (taszkot) kezelt. A szoftverben a billentyűzetről érkező adatok feldolgozása és a gép fizikai beállítása (például a tárcsa forgatása) két külön folyamat volt.

Amikor a kezelő Röntgenmódról Elektronmódra váltott, a szoftver elindított egy folyamatot a tárcsa mozgatására. Ha azonban a kezelő a javítást 8 másodpercen belül elvégezte, a szoftver egy része már az új adatokat látta, de a gép fizikai beállításáért felelős rész még a régi állapotnál tartott. A gép úgy hitte, minden készen áll, de valójában a röntgenmódhoz szükséges óriási sugárenergiát küldte ki a betegre.

Következmények

A Therac-25 tragédiája alapjaiban rengette meg az orvostechnikai eszközök szabályozását és a szoftverfejlesztési etikát.

Több túlélő áldozat és az elhunytak családtagjai indítottak kártérítési pert az AECL és a kezelést végző kórházak ellen. A felek végül minden esetben peren kívüli egyezséget kötöttek, így a kártérítések pontos összege soha nem került nyilvánosságra.

Az amerikai FDA (Élelmiszer- és Gyógyszerügyi Hivatal) 1987-ben hibásnak nyilvánította a berendezést, és elrendelte az összes Therac-25 leállítását, amíg a gyártó el nem végezte a szükséges módosításokat.

A gépeken végül több mint 20 módosítást végeztek, beépítették a korábban elhagyott mechanikus biztonsági reteszeket, amelyek a szoftvertől függetlenül képesek voltak leállítani a sugárzást. Az eset után kötelezővé tették a kórházak számára, hogy minden súlyos balesetet jelentsenek a hatóságoknak. Korábban ugyanis a gyártók elhallgathatták a hibákat, így a különböző kórházak nem tudtak egymás eseteiről.

A szoftver fejlesztőjét soha nem nevezték meg nyilvánosan. A vizsgálatok során kiderült, hogy a teljes vezérlőszoftvert egyetlen személy írta, PDP-11 assembly nyelven. A későbbi perek során a védőügyvédek sem tudták azonosítani a programozót, és semmit nem tudtak meg a végzettségéről vagy a korábbi tapasztalatairól sem. Annyit lehet tudni, hogy a programozó 1986-ban – még a botrány teljes kibontakozása előtt – távozott az AECL-től.

A Therac-25 azóta a szoftvermérnöki képzés „állatorvosi lova” lett: azt tanítják vele, hogy a túlzott magabiztosság, a szoftverbe vetett vak bizalom és a független biztonsági rendszerek elhagyása életekbe kerülhet.

Fritz Hager jelenleg is él, bár az 1980-as évek eseményei óta visszavonult a nyilvánosságtól. Nemrégiben (2024 végén) egy szakmai interjúban szólalt meg, amelyben ismét felidézte a Therac-25 eseményeit. Továbbra is fontosnak tartja, hogy a jövő szoftvermérnökei tanuljanak a múlt hibáiból.

Egy friss publikációban úgy nyilatkozott, hogy a Therac-25 esetei egyedülállóak a sugárterápia történetében, és fontos, hogy ezeket az „osztályteremben tanulják meg, ne pedig emberéletek árán”. A fizikus elszántsága nélkül valószínűleg még több áldozata lett volna a hibás szoftvernek, mivel a gyártó (AECL) az ő mindent elsöprő bizonyítékai előtt minden vádat tagadott.

Kedves olvasóm! Ha már idáig eljutottál az olvasásban, talán joggal feltételezhetem, hogy nem volt teljesen érdektelen számodra ez a bejegyzés. Jaj, le ne ixelj még; nem pénzt akarok tarhálni.

Pusztán annyit kérek, hogy ha van olyan ismerősöd, akivel jót tudnál vitatkozni az itt leírtakról, vagy csak simán megosztanád vele, kérlek ne késlekedj!

Továbbra is keresek megjelenési lehetőséget az írásaim számára. Ha esetleg van ötleted, ne késlekedj és osszd meg velem! Elérhetőségeim az Impresszumban találhatók.

A passport.blog jelenlegi egyetlen megjelenési lehetősége a Facebook. Ha értesülni szeretnél az új bejegyezésekről, kövesd a Bolyongó Facebook oldalt. Sajnos a Facebook valamilyen, előttem nem ismert okból nem engedi a blognak a „passport” nevet adni.

Eddigi bejegyzések a bolyongó.hu-n

Az összes bejegyzés ABC-be rendezett indexe itt található. A blog helyekhez köthető bejegyzései a google.maps térképen is megtalálhatók: A világ valódi csodái.

2025/07/20 08:26

Források

Ajánló

passport/therac-25.1776541851.txt.gz · Utolsó módosítás: szerkesztette: vamsan