Margaret Hamilton

Margaret Hamilton dołączyła do MIT, aby pracować nad projektami oprogramowania (w tym nad oprogramowaniem meteorologicznym dla Edwarda Lorenza, ojca teorii chaosu, oraz nad oprogramowaniem systemu SAGE, który wyszukiwał wrogie samoloty), zanim wylądowała na kontrakcie MIT/NASA jako główny programista w Apollo Guidance Computer. Pracowała nad każdą załogową misją Apollo, jak również nad wieloma misjami bezzałogowymi. W misjach załogowych Hamilton kierowała zespołem, który opracował oprogramowanie pokładowe dla modułów dowodzenia i księżycowego. Była dyrektorem Wydziału Inżynierii Oprogramowania w MIT’s Instrumentation Laboratory.

Kod, który opracowała Hamilton był oprogramowaniem, z którego korzystałyby dwa komputery statków kosmicznych Apollo i byłby podstawą tego, co dziś jest przemysłem inżynierów oprogramowania, którzy zawdzięczają swoją karierę Hamilton i jej zespołowi. Pokładowe oprogramowanie lotnicze zostało zbudowane tak, by było asynchroniczne. Każde zadanie w oprogramowaniu miało przypisany unikalny priorytet przez członków zespołu. Hamilton opracowała oprogramowanie wykrywające błędy systemu i usuwające je w czasie rzeczywistym. Obejmowało to jej procedury człowiek w pętli priorytet-wyświetlacz-interfejs, które dawały oprogramowaniu możliwość asynchronicznej komunikacji w czasie rzeczywistym z astronautami─programem i astronautami działającymi równolegle─w środowisku rozproszonego systemu-systemu. Na tym tle, wyświetlacze priorytetowe ostrzegały astronautów w przypadku sytuacji awaryjnej, przerywając normalne wyświetlacze misji astronautów i zastępując je wyświetlaczami alarmów priorytetowych, dostarczając im opcji związanych z sytuacją awaryjną, z których mogli wybierać. Tak było w przypadku Apollo 11 tuż przed lądowaniem na Księżycu, kiedy komputer, w wyniku pozostawienia przełącznika radaru rendezvous w złej pozycji, został przeciążony. Wyświetlacze alarmów priorytetowych przypominały astronautom, by ustawili przełącznik radaru z powrotem tam, gdzie jego miejsce. Kiedy wyświetlacze priorytetowe dawały im wybór: „lądować” lub „nie lądować”, z powodu ich (i kontroli misji) wiary w integralność oprogramowania pokładowego, wybierali lądowanie.

Hamilton często przyprowadzała swoją córkę, Lauren, do pracy w godzinach wolnych od pracy. Pewnego razu, gdy niektórzy z zespołu uruchamiali scenariusze misji na hybrydowym komputerze symulacyjnym, Lauren poszła na poszukiwania i zaczęła wybierać klawisze DSKY w sposób „poza nominalny”. Uruchomiła scenariusz misji i spowodowała jej niepowodzenie, wybierając P01 (prelaunch) w połowie kursu. Hamilton zapytał, „co by się stało, gdyby P01 zostało nieumyślnie wybrane przez prawdziwego astronautę w połowie lotu podczas prawdziwej misji?”. Byłby to poważny problem, ponieważ wymazałoby to dane nawigacyjne. Nie mogąc dodać kodu zapobiegającego popełnieniu tego błędu przez astronautę, Hamilton dodał do oprogramowania notatkę: „nie wybieraj P01 podczas lotu”. W następnej misji, Apollo 8, astronauta popełnił ten sam błąd; Hamilton i jej zespół byli w stanie pomóc astronautom w ponownym załadowaniu danych nawigacyjnych, aby zastąpić zniszczone dane. Miała teraz zgodę na dodanie oprogramowania, aby zapobiec temu problemowi w przyszłych misjach Apollo.

„Hamilton jest osobą, która wpadła na pomysł nazwania dyscypliny inżynierią oprogramowania, jako sposobu na nadanie jej legitymizacji”. Prowadziła empiryczne badania nad Apollo i późniejszymi wysiłkami, których efektem była jej systemowa teoria kontroli. Z jej aksjomatów wyprowadzony został uniwersalny język systemów wraz z paradygmatem automatyzacji i prewencji. Hamilton jest dyrektorem generalnym firmy Hamilton Technologies Inc. Otrzymała nagrodę NASA Exceptional Space Act Award (2003) oraz Prezydencki Medal Wolności od prezydenta Baracka Obamy (2016). Otrzymała własne Lego w zestawie Women of NASA Lego set.

.

Similar Posts

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.