Web教材一覧システムの調達

プログラムミスと自動改札機のトラブル

キーワード

プログラムミス、自動改札機トラブル


現象
 2007年10月12日早朝、首都圏のJR東日本、私鉄、地下鉄の合計662駅の日本信号製の自動改札機にトラブル発生。260万人の通勤客に影響した。
原因
 自動改札機はサーバからの起動プログラムで起動する。このとき、不正カードの情報(ネガデータ)を改札機のICカードに書き込む処理をする。この部分にエラーが発生して、改札機を起動できなくなったのが原因だという。
解説(asahi.comの記事より)
 このネガデータに何も問題がない場合は、通常通り処理できるのだが、ネガデータに「ある長さ、ある件数」といった条件が重なった時、データが読み込めなくなるプログラム不具合が判定部側にあることが判明。
 障害の引き金になったのが、2バイト(2進法で16けた)のデータだった。例えば改札機の場合、ネガデータは5451件分(6万5518バイト)を一区切りとして処理される。処理は4バイトずつ進めるため、最後に2バイト余る。全角ひらがなや漢字1文字分のデータ量だ。
 半端な2バイトも、件数がこの一区切りまでなら正常に処理されていた。だが、5452件以上になると「85件増すごとに5件の割合で、余った2バイトの処理を忘れる」(同社)というプログラムの欠陥があった。
 同じことが、18日に窓口処理機で発生し、切符の発売にトラブルが生じた。