Bodkociarka

Post on 19-Jun-2015

510 views 0 download

Tags:

description

Short presentat

Transcript of Bodkociarka

How much is a $emicolon?;or how important bug-free software is

Delta II in 1997

cost

$40 million GPS satellite

$55 million rocket

+ some $$ for launch

~ $100 million

is ; that expensive?

no

that one was cheap

people KILLED

...and besides, crack in the engine was to blame...

6-meter crack

the computer functioned OK

autodestroyed rocket in 1 sec

saving many lives

, but

Nedelin in 1960

80-150 dead

safety blocks were disabled because of

testing

one switch

The Mariner I space probe was launched from Cape Canaveral on 28 July 1962 towards Venus. After 13 minutes' flight a booster engine would give acceleration up to 25,820 mph; after 44 minutes 9,800 solar cells would unfold; after 80 days a computer would calculate the final course corrections and after 100 days the craft would cirlce the unknown planet, scanning the mysterious cloud in which it is bathed. However, with an efficiency that is truly heartening, Mariner I plunged into the Atlantic Ocean only four minutes after takeoff. Inquiries later revealed that a minus sign had been omitted from the instructions fed into the computer. "It was human error", a launch spokesman said.

This minus sign cost $18.5 million.

"The most expensive hyphen in history"

Phobos 1 & Phobos 2

Co-operation of 14 nations

The failure was traced to an error in the software uploaded,

which had deactivated the attitude thrusters...

...a single character error in an upload sequence resulted

subsequent loss of the spacecraft

Phobos 2

...failure was determined to be a malfunction of the on-board

computer.

Ariane 5$500 million

Ariane 5$500 million

converting 64-bit integer to 16-bit integer

Ariane 5$500 million

converting 64-bit integer to 16-bit integer

priceless

L_M_BV_32 := TBD.T_ENTIER_32S ((1.0/C_M_LSB_BV) * G_M_INFO_DERIVE(T_ALG.E_BV));if L_M_BV_32 > 32767 then" P_M_DERIVE(T_ALG.E_BV) := 16#7FFF#;elsif L_M_BV_32 < -32768 then" P_M_DERIVE(T_ALG.E_BV) := 16#8000#;else" P_M_DERIVE(T_ALG.E_BV) := UC_16S_EN_16NS(TDB.T_ENTIER_16S(L_M_BV_32));end if;P_M_DERIVE(T_ALG.E_BH) := UC_16S_EN_16NS (TDB.T_ENTIER_16S ((1.0/C_M_LSB_BH) * G_M_INFO_DERIVE(T_ALG.E_BH)));

L_M_BV_32 := TBD.T_ENTIER_32S ((1.0/C_M_LSB_BV) * G_M_INFO_DERIVE(T_ALG.E_BV));if L_M_BV_32 > 32767 then" P_M_DERIVE(T_ALG.E_BV) := 16#7FFF#;elsif L_M_BV_32 < -32768 then" P_M_DERIVE(T_ALG.E_BV) := 16#8000#;else" P_M_DERIVE(T_ALG.E_BV) := UC_16S_EN_16NS(TDB.T_ENTIER_16S(L_M_BV_32));end if;P_M_DERIVE(T_ALG.E_BH) := UC_16S_EN_16NS (TDB.T_ENTIER_16S ((1.0/C_M_LSB_BH) * G_M_INFO_DERIVE(T_ALG.E_BH)));

$500 000 000 mistake

meet...

Mars Climate Orbiter $328 million

why do I mention it?

feet meters

Northeast blackout$7 - $10 billion

if (condition); /* statement */

if (condition) if(condition 2) /* statement */ else /*statement */

Solutions?

formally verified error proof

language

ADA!

and

ADA!

450 in 198337 by 1996

1983

1996

# of languages in DoD

Boeing 777

Ariane 4Ariane 5

ATC

TGV

NY metro

Software bugs are costing the U.S.

economy an estimated $60 billion each year

any questions?