Template:Citation style

Interfaccia utente della macchina Therac-25 [1]

PATIENT NAME   : JOHN DOE
TREATMENT MODE : FIX  BEAM TYPE: X    ENERGY (MeV): 25
                      ACTUAL        PRESCRIBED
    UNIT RATE/MINUTE     0                200
    MONITOR UNITS       50 50             200
    TIME (MIN)          0.27              1.00
GANTRY ROTATION (DEG)     0.0              0.0     VERIFIED
COLLIMATOR ROTATION (DEG) 349.2            359     VERIFIED
COLLIMATOR X (CM)         13.2             14.3    VERIFIED
COLLIMATOR Y (CM)         21.2             27.3    VERIFIED
WEDGE NUMBER               1                1      VERIFIED
ACCESSORY NUMBER           0                0      VERIFIED
DATE   : 84-DEC-27   SYSTEM : BEAM READY   OP. MODE : TREAT AUTO
TIME   : 12:55: 8    TREAT  : TREAT PAUSE             X-RAY 173777
OPR ID : T25V02-R03  REASON : OPERATOR     COMMAND:

Il Therac-25 è stata una macchina per curare tramite la radioterapia, prodotta dalla AECL come succeditrice alle unità Therac-6 e Therac-20, prodotte inizialmente insieme alla francese CGR. Questa macchina è stata causa di almeno sei incidenti avvenuti tra il 1985 e il 1987, durante i quali ai pazienti venne somministrata una dose di radiazioni 100 volte superiore a quella richiesta, causando un avvelenamento da radiazioni e causando direttamente la morte di due dei sei pazienti.[1]. Questi incidenti dimostrarono i pericoli di un sistema software di controllo nelle apparecchiature medicali e sono divenuti un caso di studio nelle materie di medicina informatica e ingegneria informatica.


Descrizione del problema

La macchina offriva due metodi per la radioterapia:

  • Terapia a base di fasci di elettroni, che erogava una bassa dose di elettroni ad alta energia (da 5 MeV a 25 MeV) per poco tempo;
  • Terapia a base di raggi X ad alta energia, che erogava raggi X tramite il bombardamento di un "bersaglio" con un fascio di elettroni da 25Mev.

Quando la macchina era impostata per erogare elettroni, veniva erogato un fascio di elettroni a bassa energia, poi indirizzati e diffusi tramite dei magneti di guida ed un diffusore. Quando era attivata per emettere raggi X, la macchina era progettata per ruotare 4 componenti nel fascio di elettroni: il bersaglio, che convertiva gli elettroni in raggi X; un filtro a diffusione, che diffondeva gli elettroni in un'area più grande; il collimatore, che modificava il contorno del fascio di raggi; ed una camera a ionizzazione, che misurava la quantità di raggi X emessa.

Gli incidenti accadevano quando erroneamente veniva attivata la modalità di emissione dl elettroni ad alta potenza invece che quella a potenza ridotta in contemporanea alla mancanza del diffusore. Il programma che controllava la macchina non riusciva a rilevare l'anomalia e, di conseguenza, non poteva evitare che venisse somministrata una dose letale di radiazioni. Il fascio di elettroni ad alta potenza colpiva i pazienti con una dose 100 volte superiore a quella desiderata, causando una sensazione descritta come "un'intensa scossa elettrica", di conseguenza alcuni pazienti urlavano e scappavano dalla stanza.[2] Alcuni giorni dopo, i pazienti soggetti a questo genere di incidente, mostravano i primi sintomi di un avvelenamento da radiazioni e, sulla parte esposta, si potevano notare delle bruciature da radiazioni che, in seguito all'avvelenamento, hanno causato la morte di tre pazienti.

La debolezza del programma venne individuata in una race condition.

Cause principali

La commissione di inchiesta concluse <ref=http://sunnyday.mit.edu/papers/therac.pdf> terac.pdf</ref> che le cause principali erano imputate ad un programma scritto e sviluppato male, ma non specificatamente a molti errori di programmazione rilevati. In particolare, il programma era scritto in modo tale da rendere praticamente impossibili i test automatici.

  1. ^ Baase 2008, p.425.
  2. ^ Set Phasers On Stun - Design and Human Error, Steven Casey, pp. 11-16