Margaret Hamilton (Wissenschaftlerin)

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
Margaret Hamilton (1995)

Margaret Hamilton geb. Heafield[1] (* 17. August 1936[2] in Paoli, Indiana) ist eine US-amerikanische Informatikerin und Mathematikerin. Sie war Direktorin der Softwareentwicklungs-Abteilung des Instrumentation Laboratory (jetzt Draper Laboratory) am Massachusetts Institute of Technology (MIT), wo die On-Board-Flugsoftware für das Apollo-Raumfahrtprogramm entwickelt wurde.[3]

Leben[Bearbeiten | Quelltext bearbeiten]

Hamilton schloss 1954 die Hancock High School ab und erhielt 1958 ihren B.A. der Mathematik am Earlham College. Dort lernte sie ihren späteren Mann kennen, den Anwalt James Cox Hamilton.[1] Die gemeinsame Tochter Lauren Hamilton, eine Schauspielerin und Kamerafrau, wurde 1959 geboren.[4] Mit der Absicht, einen Abschluss an der Brandeis University zu erlangen, zog sie nach Massachusetts, nahm aber stattdessen eine Stelle als Softwareentwicklerin am MIT an.[5]

Von 1976 bis 1984 war Hamilton Geschäftsführerin von Higher Order Software (HOS), einer Firma die sie mitgegründet hatte. 1986 gründete sie in Cambridge, Massachusetts, Hamilton Technologies, Inc. und war Vorstandsvorsitzende des Unternehmens. Die Arbeit der Firma basierte auf der Universal Systems Language, die auf ihrem Paradigma für System- und Softwaredesign „Entwicklung vor dem Bedarf“ („Development Before The Fact“) basiert.[6]

NASA[Bearbeiten | Quelltext bearbeiten]

Hamilton in der Zeit als Software­entwicklerin bei der NASA

Bei der NASA war Hamilton dafür verantwortlich, die On-Board-Flugsoftware zu entwickeln, die notwendig war, um zum Mond und zurück zu navigieren sowie auf dem Mond zu landen. Die Software wurde danach während weiterer Raumfahrtprogramme eingesetzt, unter anderem bei der Weltraumstation Skylab.[3] Sie erwarb praktische Erfahrungen in der Informatik und in der Softwareentwicklung, noch bevor es entsprechende Ausbildungen gab.

Dabei entwickelte sie innovative Ansätze in den Bereichen der Systemarchitektur, der Softwareentwicklung, Geschäfts- und Prozessmodellierung, Fehlervermeidung von Entwicklungsparadigmen, formalen System- und Softwaremodellierungs-Sprachen, systemorientierten Ansätze zur Systemmodellierung und -entwicklung, automatisierten Laufzeit-Umgebungen, Methoden um die Zuverlässigkeit und Wiederverwendbarkeit von Software zu maximieren, Problemanalyse, dem Überprüfen der Korrektheit von Spracheigenschaften, Techniken für offene Architekturen stabiler Systeme, vollständige Automatisierung des Lebenszyklus, Qualitätssicherung, der nahtlosen Integration, verteilten Prozesssystemen, Fehlererkennung und -behebung, Mensch-Maschine-Schnittstellen, Betriebssysteme, Ende-zu-Ende-Test-Techniken und dem Management von Software über deren Lebenszyklus.[3]

Auf dieser Basis entwickelte sie Konzepte für asynchrone Software, prioritätsgesteuerte Aufgabenabarbeitung und der „man-in-the-loop“ Entscheidungsfindung, die die Grundlage moderner, äußerst verlässlicher Softwarearchitektur darstellt.

Apollo 11[Bearbeiten | Quelltext bearbeiten]

Hamilton neben Ausdrucken der Apollo-Flugsoftware

Die Entwicklungen Hamiltons und ihres Teams am MIT verhinderte 1969 den Abbruch der Apollo-11-Mondlandung.[7] Drei Minuten, bevor die Landefähre die Mondoberfläche erreichte, wurden mehrere Computerwarnungen ausgelöst. Der Computer wurde von den eingehenden Daten überlastet, weil das für die Landung nicht erforderliche Rendezvous-Radar-System einen Zähler aktualisierte, was unnötig Rechenzeit verbrauchte. Aufgrund der stabilen Architektur (Fixed-priority pre-emptive scheduling) konnte der Computer dennoch weiterarbeiten: Die Apollo-Flugsoftware wurde derart entwickelt, dass wichtige Aufgaben, wie etwa die für die Landung kritischen, weniger wichtige Aufgaben unterbrechen konnten. Ursprünglich wurde das Problem einer fehlerhaften Checkliste und des ungeplanten Aktivierens des Radars der Besatzung zugeschrieben. Eine erneute Untersuchung kam 2005 zu dem Schluss, dass ein Fehler im Design der Hardware des Rendezvous-Radars den Computer mit falschen Informationen versorgte, obwohl es sich im Stand-By-Modus befand[8]:

„Aufgrund eines Fehlers in der Checkliste wurde der Schalter für das Rendezvous-Radar in die falsche Position gebracht. Dadurch wurden falsche Signale an den Computer gesendet. In der Folge musste der Computer seine normalen Funktionen für die Landung ausführen und erhielt gleichzeitig zusätzlich sinnlose Daten, deren Verarbeitung bis zu 15 % seiner Kapazität beanspruchte. Der Computer (bzw. vielmehr die Software in ihm), war schlau genug zu erkennen, dass mehr Arbeit von ihm verlangt wurde, als er ausführen konnte. Er löste daher einen Alarm aus, der dem Astronauten sagen sollte: ‚Ich bin durch Aufgaben überlastet, die ich jetzt nicht ausführen sollte, und ich werde mich nur auf die wichtigen Aufgaben konzentrieren,‘ also die, die für die Landung benötigt werden. […] Tatsächlich war der Computer programmiert, mehr zu tun, als nur den Fehler zu erkennen: In der Software befand sich ein ganzer Satz an Rettungsprogrammen. In diesem Fall reagierte er damit, die weniger wichtigen Aufgaben abzubrechen und die wichtigeren wieder zum Zug kommen zu lassen. […] Hätte der Computer das Problem nicht erkannt und entsprechend reagiert, dann bezweifle ich, dass Apollo 11 die erfolgreiche Mondlandung geworden wäre, die sie war.“

Margaret Hamilton: Brief an das Computermagazin Datamation, 1. März 1971[9]

Softwareentwicklung[Bearbeiten | Quelltext bearbeiten]

Hamilton popularisierte den Begriff Software-Engineering.[10][11][12] In diesem Bereich entwickelte sie Konzepte zu asynchroner Software, prioritätsgesteuerter Ausführung, Ende-zu-Ende-Tests und Man-in-the-loop-Entscheidungsfähigkeit, die durch Prioritätsanzeigen später die Grundlage besonders zuverlässiger Softwarearchitektur wurde.[13]

Das Umfeld ihrer Arbeit war davon geprägt, dass es in jener Zeit noch keine Ausbildungsrichtungen für Informatik oder Softwareentwicklung gab. Gelernt wurde durch praktische Erfahrung.[3]

Auszeichnungen[Bearbeiten | Quelltext bearbeiten]

1986 wurde Hamilton von der Association of Women in Computing der Augusta Ada Lovelace Award verliehen.[5]

2003 bekam sie für ihre wissenschaftlichen und technischen Leistungen den NASA Exceptional Space Act Award. Der Preis war mit 37.200 US-Dollar dotiert, der höchsten Summe, die die NASA bis dahin an einen einzelnen Preisträger ausgezahlt hat.[14][13][7]

Im November 2016 verlieh ihr Präsident Barack Obama die Presidential Medal of Freedom.[15] 2017 wurde sie Fellow des Computer History Museum.

Veröffentlichungen[Bearbeiten | Quelltext bearbeiten]

Margaret Hamilton hat 130 Artikel und Berichte über die 60 Projekte und die sechs größten Programme veröffentlicht, an denen sie beteiligt war.[3] Eine Auswahl:

  • M. Hamilton, S. Zeldin (1976) „Higher order software—A methodology for defining software“ IEEE Transactions on Software Engineering, vol. SE-2, no. 1, Mar. 1976
  • M. Hamilton (1994), „Inside Development Before the Fact,“ cover story, Editorial Supplement, 8ES-24ES. Electronic Design, Apr. 1994
  • M. Hamilton, Hackler, W.R. (2004), Deeply Integrated Guidance Navigation Unit (DI-GNU) Common Software Architecture Principles (revised dec-29-04), DAAAE30-02-D-1020 and DAAB07-98-D-H502/0180, Picatinny Arsenal, NJ, 2003–2004
  • M. H. Hamilton and W.R. Hackler (2007), „Universal Systems Language for Preventative Systems Engineering,“ Proc. 5th Ann. Conf. Systems Eng. Res. (CSER), Stevens Institute of Technology, Hoboken, NJ. Mar. 14-16, 2007, paper #36

Literatur[Bearbeiten | Quelltext bearbeiten]

  • Artikel auf Time.com (en)
  • Hilmar Schmundt, Die unbekannte Heldin – wie eine junge Programmiererin die Mondlandung rettete, in: Der Spiegel, Nr. 30 vom 23. Juli 2016, S. 100–103 (online)

Weblinks[Bearbeiten | Quelltext bearbeiten]

 Commons: Margaret Hamilton – Sammlung von Bildern, Videos und Audiodateien

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. a b Emma Stickgold: James Cox Hamilton, at 77; lawyer was quiet warrior for First Amendment. Boston Globe, 31. August 2014, abgerufen am 26. Mai 2015 (englisch).
  2. 1936 ist als Geburtsjahr auch angegeben bei Tiffany Wayne, American women of science since 1900, ABC-Clio, 2011
  3. a b c d e NASA Office of Logic Design „About Margaret Hamilton“ (abgerufen am 19. Oktober 2016)
  4. [1]
  5. a b Cambridge Women’s Heritage Project “Margaret Hamilton”
  6. M. Hamilton and W.R. Hackler, „Universal Systems Language: Lessons Learned from Apollo“, IEEE Computer, Dec. 2008
  7. a b Michael Braukus NASA News “NASA Honors Apollo Engineer” (Sept. 3, 2003)
  8. Don Eyles: Tales from the Lunar Module Guidance Computer. In: 27th annual Guidance and Control Conference. American Astronautical Society. 6. Februar 2004. Abgerufen am 13. Juni 2013.
  9. Margaret H. Hamilton: Computer Got Loaded. In: Cahners Publishing Company (Hrsg.): Datamation. 1. März 1971. ISSN 0011-6963.
  10. By A.J.S. Rayl „NASA Engineers and Scientists-Transforming Dreams Into Reality“
  11. ACM Digital Library accessed January 24, 2016
  12. The origin of „software engineering“ accessed January 24, 2016
  13. a b NASA Press Release „NASA Honors Apollo Engineer“ (3. September 2003)
  14. NASA Administrator Sean O'Keefe sagte dazu: „Die Konzepte, die sie und ihr Team entwickelten, wurden zu den Grundsteinen moderner Software-Entwicklung. Es ist mir eine Ehre, Frau Hamilton für ihre außerordentlichen Leistungen für die NASA auszuzeichnen.“
  15. The White House: President Obama Names Recipients of the Presidential Medal of Freedom. 16. November 2016, abgerufen am 22. November 2016 (englisch).