Dependable Software Systems: Understanding and Mitigating Risks - Prof. Spiros Mancoridis, Study Guides, Projects, Research of Computer Science

Various risks associated with dependable software systems, including sources of problems such as requirements definition, design, implementation, support systems, inadequate testing, evolution, and adverse effects. Real-world examples of software failures and their consequences are provided, ranging from communications and space applications to transportation, safety-critical applications, money management, control of elections, jails, law enforcement, and more.

Typology: Study Guides, Projects, Research

Pre 2010

Uploaded on 08/19/2009

koofers-user-8hb-1
koofers-user-8hb-1 🇺🇸

10 documents

1 / 23

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Dependable Software Systems (Risks)
Dependable Software Systems (Risks)
Dependable Software Systems
Software Related Risks
Material drawn from [Neumann] Courtesy Spiros Mancoridis
“If anything can go wrong, it will
(and at the worst possible moment).”
- Murphy
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17

Partial preview of the text

Download Dependable Software Systems: Understanding and Mitigating Risks - Prof. Spiros Mancoridis and more Study Guides, Projects, Research Computer Science in PDF only on Docsity!

Dependable Software Systems

Software Related Risks

Material drawn from [Neumann] Courtesy Spiros Mancoridis “If anything can go wrong, it will (and at the worst possible moment).”

  • Murphy

Sources of Problems

  • Requirements Definition: Erroneous, incomplete, inconsistent requirements.
  • Design: Fundamental design flaws in the software.
  • Implementation: Mistakes in chip fabrication, wiring, programming faults, malicious code.
  • Support Systems: Poor programming languages, faulty compilers and debuggers, misleading development tools.

Adverse Effects of

Faulty Software

  • Communications: Loss or corruption of communication media, non delivery of data.
  • Space Applications: Lost lives, launch delays.
  • Defense and Warfare: Misidentification of friend or foe.

Adverse Effects of Faulty

Software (Cont’d)

  • Transportation: Deaths, delays, sudden acceleration, inability to brake.
  • Safety-critical Applications: Death, injuries.
  • Electric Power: Death, injuries, power outages, long-term health hazards (radiation).

Bug in Space Code

  • Project Mercury’s FORTRAN code had the following fault: DO I=1.10 instead of ... DO I=1,
  • The fault was discovered in an analysis of why the software did not seem to generate results that were sufficiently accurate.
  • The erroneous 1.10 would cause the loop to be executed exactly once!

Military Aviation Problems

  • An F-18 crashed because of a missing exception condition: if ... then ... without the else clause that was thought could not possibly arise.
  • In simulation, an F-16 program bug caused the virtual plane to flip over whenever it crossed the equator, as a result of a missing minus sign to indicate south latitude.

Year Ambiguities (Cont’d)

  • Mr. Blodgett’s auto insurance rate tripled when he turned 101.
  • He was the computer program’s first driver over 100, and his age was interpreted as 1.
  • This is a double blunder because the program’s definition of a teenager is someone under 20!

Dates, Times, and Integers

  • The number 32,768 = has caused all sorts of grief from the overflowing of 16-bit words.
  • A Washington D.C. hospital computer system collapsed on September 19, 1989, days after January 1, 1900, forcing a lengthy period of manual operation. 15

15

Shaky Math

  • In the US, five nuclear power plants were shut down in 1979 because of a program fault in a simulation program used to design nuclear reactor to withstand earthquakes.
  • This program fault was, unfortunately, discovered after the power plants were built!

Shaky Math (Cont’d)

  • Apparently, the arithmetic sum of a set of numbers was taken, instead of the sum of the absolute values.
  • The five reactors would probably not have survived an earthquake that was as strong as the strongest earthquake ever recorded in the area.

Therac-25 Radiation “Therapy”

(Cont’d)

  • In Washington, 1987, a patient received 8,000-10,000 rads instead of the prescribed 86 rads.
  • The patient died of complications of the radiation overdose.

AT&T Bug: Hello? ... Hello?

  • In mid-December 1989, AT&T installed new software in 114 electronic switching systems.
  • On January 15, 1990, 5 million calls were blocked during a 9 hour period nationwide.

Bank Generosity

  • A Norwegian bank ATM consistently dispersed 10 times the amount required.
  • Many people joyously joined the queues as the word spread.

Bank Generosity (Cont’d)

  • A software flaw caused a UK bank to duplicate every transfer payment request for half an hour. The bank lost 2 billion British pounds!
  • The bank eventually recovered the funds but lost half a million pounds in potential interest.