KAOS (22) どうして要求をエンジニアリングするのか (1.2.1-1)

Boehm と Papaccio の報告によると,要求の誤りが設計段階で発見された場合,修正に必要な労力は,要求段階で発見・修正した場合の5倍となる.実装段階では10倍であり,単体テスト段階では20倍,リリース後は200倍となる (p.48).

最初の項(1.2.1)では,「要求をエンジニアリングする」理由を,要求に起因する問題の事実・データ・引用から示す.それが,要求工学の重要性を示しているということである.文頭の引用は,よく知られている上に覚えやすい.現在はどうか,というのが気になる(ちなみに,1987年に発表されたデータである).

原書では,もう少し新しいデータ(2001年くらいまで)もあるのだが,ぜひ原書を見ていただくとして,ここでは,安全性に関わる興味深い点を見ておく.最初は,本文ではたった5行で記載されているアメリカン航空AA965便の事故である.以前に調べたことがあるので,違う視点から考えてみる.


AA965便は,1995年12月20日,夕方マイアミを飛び立ちコロンビアのCaliに向かった.夜間の飛行である.Cali空港は山岳地帯にある.Cali空港が近づき,自動操縦によって飛行機は降下を始めた.

CALI_AA965_accident

Caliの管制官から,直接北から着陸してはどうかという提案があった(オリジナルの飛行計画では180度旋回し,南から滑走路に入る必要があった).夜間であり,クリスマス休暇の混雑から出発が遅れていたので,操縦士は,早く到着したいと思っていた(出発が約2時間遅れた).当然,了解し,新しい経路を入力することにした.この間,飛行機は降下を続けている.新しい経路を入力するに当たり,管制官に確認したところ,TULUAの経路標識を過ぎたかと聞かれた(レーダは以前に爆破されていて,管制官は航空機の位置を確認できない!).その,TULUAビーコンを確認している間も飛行機は降下を続け,結果的にすでに通り過ぎたことが分かった.

次の経路標識はROZOで,操縦士はRと入力した.一文字のインデックスで,航空機の近傍の経路標識が自動的に探索される.かつ,同一の先頭文字を持つものがないハズだった.ところが実際には,ROMEOが東方近傍にあり,インデックスRは,より大きな都市であるボゴタに近いROMEOが選択された.ROZOのインデックスは,同じRを使えないためROZOと4文字であった(事故後,PALMAに経路標識名は変更されている).しかし,そのことに操縦士は気づかなかった.精神的に余裕がない状態だし,普通はインデックスは一文字という思い込みがある.自動操縦により,南へ向かうコースから,東のROMEOに向かうため,旋回をした.しかし,しばらくの間は,気がつかなかった.

途中で,間違いに気づき進路を戻そうとした.しかし,谷沿いの経路で進路を変えれば,当然山と向き合うことになる.GPWS(対地接近警報装置)の警告により回避しようと上昇したが,間に合わずに山に衝突した.これは,管制官が滑走路変更を提案してから,わずか5分後の出来事であった.

事故調査報告書では,この事故は操縦士のミスと結論づけている(原因として4点挙がっているが,すべて操縦士に責任があるとしている 1

ちなみに,機長は13回Caliに飛んでいる.副操縦士は,Caliは初めてであった.


さて,システムの問題に戻る.グラスコックピットと呼ばれる近代的な操縦支援システムは,それがブラックボックスとなったときに(身体性を失ったときという方が適切か),人間が,短時間で正しい判断をすることを困難にする.

「より賢くすればよいではないか」というのは,機械に身を任すという決心を,我々に要求する.

(nil)

Notes:

  1. http://web.archive.org/web/20090213120410/http://www.ntsb.gov/ntsb/brief2.asp?ev_id=20001207X04990&ntsbno=DCA96RA020&akey=1