35
04.12.2002 Therac-25 Kuam, Rieger, Trübswetter - 1 - Therac-25 Fehler in medizinischen Geräten Therac-25 & Co Guy Kuam Markus Rieger Christian Trübswetter

Fehler in medizinischen Geräten

  • Upload
    shaman

  • View
    36

  • Download
    0

Embed Size (px)

DESCRIPTION

Fehler in medizinischen Geräten. Therac-25 & Co Guy Kuam Markus Rieger Christian Trübswetter. Die Therac-Serie. Therac-25 war die 3. Baureihe von medizinischen Linearbeschleunigern, Betrieb ab 1983 Strahlentherapie bei Krebspatienten Vorgänger: Therac-6, Therac-20 - PowerPoint PPT Presentation

Citation preview

Page 1: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 1 -

Therac-25

Fehler in medizinischen GerätenTherac-25 & Co

Guy Kuam

Markus Rieger

Christian Trübswetter

Page 2: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 2 -

Therac-25

Die Therac-Serie• Therac-25 war die 3. Baureihe von medizinischen

Linearbeschleunigern, Betrieb ab 1983– Strahlentherapie bei Krebspatienten

• Vorgänger: Therac-6, Therac-20– elektro-mechanische Geräte– Einstellungen direkt am Gerät– mechanische Verriegelung („Hardware Interlocks“) als

Schutzvorrichtung

• Hersteller: AECL Medical (Atomic Energie of Canada Limited), staatlich, heute privat

• Elf Geräte in USA und Canada

Page 3: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 3 -

Therac-25

Grundlegende Funktionsweise

• Therac-25 Dual Mode:– Röntgen- und Elektronenstrahlung

• Bei Geweben an der Oberfläche: Elektronenmodus

• Bei tieferen Geweben: Röntgenmodus

Bündelung der Energie

– Ablenkmagneten und verschiedene Filter

Page 4: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 4 -

Therac-25

Konflikt:So viel Strahlung wie nötig, so wenig wie möglich !!

• Unterschied Röntgenmodus – Elektronenmodus:– Bei Röntgenmodus: Platte zwischen Patient und Beschleuniger

• dadurch wird Energie absorbiert und fokussiert (punktuelle Bestrahlung)

• deutlich mehr Ausgangsenergie nötig (vielfaches)

Problem, wenn Platte bei Röntgenmodus an falscher Stelle

Page 5: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 5 -

Therac-25Der Behandlungsraum

Page 6: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 6 -

Therac-25Drehteller

Page 7: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 7 -

Therac-25

Drehtellerpositionierung• Richtige Position entscheidend

– Bei Röntgenposition und Elektronenstrahlung:

Dosis zu niedrig– Bei Elektronenstrahlposition Und Röntgenstrahlung:

Überdosis

• Computergesteuerte Drehtellerposition– Computer kontrolliert Drehung– Drei Sensorendaten aufgezeichnet– Software überprüft die Werte und vergleicht sie

Dadurch Verriegelungen überflüssig

Page 8: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 8 -

Therac-25

Bedienung des Gerätes• Typischer Ablauf einer Behandlung

– Behandlungsraum betreten– Patienten auf dem Behandlungstisch positionieren– Energie einstellen, Drehteller positionieren, Platten, Filter

einfügen, Magneten einstellen– Behandlungsraum verlassen– Patientendaten eingeben, nochmals Therac-25 Einstellungen

eingeben– Übereinstimmung überprüfen: „VERIFIED“– Behandlung beginnen

Page 9: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 9 -

Therac-25User Interface

Page 10: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 10 -

Therac-25

Benutzerfreundlichkeit verbessern

• Pro Operator bis zu 30 Patienten pro Tag

• Datensatz zweimal eingeben dauerte zu lange

Lösung: neues FeatureDurch Eingeben von „Enter“ existierenden Eintrag übernehmen

Page 11: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 11 -

Therac-25

Überwachung des Patienten

• Kommunikation des Operators kommuniziert mit dem Patienten per Videoübertragung

• Bei Unstimmigkeiten Unterbrechung:– „Treatment suspend“: Behandlung von vorne beginnen– „Treatment pause“: mit „p“ geht‘s weiter– Wiederaufnahme der Behandlung nach Unterbrechung bis zu

fünf mal

Page 12: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 12 -

Therac-25

Die Fehlermeldungen• Systementwickler legte keinen Wert auf Implementierung

von Fehlermeldungen• Sie waren

– Kryptisch („MALFUNCTION 54“)– Nicht dokumentiert– Traten ständig auf (bis zu 50 Mal pro Tag)

• Fehlermeldungen alltäglich, aber nicht wichtig, denn– Maschinenservice macht Fehlerbehebung– Verhinderung einer Überbestrahlung durch verschiedenste

andere eingebaute Sicherheitsmechanismen

Page 13: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 13 -

Therac-25

Das Unglück

Sechsmal (1985 –1987) trat eine massive Überdosierung auf

1987 wurde Therac-25 zurückgerufen

Page 14: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 14 -

Therac-25

1. Fall: Marietta, Georgia, Juni 1985• Behandlung einer 61-Jährigen Frau• Bestrahlung der Lymphknoten im Elektronenmodus• Überdosis (15 000rad statt 200rad):

– Brust entfernt– Lähmung von Schulter und Arm

• Fall nicht untersucht• AECL schließt Fehler ihrerseits aus

Page 15: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 15 -

Therac-25

2. Fall: Hamilton, Ontario, Juli 1985• Patient mit Gebärmutterhalskrebs• Dosis von 200rad• Maschinenstop mit „HTILT“-Fehler• Konsolenanzeige „NO DOSE“• Fortsetzten der Behandlung

– Fortsetzung nach einem Fehler war die Regel

• Gleicher Fehler• Fortsetzung noch viermal wiederholt, dann automatischer

Reset• Patient stirbt fünf Monate später• Geschätzte Überdosis: 15 000rad

Page 16: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 16 -

Therac-25

3. Fall: Yakima, Washington, Dez. 1985• AECL bessert Fehler aus

– Defekter Microswitch bewirkt 1-Bit-Fehler– Switch kann falsche Positionsdaten an Therac-25 liefern– Zusätzliche Kontrollsoftware für Microswitch

• Drei Monate später:– Patient erleidet Verbrennung der Hüfte– AECL gesteht Fehler nicht ein– Offiziell: „Cause unknown“– Patient lebt heute mit steifer Hüfte

Page 17: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 17 -

Therac-25

4. Fall: Texas, März 1986 (I)• Patient mit Tumor im Rücken, 180rad Elektronentherapie• Operatorin gibt versehentlich „x“ für „X-Ray“ ein

– Mit zurück und Eintrag „x“ in „e“ für geändert– Kein anderer Parameter geändert

• Behandlungsunterbrechung mit „MALFUCTION 54“– Undokumentiert, Dosis zu niedrig oder zu hoch

• Gerät stoppt mit „UNDERDOSE“• Behandlung fortgesetzt, stoppt mit gleichem Fehler• Patient ruft um Hilfe

Page 18: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 18 -

Therac-25

4. Fall: Texas, März 1986 (II)• Nach der ersten Dosis:

– Patient spürt einen „Schock“ im Rücken– ruft Operatorin

• Videodisplay ausgesteckt und Audiosystem zur Zeit kaputt

• Patient verlässt Behandlungstisch, genau als die zweite Dosis kommt

• Tod nach fünf Monaten wegen Komplikationen aufgrund Überdosis

• Geschätzte Überdosis ca. 20 000rad

Page 19: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 19 -

Therac-25

5. Fall: Texas, April 1986• Patient mit Hautkrebs am Gesicht, 180rad, Elektron• Gleiche Operatorin, gleicher Fehler• Operatorin gibt Daten ein und bemerkt, „x“ statt „e“

– Wieder „ “ und „Enter...“– Andere Parameter gleich

• Behandlung startet, hält mit „MALFUNCTION 54“ an• Operatorin hört Patienten schreien (Audio repariert)• Tod 20 Tage später wegen Überbestrahlung des rechten

Schläfenlappen• Geschätzte Überdosis: 20 000rad

Page 20: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 20 -

Therac-25

Untersuchung der Texas-Fälle• Operatorin des Krankenhauses versucht, zusammen mit

einem Physiker des Krankenhauses, das Problem zu rekonstruieren– Ergebnis: schnelle Eingabegeschwindigkeit Ursache für

„MALFUNCTION 54“

• Rekonstruktion des Fehlers auch an Therac-20– Sicherheit nicht beeinträchtigt wegen „Hardware Interlocks“

• Lösung: und werden auf den Keyboards entfernt

Page 21: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 21 -

Therac-25

Analyse des Systems• Betriebssystem: Eigenbau-Echtzeitsystem auf 32K PDP 11/23 • Präemptives Scheduling von kritischen und nichtkritischen tasks

– Serielle Ausführung der Tasks, gewichtet nach ihrer Criticality

– Keine Synchronisationsoperationen (außer „test&set“)

• Vier Hauptkomponenten der Software– Gespeicherte Daten (Maschinensetup und Patientenbehandlungsdaten)

– Interrupt Handler

– Kritische Tasks

– Nicht kritische Tasks

• Keine Dokumentation der Software• Keine Softwaretests (2700 Stunden in Betrieb)• Risk Analysis ohne Software 1983

Page 22: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 22 -

Therac-25Texas Bug

Page 23: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 23 -

Therac-25

Magnet: Set bending magnet flag repeat Set next magnet call Ptime if mode/energy has changed, then exit until all magnets are set return

Ptime: repeat if bending magnet flag is set then if editing taking place then if mode/energy has changed then exit until hysteresis delay has expired Clear bending magnet flag return

Datent: begin calculate table index repeat fetch parameter output parameter point to next parameter until all parameters set call Magnet if mode/energy changed then return end if data entry is complete then set Tphase to 3 if data entry is not complete then if reset command entered then set Tphase to 0

Texas Bug: Code

Page 24: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 24 -

Therac-25

6. Fall: Yakima, Washington Jan, 1987• Vorfall

– Brust eines Patienten verbrannt– Tod im April– Vermutlich Hamilton Fehler, der gefixt sein sollte

• Erkenntnis: – Oft kein einzelner Fehler, Zusammenhang zwischen technischen und

menschlichen Fehlern– Zu starkes Vertrauen in Software

• Beitragende Faktoren:– Keine mechanische Verriegelung– Unrealistische Risikobewertung

Page 25: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 25 -

Therac-25

Washington Bug (I)

• Fehler nur unter ganz bestimmten Vorraussetzungen• Einstellvorgang

– Eingeben der Parameter an Konsole – Meldung auf Konsole: „UNVERIFIED“– Anschließend Feineinstellung direkt am Gerät– Konsolenmeldung: „VERIFIED“ (aller relevanten Parameter)– Operator drückt „SET“: Gerät bringt sich in gewünschte Position– Eingabe verifizieren Änderung der Kontrollvariable „Tphase“– „SET-UP-TEST“-Routine aufrufen– Bei jedem Aufruf: setzen einer „shared variable“ („Class3“)

Page 26: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 26 -

Therac-25

Washington Bug (II)

• Behandlung einer Inkonsistenz– Wenn „Class 3“ ungleich 0:

• Vorliegen einer Inkonsistenz

– Wenn „Class 3“ gleich 0:• alle relevanten Parameter konsistent

• Strahl nicht unterbrochen wird

– Nachdem „Class 3“ gesetzt, Überprüfung einer weiteren „Shared variable“ („F$mal“)

• signalisiert Fehlfunktionen im System

– Falls „F$mal“ ungleich 0:• Fehlfunktion „SET-UP-TEST“ wird erneut aufgerufen

Page 27: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 27 -

Therac-25

Washington Bug (III)

• Rekonstruktion des Fehlers– Während der Einstellung des Geräts:

• „SET-UP-TEST“ mehrere 100 Mal durchlaufen

• ruft sich selber bei jeder Änderung erneut auf

– Bei jedem Durchlauf von „SET-UP-TEST“ Inkrementierung der Variablen „Class 3“

– Größe von „Class 3“ Variable: ist 1 Byte groß Overflow bei 256: „Class 3“ wird 0 trotz Bestehen des Fehlers

bei jedem 256. Aufruf: Fehler nicht entdeckt

– Wenn der Operator genau zu diesem Zeitpunkt „SET“ drückt, kommt es zur Überdosis, da Gerät falsche Position hat

• Lösung: Anstatt Inkrementeller Variable Bool-Variable

Page 28: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 28 -

Therac-25

Fazit (I)• Verhinderung rechtzeitiger Diagnose durch

Gleichgültigkeit, Selbstzufriedenheit• Sinn von Fehlermeldungen muss klar sein• Grundursache beseitigen

– Echtes Problem nicht durch Fix des vermuteten Bugs zu beheben

• Hardware-Überwachung in der Regel sicherer als Softwareüberwachung (aber kostenintensiver)

• Größere Sicherheit bei Verwendung eines kommerziellen Betriebssystems

Page 29: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 29 -

Therac-25

Fazit (II)• Risikobewertung

– Therac-25 hatte Risk analysis (aber nicht die Software)

• Angemessene Untersuchung und Folgeuntersuchung• Software Engineering Praktiken

– Kritische Software muss einfach und testbar sein

• Schwer einschätzbare Probleme bei Wiederverwendung von bestehenden Softwareteilen

• Sicheres vs. benutzerfreundliches Benutzerinterface

Page 30: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 30 -

Therac-25

Konsequenzen• Erster großer Fehler in einem radiologischen Gerät• Center for Devices and Radiological Health (CDRH)

eingeschaltet• Softwareprozesse vieler Hersteller nicht ausgereift

Fix sehr schwierig

• Reformen bei FDA/CDRH– Stärkerer Fokus auf Software(prozesse)– Höhere verbindliche „Reporting Requirements“

Page 31: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 31 -

Therac-25

Sonstige Fehler (I)• 19. September 1989

– Überlauf einer 2-Byte Integervariablen in einem Krankenhaus in Washington DC

– den Absturz eines Notfallgerätes– Ersatz durch manuelle Behandlung

• Frau dreht durch– Mord an ihrer Tochter – versuchte sich selbst und ihren Sohn umzubringen , – Falsche Diagnose aufgrund eines Softwarefehlers:

unheilbare Krankheit

Page 32: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 32 -

Therac-25

Sonstige Fehler (II)• Ein System für Überwachung mehrere Patienten

– Verwechslung der Patienten– Sofortiger Rückruf

• Absturz eines programmierbaren Herzschrittmachers während der Justierung

• Vorrichtung für das Zuführen des Insulins– Fehler in der Regelungssoftware

Page 33: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 33 -

Therac-25

London Ambulance Service, 1992 (I)• Umstelleung des London Ambulance Service auf ein

Computer Aided Despatch (CAD) System– Empfang der Notrufe für Krankenwagen– Verteilung der Krankenwagen zu den Einsatzorten– Automatisierung des Verwaltungsprozesses

• CAD Software– Nicht ausgereift– Nicht komplett implementiert– Komponenten nicht richtig abgestimmt– Nicht völlig getestet

Page 34: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 34 -

Therac-25

London Ambulance Service, 1992 (II)• Probleme mit dem Datenaustausch des Systems• Personal nicht ausreichend ausgebildet

– Krankenwagenfahrer: ungewohnte und nicht vollständig funktionierende Kommunikation per Spracheingabe

– Verwaltungspersonal in neuen Positionen, komplett ohne Papierarbeit

• Das System wurde drei Tage lang benutzt– Am 26.10, 27.10 und am 4.11.1992

• Stilllegung nach massiven öffentlicher Beschwerden und großer Aufmerksamkeit der Medien

• Kosten: 11 000 000€

Page 35: Fehler in medizinischen Geräten

04.12.2002 Therac-25

Kuam, Rieger, Trübswetter - 35 -

Therac-25

Das war‘s

Danke für‘s zuhören

Fragen?

Andere Fehler in medizinischen Geräten?

Markus zeigt Web-Site