1. Software in our lives, then and now  Medical (processing and analysis, Computer Aided Surgery, other various equipment)  Financial and business (banking,

Slides:



Advertisements
Similar presentations
CSCI 5230: Project Management Software Reuse Disasters: Therac-25 and Ariane 5 Flight 501 David Sumpter 12/4/2001.
Advertisements

A Gift of Fire, 2edChapter 4: Can We Trust the Computer?1 PowerPoint ® Slides to Accompany A Gift of Fire : Social, Legal, and Ethical Issues for Computers.
The Great Depression The Grapes of Wrath. Black Tuesday The start of the Great Depression usually is cited as Monday, October 28, 1929 and Tuesday October.
Can We Trust the Computer?
Syllabus Case Histories WW III Almost Medical Killing Machine
CSC 4250 Computer Architectures September 12, 2006 Appendix H. Computer Arithmetic.
WHY THEY FAILED AND LESSONS TO BE DRAWN Samuel Franklin G53QAT: Quality Assurance and Testing Famous Software Failures.
Software Engineering Disasters
CML CSE 520: Advanced Computer Architecture: Reliability Aviral Shrivastava.
Ethics in a Computing Culture
Chapter 11 Software Development Horror Stories. Sampling of Software Problems = Faye Starman gets an electric bill for $6.3 million instead of $63 due.
1 Basic Definitions: Testing What is software testing? Running a program In order to find faults a.k.a. defects a.k.a. errors a.k.a. flaws a.k.a. faults.
Motivation Why study Software Engineering ?. What is Engineering ? 2 Engineering (Webster) – The application of scientific and mathematical principles.
©Ian Sommerville 2000CS 365 Ariane 5 launcher failureSlide 1 The Ariane 5 Launcher Failure June 4th 1996 Total failure of the Ariane 5 launcher on its.
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani University of Bozen- Bolzano Lesson 4 – Software Testing.
ARIANE 5 FAILURE ► BACKGROUND:- ► European space agency’s re-useable launch vehicle. ► Ariane-4 was a major success ► Ariane -5 was developed for the larger.
A Gift of Fire Third edition Sara Baase
©Ian Sommerville 2004Software Engineering Case Studies Slide 1 The Ariane 5 Launcher Failure June 4th 1996 Total failure of the Ariane 5 launcher on its.
Software Failures Ron Gilmore, CMC Edmonton April 2006.
Software Errors Who is to blame?. Almost everything in our daily lives is controlled by CPU’s and software… Does Embedded Software = Embedded Disasters?
USS Yorktown (1998) A crew member of the guided-missile cruiser USS Yorktown mistakenly entered a zero for a data value, which resulted in a division by.
CS Class 07 Topics –  When software goes wrong  Count controlled loops  Sentential controlled loops  putting it all together Announcements.
GCSE OCR 1 A451 Computing What is a computer system?
1/ REU Program at ECU Software Testing - Foundations, Tools, and Applications Lecture 1 May 21, 2013 Introduction to Software Testing Dr. Sergiy.
Chapter 8: Errors, Failures, and Risk
1 Can We Trust the Computer? What Can Go Wrong? Case Study: The Therac-25 Increasing Reliability and Safety Perspectives on Failures, Dependence, Risk,
Ganssle 1 MAPLD 2005/S110 Learning from Jack Ganssle Disaster.
The Ariane 5 Launcher Failure June 4th 1996 Total failure of the Ariane 5 launcher on its maiden flight.
Liability for Computer Errors Not covered in textbook.
Software Engineering Background Dr. David A. Gaitros.
Slides prepared by Cyndi Chie and Sarah Frye1 A Gift of Fire Third edition Sara Baase Chapter 8: Errors, Failures, and Risks.
Security and Reliability THERAC CASE STUDY TEXTBOOK: BRINKMAN’S ETHICS IN A COMPUTING CULTURE READING: CHAPTER 5, PAGES
INVARIANTS EEN 417 Fall When is a Design of a System “Correct”? A design is correct when it meets its specification (requirements) in its operating.
University of Virginia Software Development Processes (CS340 John Knight 2005) 1 Software Development Processes.
Software Quality See accompanying Word file “Software quality 1”
Dimitrios Christias Robert Lyon Andreas Petrou Dimitrios Christias Robert Lyon Andreas Petrou.
CS 4001Mary Jean Harrold 1 Can We Trust the Computer?
Software Errors. There’s a bug in our code [Probably] The first software bug Harvard Mark II – Electromechanical machine Moth found in relay Found by.
Ethics of Software Testing Thomas LaToza CS 210 Final Presentation 12 / 2 / 2002.
A Gift of Fire, 2edChapter 4: Can We Trust the Computer?1 Can We Trust the Computer?
WHY IS SOFTWARE TESTING NEEDED? Presented by - Santosh Bethi 22 nd October, 2003.
(1) A beginners guide to testing Philip Johnson Collaborative Software Development Laboratory Information and Computer Sciences University of Hawaii Honolulu.
Software Defects.
Risks CS 195 Social Implications of Computers. Risks Digest (Peter Neumann) # 1.1 Recent yet-to-be-merged items # Sep 2001 and Homeland Security.
1 Software Quality Assurance COMP 4004 Notes Adapted from S. Som é, A. Williams.
CSCI1600: Embedded and Real Time Software Lecture 2: Introduction Steven Reiss, Fall 2015.
CptS 401 Adam Carter. Final Review  Similar structure to the midterm: Multiple choice Matching (probably quotes from Daemon) Essay  Most questions will.
CS 4001Mary Jean Harrold1 Class 20 ŸSoftware safety ŸRest of semester Ÿ11/1 (Thursday) Term paper approach due Ÿ11/13 (Tuesday) Assignment 8 on software.
Chapter 8: Errors, Failures, and Risk Zach Archer Daniel O’Hara Eric Strittmatter.
1 Chapter 1- Introduction How Bugs affect our lives What is a Bug? What software testers do?
Safety Critical Systems
Formal Methods. Objectives To introduce formal methods including multiple logic based approaches for software modelling and reasoning 2.
1 Advanced Computer Programming Project Management: Basics Copyright © Texas Education Agency, 2013.
Can We Trust the Computer? FIRE, Chapter 4. What Can Go Wrong? What are the risks and reasons for computer failures? How much risk must or should we accept?
SOFTWARE FAILURES.
School of Business Administration
Why study Software Design/Engineering ?
Software Testing Introduction CS 4501 / 6501 Software Testing
ATTRACT TWD Symposium, Barcelona, Spain, 1st July 2016
ECE 103 Engineering Programming Chapter 2 SW Disasters
The Top 10 bugs
A Gift of Fire Third edition Sara Baase
PowerPoint® Slides to Accompany
(some of) My Research Engineering is about getting technology to do what it does well so humans can do what they do well Jeff Offutt Professor of Software.
Week 13: Errors, Failures, and Risks
Reliability and Safety
What this course is NOT about:
Computer in Safety-Critical Systems
A Gift of Fire Third edition Sara Baase
Software Engineering Disasters
Presentation transcript:

1

Software in our lives, then and now  Medical (processing and analysis, Computer Aided Surgery, other various equipment)  Financial and business (banking, trading)  Transportation (trains, cars, planes, auto-pilot)  Home (security / fire)  Leisure  Military 2 I think there is a world market for maybe five computers. - IBM Chairman Thomas Watson, 1943

Murphy’s law “Anything that can go wrong, will go wrong.” 3

Previously in CS 577  Mars 2 Rover crash-landing (1971)  dust storm caused incorrect landing angle computations?  Ariane 5 self-destruct (1996)  Data conversion from 64-bit floating point to 16-bit signed integer: overflow  Cost: $370,000,000  Therac-25  Beta radiation overdose (10,000%)  Replacing hardware interlocks with software interlock mechanisms  Frequent overflow in a one-byte counter. Operator input to the machine during overflow causes interlock mechanism to fail due to race condition  3 deaths, 3 injured  Unrealistic risk assessment, inadequate testing  AMR / Budget Rent-A-Car / Hilton Hotels / Marriott International “Confirm”  Bank of America “MasterNet” 4

Disasters at the people (not company) level  Panama Radiation Therapy Overdose (2000)  18 deaths, 10 injured  Double counting, Overreliance on automation  Various military vehicle crashes  Chinook Helicopter Crash, 29 deaths (1994): uncommanded run up and run down of the engines (analysis shows 486 anomalies in 18% of the code)  V-22 Osprey Crash, 4 deaths (2000): software causes aircraft to decelerate when pilot attempts to reset software  Failed missile interception, 28 deaths, 94 injured (1991): system clock  Y2K (2000)  Abbreviating year with 2 digits  $300,000,000,000 cost 5

Toyota Anti-Lock Brake recalls (2010)  ~150,000 vehicles recalled  Reason: 1 second lag  60 mph (96.5 km/h)  ~90 feet (27.5m)  Enough to cause accidents  Bad PR  $1.1 billion in repairs  $ million in lost sales  Endangering people’s lives 6 Toyota "Moving forward"... even when you don't want to.

Stock Market Flash Crash (2010)  Dow Jones stock market (very closely watched U.S. benchmark indices tracking targeted stock market activity).  Biggest on-day market decline, points  Cost: $1,000,000,000,000  Procter & Gamble, Accenture: shares price down to a penny, or up to $100,000.  Recovered a large amount of the point drop 7

Cold War Nuclear Missile False Alarm  Very sensitive period  Strategy was an immediate nuclear counter-attack to guarantee “ Mutually Assured Destruction”  How it was mitigated: soldier considered it was a computer error  The bug: false alarm created by a rare alignment of sunlight on high-altitude clouds and the satellites’ orbits.  Cost: Nuclear World War 3 8

What’s next? Just as Thomas Watson couldn’t guess what was coming up in the next 40 years, it is pretty hard for us to estimate how computers and technology will evolve in the near future. However, we know for sure that software systems will get MUCH larger and complex, more tasks will be automated, reliance on software will greatly increase. 9

Do more testing? Testing will only catch ~80% of the bugs. “Program testing can be used to show the presence of bugs, but never to show their absence!” Edsger Dijkstra 10

Conclusion: our role  Our responsibility increases as the need for reliability in our system increases  Proper process / practices in architecting, managing risks, developing and testing.  As we were taught in various SE classes (577, 578…)  Good communication between stakeholders  To ensure all sides are talking about the same thing 11