The Therac-25: A Software Fatal Failure

Slides:



Advertisements
Similar presentations
ES050 – Introductory Engineering Design and Innovation Studio Prof. Ken McIsaac One last word…
Advertisements

CSCI 5230: Project Management Software Reuse Disasters: Therac-25 and Ariane 5 Flight 501 David Sumpter 12/4/2001.
IT Roles and Responsibilities: How Good is Good Enough? IS 485, Professor Matt Thatcher.
“An Investigation of the Therac-25 Accidents” by Nancy G. Leveson and Clark S. Turner Catherine Schell CSC 508 October 13, 2004.
IMPLEMENTATION KICK-OFF.  Perry’s Introduction  Project Director  Stacy Garton  Executive Team  Sandy  Jason  Bill  David.
Background Increasing use of automated systems Hardware and software technology are improving rapidly User interface technology is lagging Critical bottleneck.
RADIOTHERAPY ACCIDENT IN COSTA RICA - CAUSE AND PREVENTION OF RADIATION ACCIDENTS IN HOSPITALS Module XIX.
An Investigation of the Therac-25 Accidents Nancy G. Leveson Clark S. Turner IEEE, 1993 Presented by Jack Kustanowitz April 26, 2005 University of Maryland.
Can We Trust the Computer? Case Study: The Therac-25 Based on Article in IEEE-Computer, July 1993.
Therac-25 Lawsuit for Victims Against the AECL
+ THE THERAC-25 - A SOFTWARE FATAL FAILURE Kpea, Aagbara Saturday SYSM 6309 Spring ’12 UT-Dallas.
Computingcases.org Safeware
Reliability and Safety Lessons Learned. Ways to Prevent Problems Good computer systems Good computer systems Good training Good training Accountability.
Motivation Why study Software Engineering ?. What is Engineering ? 2 Engineering (Webster) – The application of scientific and mathematical principles.
June 1, 2004Computer Security: Art and Science © Matt Bishop Slide #18-1 Chapter 18: Introduction to Assurance Overview Why assurance? Trust and.
A Gift of Fire Third edition Sara Baase
A Gift of Fire Third edition Sara Baase
Jacky: “Safety-Critical Computing …” ► Therac-25 illustrated that comp controlled equipment could be less safe. ► Why use computers at all, if satisfactory.
WELCOME!!! FDA & MITA RT Meeting
Radiotherapy revision WHAT IS RADIOTHERAPY? Internal Radiotherapy a radioactive source is inserted into the tumour OR a radioactive substance is ingested/injected.
Today’s Lecture application controls audit methodology.
Lecture 7, part 2: Software Reliability
Dr Andy Brooks1 Lecture 4 Therac-25, computer controlled radiation therapy machine, that killed people. FOR0383 Software Quality Assurance.
DJ Wattam, Han Junyi, C Mongin1 COMP60611 Directed Reading 1: Therac-25 Background – Therac-25 was a new design dual mode machine developed from previous.
Death by Software The Therac-25 Radio-Therapy Device Brian MacKay ESE Requirements Engineering – Fall 2013.
 You have learned that cells undergo division to produce more cells for three reasons.  You have also learned the stages of the cell cycle and mitosis.
Therac-25 : Summary Malfunction Complacency Race condition (turntable / energy mismatch) Data overflow (turntable not positioned) time‘85‘86‘88 ‘87 Micro-switch.
Software Safety Case Study Medical Devices : Therac 25 and beyond Matthew Dwyer.
Therac-25 Final Presentation
Hosted by Dr. William J. Frey Safety and Risk Educational Laptops Bus and Nat Env Therac
IAEA International Atomic Energy Agency PREVENTION OF ACCIDENTAL EXPOSURE IN RADIOTHERAPY Part 5: Reporting, investigating and preventing accidental exposures.
Therac 25 Nancy Leveson: Medical Devices: The Therac-25 (updated version of IEEE Computer article)
ITGS Software Reliability. ITGS All IT systems are a combination of: –Hardware –Software –People –Data Problems with any of these parts, or a combination.
Course: Software Engineering © Alessandra RussoUnit 1 - Introduction, slide Number 1 Unit 1: Introduction Course: C525 Software Engineering Lecturer: Alessandra.
Chapter 8: Errors, Failures, and Risk
XpsOES : A New Tool for Improving Safety at Workplace Yasar Kucukefe, Ph.D., National Power Energy.
Security and Reliability THERAC CASE STUDY TEXTBOOK: BRINKMAN’S ETHICS IN A COMPUTING CULTURE READING: CHAPTER 5, PAGES
Dimitrios Christias Robert Lyon Andreas Petrou Dimitrios Christias Robert Lyon Andreas Petrou.
FDA Public Meeting: Device Improvements to Reduce the Number of Under-doses and Misaligned Exposures from Therapeutic Radiation.
Using Radiation in Medicine. There are 3 main uses of radiation in medicine: Treatment Diagnosis Sterilization.
©2001 Southern Illinois University, Edwardsville All rights reserved. Today Fun with Icons Thursday Presentation Lottery Q & A on Final Exam Course Evaluations.
© 2008 Wayne Wolf Overheads for Computers as Components 2nd ed. System design techniques Quality assurance. 1.
What you know… You work at the East Texas Cancer Center in Tyler, Texas as a physicist who “maintains and checks the machine regularly.” (Huff 2005) Patient.
Computingcases.org Safeware
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 9 Slide 1 Critical Systems Specification 1.
Therac-25 CS4001 Kristin Marsicano. Therac-25 Overview  What was the Therac-25?  How did it relate to previous models? In what ways was it similar/different?
CS, AUHenrik Bærbak Christensen1 Critical Systems Sommerville 7th Ed Chapter 3.
3 Medical uses of Radiation
Dr. Rob Hasker. Classic Quality Assurance  Ensure follow process Solid, reviewed requirements Reviewed design Reviewed, passing tests  Why doesn’t “we.
Canadian Cancer Statistics Cancer in Canada.
CSCI 3428: Software Engineering Tami Meredith Chapter 7 Writing the Programs.
©2001 Southern Illinois University, Edwardsville All rights reserved. Today Finish Ethics Next Week Research Topics in HCI CS 321 Human-Computer Interaction.
Chapter 8 Errors, Failures, & Risks. Real Headlines Navigation system directs car into river Data entry typo mutes millions of U.S. pagers Flaws found.
Dr. Rob Hasker. Classic Quality Assurance  Ensure follow process Solid, reviewed requirements Reviewed design Reviewed, passing tests  Why doesn’t “we.
Directed Reading 1 Girish Ramesh – Andres Martin-Lopez – Bamdad Dashtban –
EN Lecture Notes Spring 2016 FUNDAMENTALS OF SECURE DESIGN (SOFTWARE)
MI Shielding Machine Protection Credit D. Capista March 7,2010.
Organization and Implementation of a National Regulatory Program for the Control of Radiation Sources Need for a Regulatory program.
Increasing use of automated systems
Why study Software Design/Engineering ?
EE 585 : FAULT TOLERANT COMPUTING SYSTEMS B.RAM MOHAN
COMP60611 Directed Reading 1: Therac-25
Therac-25 Accidents What was Therac-25? Who developed it?
A Gift of Fire Third edition Sara Baase
Reliability and Safety
Therac-25.
System design techniques
Week 13: Errors, Failures, and Risks
Computer in Safety-Critical Systems
A Gift of Fire Third edition Sara Baase
Presentation transcript:

The Therac-25: A Software Fatal Failure Kpea, Aagbara Saturday. SYSM 6309 Spring ’12 UT-Dallas

What is the Therac-25 ? The Therac-25 was a medical linear accelerator, used to treat cancer patients to remove tumors.

Background Information Early1970’s, AECL (Atomic Energy of Canada Limited)and a French Company (CGR) collaborate to build Medical Linear Accelerators (linacs). They develop Therac-6, and Therac-20. AECL and CGR end their working relationship in 1981. In 1976, AECL develops the revolutionary "double pass" accelerator which leads to the development of Therac-25. In March, 1983, AECL performs a safety analysis of Therac-25 which apparently excludes an analysis of software.

Background info … July 29,1983, the Canadian Consulate General announces the introduction of the new "Therac 25" Machine manufactured by AECL Medical, a division of Atomic Energy of Canada Limited. Medical linear accelerators (linacs) known generally as “Therac-25”.

What it does: Medical linear accelerators accelerate electrons to create high-energy beams that can destroy tumors with minimal impact on surrounding healthy tissue Shallow tissue is treated with accelerated electrons Scanning magnets placed in the way of the beam; the spread of the beam (and thus its power) could be controlled by a magnetic fields generated by these magnets Deeper tissue is treated with X-ray photons The X-ray beam is flattened by a device in the machine to direct the appropriate intensity to the patient. Beams kill (or retard the growth of) the cancerous tissues

Accidents with Therac-25 At East Texas Cancer Center in Tyler, Texas, a patient complains of a bright flash of light, heard a frying, buzzing sound, and felt a thump and heat like an electric shock. This indicates radiation overdose by Therac-25 machines after cancer treatment session A few days after the unit was put back into operation, another patient complained that his face felt like it was on fire. Another potential overdose of radiation beam by Therac-25. Both patients died after 4months and 3 weeks respectively due to administered overdose of radiation

Causes of the Accidents The problem was a race condition produced by a flaw in the software programming. Management inadequacies and lack of procedures for following through on all reported incident. Overconfidence in the software and removal of hardware interlocks.

Reasons for the cause of the accidents Operator selected x-rays by mistake, used cursor keys to change to electrons Machine tripped with “Malfunction 54” – Documentation explains this is “dose input 2” error Operator saw “beam ready” proceeded; machine tripped again

Requirements Issues Error messages provided by Therac-25 monitor are not helpful to operators Machine pauses treatment but does not indicate reason why The equipment control task did not properly synchronize with the operator interface task, so that race conditions occurred if the operator changed the setup too quickly. Software is required to monitor several activities simultaneously in real time Interaction with operator Monitoring input and editing changes from an operator Updating the screen to show the current status of machine There were no independent checks that the software was operating correctly (verification)

Recommendations Documentation should not be an afterthought. Software quality assurance practices and standards should be established. Designs should be kept simple and ensure user-friendly interfaces Ways to get information about errors, i.e., software audit trails should be designed into the software from the beginning. The software should be subjected to extensive testing and formal analysis at the module and software level. System testing alone is not adequate; verification would be very valuable. Involve users at all phases product development

References The Therac-25 Accidents (PDF), by Nancy G. Leveson (the 1995 update of the IEEE Computer article) http://en.wikipedia.org/wiki/Therac-25