ITから社会を映すNEWSを追う

<ITから社会を映すNEWSを追う>システムトラブルの教訓

2007/11/05 16:04

週刊BCN 2007年11月05日vol.1210掲載

広がる空洞が人を呑み込む

健全で豊かなIT社会とは

 ITが浸透すればするほど、システムトラブルは拡大する。みずほ銀行、東京証券取引所、ソフトバンク、ETC、そして今回のICカード乗車券改札機と都営地下鉄大江戸線。そのたびに「設定の甘さ」「不十分なテストとバグつぶし」「プログラム・ミス」「人為ミス」が指摘される。だが1つを叩いてもまた1つと、“もぐらたたき”の状況が続く。ひょっとすると根源的な原因はもっと別のところにあるのではないか。「IT社会が生み出した空洞」が人を呑みこもうとしている。

■装置に紛れ込んだ“蛾”

 1945年9月9日のこと、米マサチューセッツ州のハーバード大学ボストンキャンパスでちょっとした事件が発生した。アメリカ陸軍が総力をあげて開発した砲弾弾道計算装置が、突然動かなくなったのだ。それはコンクリートの基礎の上に鉄骨で組み上げられ、1万7468本の真空管、7万個の抵抗器を詰め込んだもので、重さが30トンもあった。熱のせいで真空管が切れ、停止することがたびたびあった。

 開発者のジョン・プレスパー・エッカート博士と共同で、この機械のプログラムを作っていた海軍の女性中尉──イェール大学大学院を出て数学の博士号を持つ秀才──は、真空管を1本ずつ調べていった。すると彼女は、Fパネル70番のリレーの接点に1匹の蛾を発見した。午後3時45分だった。

 問題の蛾を発見したのは、のちに「COBOLの母」と称されたグレース・マレー・ホッパー女史で、その機械装置は世界初のデジタル式計算機「ENIAC」、紛れ込んだ蛾こそコンピュータプログラム用語の「バグ」(虫)の語源となった。ホッパー女史がメモ帳に貼り付けた蛾は、今でも「世界最初のバグ」としてスミソニアン博物館に保存されている。

■地下鉄が動かない!

 たった一匹の蛾がコンピュータを停止させる。同じようなことが、この10月12日、首都圏の鉄道に設置されている自動改札機4378台で発生した。ICカード型乗車券「Suica」と「PASMO」のデータを読み取れず、改札の扉が開かなかったのだ。朝の通勤ラッシュとぶつかったため、JRや地下鉄は改札を開放することで混乱を回避した。当初は電源が入らない現象が発生したと伝えられたが、日本信号製の改札機に限って、サーバーセンターからダウンロードされるプログラムがうまく作動していないことが判明したのは同日の昼過ぎ。

 毎朝、起動するとすべての改札機とサーバーセンターが交信し、プログラムをやり取りしているというのは意外だった。改札機はICチップに通過記録を入力するだけで、料金はサーバーが計算して電子マネーから差し引く仕組みと聞くと、これってスゴイんじゃない?という印象だ。

 実は18日にも窓口処理機101台で障害が発生していた。その原因は、ICチップに記録されたデータのうち、たった2バイト(漢字1文字分)をどう処理するか、改札機とサーバーに組み込まれたプログラムの設計ミスだったという。「たった2バイト」には、5年以上使っていないICカードが検出されたとき、ゲートが開かないようにする符号が入っていた。それがプログラムのミスで、すべてのカードに適用されてしまったというのだ。

 騒動の余韻が覚めやらぬ23日、今度は東京都営地下鉄大江戸線で早朝から停電が発生した。一時は全線がストップし、車両に閉じ込められた通勤客らが続出する事態となった。直接の“被害者”は9万3000人と推定されているが、他線やバス、タクシーで迂回せざるを得なかった人まで含めるとその数は20万人を下らない。

 電車が止まった原因は2か所ある変電所の1か所を点検したとき、送電回路のスイッチを入れ戻すのを忘れた人為ミスということになっている。だが、ある鉄道技術者は次のような疑問を呈している。

 「3日前に点検したとき、作業員がスイッチを切ったのを入れ忘れていたというのだが、それなら23日までの間にトラブルが発生していたはず。監視センターのアラームが作動していなかったとすれば、監視システムの設計ミスかもしれない。あるいは人員削減の余波とも受け取れる」

■人為ミスを見落としたミス

 この5月の連休に発生した全日空のシステムトラブルも、原因はルータの設定ミスだった。ITが浸透し、われわれの生活は便利になった──ようにみえる。だが、ちょっとした人為ミスが大きな混乱を生む。自動改札機のトラブルや、大江戸線の停止の際に通勤客らが沈着冷静に行動したからよかったが、ひとつ間違えば暴動に発展していてもおかしくない。

 情報処理推進機構(IPA)のソフトウェア・エンジニアリング・センター(SEC)は、ある新聞社の取材に「ミスのない完璧なプログラムを作るのは不可能」と答えている。それだけに設計段階でのロジックチェックが重要というわけだが、今回のトラブルは単純なプログラムミス、人為ミスではなさそうだ。

 というのは、昨年の12月1日、JR東日本のIC乗車券改札システムで大規模なトラブルが発生していたからだ。184駅に設置した改札機が、11月30日から12月1日に日付が変わった瞬間に動作しなくなったという事故だ。始発電車までに回復したため、通勤ラッシュに混乱は起きなかった。このとき異常停止したのも日本信号製の装置だった。同社の機器にプログラムミス(バグ)があることを予告していたといっていい。

 同じように大江戸線の停電も、監視モニタのアラームを係員が見落としていた可能性がある。直接の原因は点検時にスイッチを入れ戻すのを忘れた人為ミスかもしれないが、それを見落とした人為ミスが重なったと理解すべきだろう。

 ITがどんなに進んでも、それを運用する人が劣化していれば、際限なくトラブルは起こる。業務ノウハウはコンピュータシステムに蓄積され、人間は端末のオペレータになり下がる。それが果たして「健全で豊かなIT社会」といえるのだろうか。

ズームアップ
旧システムは頑丈?
 
 トラブルが発生しているシステムは、いずれもここ10年内に構築されたものだ。それ以前に開発されたメインフレーム系のレガシーシステムでは、このようなトラブルはほとんど発生しなかった。
 なぜなのか。
 「シンプルなシステムを連携・結合するという手法を、忘れ去った結果」(元情報サービス産業協会会長の佐藤雄二朗氏)という指摘が耳に痛い。
  • 1