Inhaltsverzeichnis
Therac-25: Die Fehlermeldung, die niemand verstanden hat
Die Therac-25 ist ein sogenannter linearen Beschleuniger (Linac) , der in den 1980er Jahren vor allem zur Strahlentherapie von Krebsgeschwüren eingesetzt wurde. Obwohl er zu den modernsten Geräten seiner Zeit zählte, blieben sein Einsatz und seine Verbreitung gerade wegen der aufgetretenen Unfälle begrenzt. Insgesamt wurden nur 11 Exemplare davon von der AECL (Atomic Energy of Canada Limited); 5 Geräte waren in den Vereinigten Staaten und 6 in Kanada im Einsatz. Sie wurden in renommierten onkologischen Zentren eingesetzt, unter anderem in Tyler (Texas), Yakima (Washington) und Hamilton (Kanada).
Das Gerät schien im Vergleich zu den Vorgängermodellen (Therac-6, Therac-20) wesentlich effizienter zu sein, da zum einen die Techniker dank der computergesteuerten Regelung weniger manuelle Einstellungen vornehmen mussten, sodass sie an einem Tag mehr Patienten behandeln konnten, und andererseits nahm das Gerät dank einer neuen Technologie weniger Platz ein, wodurch die Installation in den Krankenhäusern kostengünstiger war.
Die Behandlungen mit dem Therac-25 fanden im Wesentlichen an zwei Orten statt – im strahlungsgeschützten Behandlungsraum und im externen Kontrollraum – und erfolgten nach einem strengen, durch die Softwareunterstützung jedoch beschleunigten Protokoll.
Zunächst legte der Radiologietechniker den Patienten auf den Behandlungstisch, stellte den Gerätkopf (Gantry) und die Größe des Bestrahlungsfeldes manuell ein und befestigte die erforderlichen Aufsätze. Durch die Umstellung des Geräts in den sogenannten „Field Light“-Modus (Feldlicht) wurde mithilfe eines Spiegels sichtbares Licht auf den Patienten projiziert. Dies zeigte genau, wohin der (im Idealfall) unsichtbare Strahl gerichtet sein würde.
Anschließend verließ der Techniker den geschützten Raum und gab am externen Terminal (mithilfe von Tastatur und Monitor) die Patientendaten sowie den Behandlungsplan ein: den Betriebsmodus (Elektron oder Röntgen), die Energiestufe und die Dosis. Die Software verglich die am Terminal eingegebenen Daten mit den mechanischen Einstellungen des Geräts. Bei Übereinstimmung erschien die Meldung „VERIFIED“ . Schließlich drückte der Techniker die Taste „Beam ON“ die Behandlung, die in der Regel 1–5 Minuten dauerte.
Die verhängnisvolle „Schnelligkeit“
Erfahrene Bediener bedienten die Tastatur äußerst schnell und routiniert. Manchmal kam es vor, dass der Bediener versehentlich „X“ (Röntgenmodus) eingab, dann blitzschnell zurückging und dies in „E“ (Elektronenmodus) korrigierte. Geschah diese Korrektur innerhalb von 8 Sekunden, zeigte die Software den neuen Modus an, doch (was dem Bediener nicht auffiel) die interne Mechanik des Geräts (die Drehscheibe) hatte die Umstellung nicht rechtzeitig vollzogen.
Das Gerät meldete den Fehler zwar mit der nichtssagenden Meldung „Malfunction 54“ an, dessen Bedeutung „Dosis-Eingabe 2“ (Dosis-Eingabe 2) lautete. Dies sagte jedoch selbst den Fachleuten nichts darüber aus, worin das eigentliche Problem bestand. Das Handbuch für das Bedienpersonal enthielt weder eine Liste noch eine Erläuterung der Fehlercodes. Nichts deutete darauf hin, dass diese Meldung ein Risiko für den Patienten darstellen könnte.
Als der „Malfunction 54“ erschien, schaltete sich das Gerät nicht in einen Not-Aus-Zustand, sondern wurde lediglich „unterbrach“ (Pause) die Behandlung. Das Bedienpersonal ging davon aus, dass die Fehler, die zu dieser Unterbrechung führten, harmlos seien (beispielsweise eine geringfügige Spannungsschwankung) und dass der Vorgang einfach mit der Taste „P“ (Proceed) fortgesetzt werden könne.
Auf dem Bildschirm erschien neben dem Fehler die Meldung „No dose“ (keine Dosis), das heißt, das Gerät gab an, noch überhaupt keine Strahlung abgegeben zu haben. Der Bediener drückte daher beruhigt auf „Weiter“, damit der Patient die geplante Dosis erhielt – während das Gerät in Wirklichkeit mit jedem Tastendruck eine weitere tödliche Verriegelungsaufhebung durchführte.
Die Techniker sahen täglich bis zu 40 ähnliche Fehlermeldungen, von denen die meisten tatsächlich harmlos waren. Aus diesem Grund entwickelte sich bei ihnen eine Art „Alarm-Apathie“entwickelt: Auch „Malfunction 54“ sahen sie nur als einen von vielen lästigen, aber unbedeutenden Softwarefehlern an.
In mehreren Fällen gaben Patienten nach den Behandlungen an, dass etwas nicht in Ordnung sei. Ray Cox, eines der Opfer, berichtete von einem „Stromschlag“ und sah ein bläuliches Licht, das aus dem Gerät blitzte. Das Krankenhauspersonal glaubte ihnen jedoch zunächst nicht, da laut den Angaben auf dem Monitor alles einwandfrei verlief.
Als das Krankenhaus in Tyler das Problem schließlich doch erstmals bei AECL meldete, reagierte der Hersteller (ziemlich arrogant) mit der Aussage, dass es mit dem Therac-25 noch nie zu einer Strahlenüberdosis gekommen sei. Man behauptete, das Gerät sei sowohl hardwaremäßig als auch softwaremäßig sicher, und führte den Fehler auf einen elektrischen Kurzschluss, vor allem aber auf ein Versehen zurück.
Fritz Hagers private Ermittlungen
Fritz Hager, der im East Texas Cancer Center in Tyler, Texas, tätig war, akzeptierte die Antworten des Herstellers nicht. Als im April 1986 ein zweiter Patient bei demselben Techniker dieselben höchst verdächtigen Phänomene beobachtete, beschloss Hager, die Tests des Geräts so lange fortzusetzen, bis er das Phänomen reproduzieren konnte.
Hager und der Techniker probierten das Gerät stunden- und tagelang aus, doch es funktionierte einwandfrei. Schließlich kamen sie dem Geheimnis auf die Spur: Der Techniker musste so schnell tippen, wie er es im täglichen Arbeitsablauf gewohnt war. Als es Hager gelang, die Reparatur innerhalb von 8 Sekunden durchzuführen, gab die Maschine endlich die berüchtigte „Malfunction 54“ an.
Hager brachte daraufhin Messgeräte am Bett, an der Stelle des Patienten, an und stellte entsetzt fest, dass die Maschine das Hundertfache der vorgesehenen Dosis abgab. Angesichts dieses Beweises konnte der Hersteller nichts mehr ausrichten: Er war gezwungen, eine interne Untersuchung einzuleiten, schließlich den Softwarefehler einzugestehen und den Vorfall der FDA (U.S. Food and Drug Administration).
Hager erkannte, dass die Ingenieure des Herstellers den Fehler nicht entdecken konnten, weil sie „mit der für Ingenieure typischen Langsamkeit“; sie tippten vorsichtig, während die Finger der Techniker, die im Arbeitsalltag tätig waren, geradezu über die Tasten flogen, und der Fehler trat nur dann auf.
Schließlich wurde im Rahmen der Untersuchung festgestellt, dass der PDP-11-Computer ein Echtzeit-Betriebssystem lief, das mehrere Aufgaben (Tasks) gleichzeitig verwaltete. In der Software waren die Verarbeitung der von der Tastatur kommenden Daten und die physische Einstellung des Geräts (zum Beispiel das Drehen der Scheibe) zwei getrennte Prozesse.
Als der Bediener vom Röntgenmodus in den Elektronenmodus wechselte, startete die Software einen Prozess zur Bewegung der Scheibe. Wenn der Bediener die Korrektur jedoch innerhalb von 8 Sekunden vornahm, sah ein Teil der Software bereits die neuen Daten, während der für die physikalische Einstellung des Geräts zuständige Teil noch den alten Zustand beibehielt. Das Gerät glaubte, alles sei bereit, strahlte jedoch tatsächlich die für den Röntgenmodus erforderliche enorme Strahlungsenergie auf den Patienten ab.
===== Folgen =====Die Tragödie um den Therac-25 erschütterte die Regulierung medizinischer Geräte und die Ethik der Softwareentwicklung in ihren Grundfesten.
Mehrere überlebende Opfer und Angehörige der Verstorbenen reichten Schadensersatzklagen gegen AECL und die behandelnden Krankenhäuser ein. Die Parteien einigten sich schließlich in allen Fällen außergerichtlich, sodass die genauen Höhe der Entschädigungszahlungen nie veröffentlicht wurden.
Die US-amerikanische FDA (Food and Drug Administration) erklärte das Gerät 1987 für fehlerhaft und ordnete die Stilllegung aller Therac-25-Geräte an, bis der Hersteller die erforderlichen Änderungen vorgenommen hatte.
An den Geräten wurden schließlich mehr als 20 Änderungen vorgenommen; dabei wurden die zuvor weggelassenen mechanischen Sicherheitsverriegelungen eingebaut, die die Strahlung unabhängig von der Software abschalten konnten. Nach diesem Vorfall wurde es für Krankenhäuser zur Pflicht gemacht, jeden schweren Unfall den Behörden zu melden. Zuvor konnten die Hersteller Fehler verschweigen, sodass die verschiedenen Krankenhäuser nichts von den Vorfällen in anderen Einrichtungen erfuhren.
Der Entwickler der Software wurde nie öffentlich genannt. Im Laufe der Untersuchungen stellte sich heraus, dass die gesamte Steuerungssoftware von einer einzigen Person in der Assemblersprache PDP-11 geschrieben worden war. Auch in den späteren Gerichtsverfahren konnten die Verteidiger den Programmierer nicht identifizieren und erfuhren nichts über seinen Bildungshintergrund oder seine bisherigen Erfahrungen. Bekannt ist lediglich, dass der Programmierer 1986 – noch bevor sich der Skandal vollständig entfaltete – AECL verließ.
Der Therac-25 ist seitdem in der Ausbildung zum Softwareingenieur „Lehrpferd“ : Anhand dieses Beispiels wird gelehrt, dass übermäßiges Selbstvertrauen, blindes Vertrauen in die Software und der Verzicht auf unabhängige Sicherheitssysteme Menschenleben kosten können.
Fritz Hager lebt noch immer, hat sich jedoch seit den Ereignissen der 1980er Jahre aus der Öffentlichkeit zurückgezogen. Vor kurzem (Ende 2024) äußerte er sich in einem Fachinterview, in dem er erneut auf die Ereignisse rund um den Therac-25 einging. Er hält es nach wie vor für wichtig, dass die Softwareingenieure der Zukunft aus den Fehlern der Vergangenheit lernen.
In einer aktuellen Veröffentlichung erklärte er, dass die Vorfälle mit dem Therac-25 in der Geschichte der Strahlentherapie einzigartig seien und es wichtig sei, dass diese „im Klassenzimmer gelernt werden und nicht auf Kosten von Menschenleben“. Ohne die Entschlossenheit des Physikers hätte die fehlerhafte Software wahrscheinlich noch mehr Opfer gefordert, da der Hersteller (AECL) angesichts seiner erdrückenden Beweise alle Vorwürfe zurückwies.
Great bugs
Egy számomra „kedves” és közelálló témát szeretnék egy blogsorozat formájában körbejárni, ami ezzel a bon mot-tal foglalható össze:
A program utasításaid és nem szándékaid szerint működik.
„Programs do what you tell them to do, not what you want them to do.“
Mivel a munkám egy jelentős része az ipari (PLC) szoftverfejlesztésről szól, ezért jól ismerem belülről a témát, én (illetve ugye a programom) is produkált már meglehetősen hajmeresztő hibákat; mondjuk a fél hamburgi kikötő áramtalanítása egy mozdulattal (meg egy benézett földeléskábellel).
A sorozat várható és már megírt bejegyzései:
- Patriot rakéta: Hogyan ölt meg 28 embert egy tizedesvessző?
- Ariane-5: A 370 millió dolláros „copy-paste“.
- A B-2 Spirit és a pára: Miért nem bírja az esőt a világ legdrágább gépe?
- Deepwater Horizon 2010: Amikor a „téves riasztások“ igazzá válnak
- Intelsat-708: Tech-transzfer és katasztrófa
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, oszd 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 bejegyzésekről, kövesd a Bolyongó Facebook oldalt.
Ha szeretnéd a bejegyzést kinyomtatni, vagy önálló formában menteni, ennek a legegyszerűbb módja a PDF formába konvertálás. Ezt a jobb oldali, fentről negyedik (Adobe) ikonnal teheted meg.
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. A mostanában a blogon megjelent írások a főoldalon jelennek meg.
Quellen
cs.columbia.edu - therac25.pdf
en.wikipedia.org - Therac-25
ethicsunwrapped.utexas.edu - case-study/therac-25
utsouthwestern.elsevierpure.com - Vorfälle mit dem Therac 25
de.wikipedia.org - Therac-25
smartbear.com - Bug-Day-Race-Condition bei Therac-25
worldhealthexpo.com - Der tödliche Fall des Therac-25: eine Warnung für medizinische KI
onlineethics.org - Eine Geschichte der Einführung und Stilllegung des Therac-25
ethicsunwrapped.utexas.edu - Therac-25
w3.cs.jmu.edu - 2004-JMU-Therac.pdf
Empfehlung
Ähnliche Beiträge finden Sie unter „Interessante Geschichte“ finden Sie unter:
Anzahl der Aufrufe des Beitrags: insgesamt



