Caso Therac 25

CASO 2: 1. Comente el siguiente caso desde el punto de vista del ciclo de vida en el desarrollo de software. Considere

Views 86 Downloads 1 File size 256KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

CASO 2:

1. Comente el siguiente caso desde el punto de vista del ciclo de vida en el desarrollo de software. Considere aspectos como control de calidad, estimación de riesgos, etapa de pruebas y puesta en marcha. 2. ¿Qué medidas habría tomado usted antes de poner esta máquina en producción (en marcha)? ¿Cómo las habría implementado?

THERAC-25: UN DISEÑO DE INTERACCIÓN MORTAL Normalmente hablamos de diseño de interacción relativo a interfaces de servicios web o de herramientas de productividad, donde los errores se traducen en pérdida de tiempo, impaciencia del usuario y, a veces, derroche de dinero. Pero el diseño de interacción es crítico cuando un error de concepto puede matar a una persona. Es el caso de las aplicaciones y maquinarias médicas. En 1982 salió al mercado médico una máquina llamada Therac-25 que proporcionaba tratamiento tanto de radiación como de rayos X, según fuese necesario. Costaba cerca de un

millón de dólares. La mayoría de las veces, el Therac-25 se comportó bien y administró correctamente el tratamiento a las pacientes con cáncer. Pero en 6 ocasiones, algo falló. El enfermero u operario de turno cometió un error al inicio del tratamiento, accionó los mecanismos de corrección del software de la máquina y rectificó el rumbo. En teoría, porque a pesar de que la interfaz indicaba que todo iba bien, en realidad los pacientes estaban recibiendo hasta 125 veces más radiación que lo normal. 3 de esos pacientes murieron. El problema fue que los desarrolladores cometieron dos errores fundamentales: no pudieron prever el error humano y se negaron a hacer pruebas antes de comercializar el aparato. Como el sistema estaba concebido por programadores, que conocían perfectamente el funcionamiento y nunca se les ocurrió pensar en usuarios que podían equivocarse, pensaron que era infalible. Y como no se trataba de un diseño centrado en el usuario, no hicieron los test de usuarios de rigor. En resumen: nadie se preocupó de diseñar un sistema de recuperación en errores de operación. Nadie previó rutinas de fallos. Nadie quiso hacer test con usuarios. Tres personas perdieron la vida por ello y otros tres quedaron gravemente afectados. El caso del Therac-25 puede sonar demasiado fatalista, pero es un excelente ejemplo de la importancia de diseñar sistemas de interacción pensando en el usuario y hacer las pruebas necesarias.

El caso Atlanta El tres de junio de 1985, una mujer de 61 años asistió a su sesión de terapia, tal como estaba previsto ese día, para tratar su cáncer de senos. La mujer había sido sometida a una lumpectomía para remover un tumor maligno. Una bomba de cobalto Therac-25 con la que se realizaba su tratamiento, había estado funcionando sin ningún problema. Justo en el momento en que la máquina se encendió, la mujer exclamó al radiólogo: “¡me quemaste!”. La mujer sintió el impacto de un fogonazo y en seguida experimentó la sensación de tener la piel al rojo vivo. El radiólogo, asombrado, le dijo que aquello “no podía ser cierto”. La paciente no tenía ninguna marca visible en su cuerpo, y él había seguido el procedimiento de rutina. Pero le quedaron dudas porque la piel de la mujer estaba todavía caliente al tacto. La mujer regresó a su casa y empezó a desarrollar inflamaciones en el centro del área en que era tratada. El dolor le había invadido de forma tal, que sentía que el hombro se le congelaba y experimentaba episodios de espasmos. Fue admitida en un hospital en Atlanta donde los oncólogos continuaron suministrándole terapia con una unidad Therac-25. En ese entonces, la explicación clínica de la irritación era que se trataba de una reacción normal al tratamiento.

Después de dos semanas, el físico del hospital donde la mujer había sido tratada con la Therac-25, observó que la irritación ahora se extendía hasta la espalda, como si la quemadura hubiese traspasado su cuerpo. Del área inflamada se habían comenzado a desprender pedazos de piel. La paciente tenía el hombro inmóvil y experimentaba un dolor intenso. Parecía obvio que la paciente había recibido una quemadura por sobre radiación, pero nadie podía ofrecer una explicación al respecto. El físico del hospital estimó después que la mujer había recibido una o dos dosis de radiación en el orden de 15 mil o 20 mil rads (dosis de radiación absorbidas, por sus siglas en inglés).

Según el físico, la herida pudo haber sido causada por un mínimo de 8 mil rads. Las dosis normales de terapia se encuentran en los 200 rads. Dosis de mil rads pueden resultar fatales si son emitidas a todo el cuerpo. Una dosis de 500 rads emitida a todo el cuerpo puede producir la muerte en el 50% de los casos. Las consecuencias de una sobre radiación a una parte más pequeña del cuerpo depende de la radio-sensitividad del tejido. El director de radiología del oncológico explicó luego que se confundió porque nunca había visto una sobredosis tan masiva. Eventualmente, el seno de la mujer tuvo que ser removido por las quemadas. Su brazo y su hombro quedaron totalmente paralizados y la mujer vivía con un dolor permanente que no menguaba. Ni los operadores ni los fabricantes de la máquina pensaron que se debía a la Therac-25. En el tratamiento de la mujer, la máquina no tenía habilitada la función de imprimir los resultados de los tratamientos, lo cual hoy día es un procedimiento rutinario. Por tal razón, no se tuvo una copia en papel del tratamiento y las dosis. La causa judicial que generó este caso, terminó fuera de la corte con un mutuo acuerdo.

Un caso canadiense El 26 de julio de 1985, una paciente de 40 años fue a una clínica de Ontario para recibir tratamiento por un carcinoma del cervix. Luego que el operador activara la máquina, el sistema se apagó después de cinco segundos con un mensaje de error en la pantalla que rezaba: HTILT. El panel de control de la máquina del tratamiento, otra Therac-25, indicaba que ninguna dosis se había administrado, así que el operador efectuó un segundo intento para que la máquina suministrara la dosis apropiada. De nuevo, la máquina se apagó de forma inesperada. Esto sucedió cuatro veces en forma consecutiva. Tras estas fallas, el operador llamó al técnico, quien no encontró nada extraño con la máquina y se procedió a continuar con el tratamiento, pese a que la

paciente se quejó de una sensación de quemadura en su cadera. Otros seis pacientes fueron tratados ese día sin ningún problema. La paciente regresó varias veces, quejándose de dolor. Murió el 3 de noviembre de 1985 de un cáncer avanzado. La autopsia reveló que de haber sobrevivido al cáncer, la paciente habría necesitado una operación para reemplazarle la cadera. El técnico estimó que la sobre radiación de la paciente había estado en el rango de 13 mil a 17 mil rads. Luego de estos sucesos, la compañía que fabrica la máquina Therac-25 estimó que la responsabilidad de estos accidentes recaía en los operadores. La compañía envió al hospital un memorándum de dos páginas llenas de razones técnicas por las cuales ese sistema “nunca” habría podido administrar una sobre radiación. El análisis matemático reveló que la máquina era segura al 10 millones por ciento.

El caso Texas De todos los accidentes, el que ocurrió en Tyler, Texas en 1986, es el que más información aportó para determinar la verdadera causa del problema. El 21 de marzo de 1986, un paciente llegó al hospital para ser tratado por novena vez en una bomba Therac-25, a causa de un tumor en la espalda. El tratamiento estaba concentrado en la parte superior de la espalda y un poco a la izquierda de su columna vertebral. Aquel día, el técnico lo dejó en el salón de tratamiento, acostado sobre la mesa; cerró la puerta y se fue a la terminal de control. El operador tenía experiencia. Había trabajado por varios años esa máquina y había adquirido una gran velocidad al momento de insertar datos necesarios para la operación. Como de costumbre, editó los campos necesarios de acuerdo al tratamiento. Miró entonces al final de la pantalla del monitor un mensaje: “Verified” (verificado), que le confirmó que todo estaba bien y que el sistema estaba listo para administrar el tratamiento. Pero justo cuando iba a iniciar la maniobra, la terminal mostró un mensaje: “Mal function 54” y la máquina también indicaba una supuesta “Pausa de Tratamiento”, que indicaba un problema de baja prioridad. Cuando el operador leyó el manual, que estaba al lado del terminal, encontró que se trataba de una anomalía debida a un “error de dosis 2”. Posteriormente se testificó que el “error de dosis 2” significaba que una dosis había sido suministrada a un nivel muy alto o muy bajo. Los mensajes mostrados por la máquina habían sido utilizados solo durante la fase de desarrollo del “software”, y no debieron haber aparecido en la versión final del programa. Cuando el técnico regresó al cuarto de tratamiento, encontró al paciente tocando la puerta desesperadamente. El paciente declaró que sintió al principio “como si alguien le regara café caliente en la espalda, y que como ese era su

noveno tratamiento, supo que algo malo estaba pasando. Intentó entonces incorporarse y salir de la cama, cuando de repente sintió que algo le había golpeado el brazo de forma tan violenta que creyó que se lo separaban del cuerpo”. Esta reacción ocurrió la segunda vez que el técnico apretó el botón de la máquina para comenzar el tratamiento. En seguida el técnico observó en el paciente que el área del tratamiento estaba irritada, pero pensó que era debido a que el paciente se había electrocutado. El físico del hospital revisó la máquina y no encontró nada irregular con la calibración de la misma. Luego del accidente, el paciente siguió quejándose de dolor. Llegó a perder la movilidad de su brazo izquierdo y tenía crisis periódicas de náuseas y vómitos. Fue eventualmente hospitalizado por sobre radiación y mielitis de la espina dorsal, lo que produjo parálisis total de su brazo izquierdo, ambas piernas, las cuerdas vocales, y el diafragma izquierdo. Luego de cinco meses murió por esas complicaciones. Según lo que señala Mario Rodríguez, “eventualmente no fue ni el Gobierno de Estados Unidos, ni el de Canadá, ni el fabricante el que descubrió la causa fundamental del problema. Gracias a Fritz Hager, el físico del hospital de Tyler, Texas, se pudo determinar la causa del problema. Después de una evaluación detallada, Fritz pudo replicar la “Malfuction 54” sentándose con el operador y después de mucho esfuerzo, determinando las condiciones que producían el error”. “Si los datos de tratamiento eran editados en forma rápida (lo que es natural en alguien que hace esto todos los días), la sobre radiación ocurría. Luego se testificó que la compañía había encontrado ese error llamado de "cursor" y que pensaba que había sido arreglado”, explica el experto.

¿Cuales fueron las causas del problema? La comisión investigadora ha concluido que la razón primaria puede ser atribuida a las malas prácticas de desarrollo, un mal análisis de requerimientos y un mal diseño de software, y no explicitó si fueron encontrados varios errores de código. En particular, el programa fue diseñado de forma tal que era relativamente imposible de testear de forma automática. Los investigadores de los accidentes encontraron varias causantes. Estas incluían las siguientes causas institucionales: AECL no tenía el código fuente revisado de forma independiente. AECL no consideró el diseño del software durante su evaluación de cómo la máquina produciría los resultados correctos y qué tipos de fallos existirían. Esto forma parte de las técnicas conocidas como ingeniería de la confiabilidad y gestión de riesgos.

El sistema notificaba que algo andaba mal y detenía los rayos X, pero solamente mostraba la palabra “MALFUNCTION” seguida de un número del 1 al 64. El manual de usuario no explicaba ni mostraba los códigos de error, por lo tanto el operador presionaba la tecla P para saltar la advertencia y proceder con el proceso. El Personal de AECL, así como los operadores de las máquinas, inicialmente no creían en las quejas de los pacientes. Probablemente porque estaban muy confiados en la máquina AECL no había probado la Therac 25 con la combinación de software y hardware antes de montarla en el hospital. Los investigadores también encontraron problemas de ingeniería: El fallo sólo ocurría cuando una secuencia particular de teclas era ingresado en la terminal VT100 que controlaba la computadora PDP-11: la X que (erróneamente) seleccionaba el modo de fotones de 25MV, seguido de “cursor arriba”, “E” que (correctamente) seleccionaba el modo de electrones de 25MeV y luego “Enter”. Esa secuencia de pulsaciones era improbable, y por lo tanto el problema no ocurría muy seguido y fue desconocido por un largo tiempo.

Consecuencias “Uno de los más serios accidentes al día de hoy relacionado con computadoras: involucró la muerte de 4 personas por sobreirradiación” desarrollado por Atomic Energy of Canada, Ltd. (AECL) a mediados de los años 70’s Producía 25 MeV de fotones o electrones de diferentes fuentes de energía Controlado por el minicomputador PDP-11 El software era completamente responsable de la seguridad. El software fue adaptado de las versiones anteriores de este dispositivo: Therac–6 y Therac–20, los cuales contaban con un dispositivo de seguridad a nivel de hardware. La Therac-25 era una máquina de radioterapia producida por la Atomic Energy of Canada Limited (AECL) después de las unidades Therac-6 y Therac-20 (las unidades anteriores fueron producidas en asociación con CGR de Francia). Estuvo envuelta en al menos seis accidentes entre 1985 y 1987, en los que los pacientes recibieron sobredosis masivas de radiación, de aproximadamente cien veces la dosis esperada. Tres de los seis pacientes murieron como consecuencia directa. Estos accidentes remarcaron los riesgos del control por software de sistemas de seguridad crítica, y estos se convirtieron en un caso de estudio típico de la informática médica y la ingeniería de software.