1969年7月20日午後4時頃
人類が月の表面に 着陸する数分前のことです
宇宙飛行士が最終降下を しようとしたとき
緊急アラームが点灯しました
何かがコンピューターの 過負荷を引き起こし
宇宙船は 着陸の断念を 迫られたのです
地球では マーガレット・ハミルトンが 息を呑んで見守っていました
チームを率いて 宇宙船に搭載された 先駆的なソフトウェアを開発した彼女は
この任務に 少しのミスも許されないことを 分かっていました
しかし 土壇場になって起こった この緊急事態は
ソフトウェアが意図した通りに機能していたことを 証明することとなったのです
遡ること33年前 インディアナ州のパオリに 生まれたハミルトンは 常に好奇心旺盛でした
大学では数学と哲学を専攻し
大学院の学費を稼ぐために マサチューセッツ工科大学で
研究職に就きました
そこで 初めてコンピューターに触れ
「カオス論理」という新しい分野の研究を 支援するソフトウェアを開発しました
次いでMITのリンカーン研究所で ハミルトンは
敵機を検知するための
アメリカ初の防空システム用の ソフトウェアを開発しました
その後 著名な技術者の チャールズ・ドレイパーが
人類を月に送るために働く人材を 求めていると聞き
すぐに彼のチームに参加しました
NASAは400人以上の技術者からなる ドレイパーのグループに
初の小型デジタル・フライトコンピューターの 開発を求めました
アポロ誘導コンピューター（AGC）です
この装置は 宇宙飛行士からの 入力に従い
宇宙船の誘導 操縦 制御を 行うものです
コンピューターが信頼性に欠け 部屋ほどの大きさがあった時代に
AGCは誤りなく作動し
１立方フィートのサイズに 収まる必要がありました
ドレイパーは研究所を ２つのチームに分けました
１つはハードウェア設計で もう１つはソフトウェア開発です
ハミルトンは 司令船と月着陸船の それぞれに搭載されるソフトウェアの
開発チームを率いました
「ソフトウェア・エンジニアリング」 という言葉は
この極めて重大な課題のために 彼女が作ったものでした
人の命がかかっていたので どのプログラムも 完璧でなければいけませんでした
マーガレットのソフトウェアは 予期せぬエラーをいち早く検出し
リアルタイムで 回復する必要があったのです
しかし 初期のソフトウェアは あらかじめ 決めた順序でしか処理できなかったので
そのような順応性の高いプログラムを 作るのは困難でした
この問題を解決するために
マーガレットは非同期的 プログラムを設計しました
優先度の高い作業が 優先度の低い作業に 割り込んで実行されるということです
彼女のチームは 何が起きようとも
個々のタスクが正しい順に 正しいタイミングで実行されるよう
すべてのタスクに 固有の優先度を割り当てました
この打開策を見出した後
マーガレットは そのソフトウェアが 非同期的な環境でも
宇宙飛行士の作業を 手助けできることに気付き
宇宙飛行士の通常の スケジュールされた作業の実行中でも
非常事態を知らせるために 割り込みを行う
「優先表示」処理を 設計しました
これにより 宇宙飛行士は 管制室と通信しながら
最善策を決定することが 出来るようになったのです
これは フライトソフトウェアが 初めて
パイロットと直接 非同期的に 対話したときでした
月面着陸の直前に警報が出たのは この安全機構のおかげだったのです
バズ・オルドリンはすぐに自身の間違いに 気が付きました
彼は うっかり ランデブーレーダーの スイッチを入れてしまったのです
このレーダーは 地球に帰還するのに 不可欠でしたが
貴重なコンピューター資源を 使い切っていたのです
幸い アポロ誘導コンピューターは こうした事態にも対応でき
過負荷状態になったとき ソフトウェアはプログラムを再起動して
最優先の処理だけが 行われるようにし
それには着陸のためのプログラムも 含まれていました
そして 優先表示画面は 宇宙飛行士に選択肢を与えていました
着陸するか 断念するか
一刻の猶予も許されない状況の中 管制室は決断を下しました
アポロ11号の着陸の成功は 宇宙飛行士 管制室 ソフトウェア ハードウェアの
全てが統合された１つのシステムとして 機能したことの結果でした
「人類を月に送る」という ケネディー大統領の目標に感銘を受けた
技術者や科学者たちの この偉業において ハミルトンの貢献は不可欠なものでした
そして 命を救った彼女の仕事は アポロ11号だけにとどまらず
アポロ有人宇宙船に搭載されたソフトウェアで バグは１つとして出なかったのです
アポロの仕事の後 ハミルトンは
システムやソフトウェアにおいて 新展開をもたらすため
独特なユニバーサルシステム言語を使う 会社を設立しました
2003年にNASAは 彼女の業績を称え
NASAが個人に贈ったものとして 史上最高額となる賞金を授与しました
そして ハミルトンのソフトウェアが 初めて宇宙飛行士を月に送ってから47年後
テクノロジーに対する考え方を 変えた功績により
彼女は大統領自由勲章を 授与されたのです