HTX Frederikshavn & Hjørring

Det har aldrig været sjovere at være nørd

Brugerværktøjer

Webstedsværktøjer


prog:forloeb:mars_climate_orbiter

Mars Climate Orbiter – software- og systemfejl

Baggrund

  • Opsendt af NASA i december 1998 som del af Mars Surveyor-programmet.
  • Formål: Studere Mars’ klima og fungere som kommunikationsrelæ.
  • Missionen gik tabt i september 1999 ved indflyvning i Mars’ atmosfære.

Hvad gik galt?

  • En softwarekomponent fra Lockheed Martin leverede thrust-data i pound-force (imperiale enheder).
  • NASA’s navigationssoftware forventede data i newton (metriske enheder).
  • Enhederne blev ikke konverteret korrekt.
  • Resultat: Forkert beregning af bane → rumsonden kom for tæt på Mars og brændte op i atmosfæren.

Hvorfor blev fejlen ikke opdaget?

  • Manglende end-to-end systemvalidering af enheder.
  • Utilstrækkelig interface-specifikation mellem teams.
  • Afvigelser i navigationsdata blev observeret, men ikke eskaleret korrekt.
  • Ingen robust automatisk kontrol for konsistens i måleenheder.

Relation til software testing

1. Kravspecifikation og interface-kontrakter

  • Klare og entydige enhedskrav burde have været dokumenteret.
  • Interface Definition Documents (IDD) skal verificeres gennem test.
  • Manglende enforcement af standarder (SI-enheder).

2. Integration Testing

  • Individuelle komponenter fungerede korrekt isoleret.
  • Fejlen opstod i integrationen mellem to systemer.
  • Integrationstest burde have fanget enhedsmismatch.

3. System Testing & End-to-End Testing

  • Simuleringer burde have afsløret urealistiske baneafvigelser.
  • Edge cases og akkumulerede beregningsfejl blev ikke håndteret tilstrækkeligt.

4. Validation vs. Verification

  • Verification: “Bygger vi systemet korrekt?” → Ja, hver komponent virkede.
  • Validation: “Bygger vi det rigtige system?” → Nej, helheden var inkonsistent.
  • Klassisk eksempel på at lokal korrekthed ≠ global korrekthed.

5. Organisatoriske faktorer

  • “Faster, better, cheaper”-strategi medførte strammere budget og tidsplan.
  • Kommunikationsproblemer mellem organisationer.
  • Afvigelser i data blev ikke behandlet med tilstrækkelig risikovurdering.

Konsekvenser

  • Mission til ca. 125 millioner USD gik tabt.
  • NASA ændrede procedurer for systems engineering og verifikation.
  • Øget fokus på enhedsstandardisering og tværgående review-processer.
prog/forloeb/mars_climate_orbiter.txt · Sidst ændret: af 127.0.0.1