12月1日、全国銀行資金決済ネットワーク(全銀ネット)とNTTデータが共同で記者会見を行い、10月10日から11日に発生した「全国銀行データ通信システム」(全銀システム)でのシステム障害についての原因分析の報告と再発防止を説明した。両社はこのシステム障害に関する報告書を11月30日に金融庁に提出している。
このシステム障害は、2023年10月10日の全銀システムの営業開始時に生じた。原因は10月7日〜9日に行った中継コンピュータ(リレーコンピュータ:以後、RC)の移行に伴うもので、RC17からRC23へのバージョン更改によるものだった。
RCの「内国為替制度」機能を利用している加盟金融機関で、RC本体装置がシステムダウンし、全14行のうち10行のRC本体の装置が機能停止した。
今回のシステム障害の原因は、内国為替制度運営費情報を取得する際に使用する共有メモリ上のインデックステーブルの一部が破損したことが原因。RC23シリーズのプログラムが正常に動作せず、システムダウンに繋がった。このインデックステーブルはRCの起動時に展開されるロードファイルから生成されるが、ロードファイルを作成するプログラムの不具合(一時的に確保する作業領域の不足)により破損した。不足はOSのバージョンアップに伴うテーブルサイズの拡張にもかかわらず、展開時の領域拡張が行われなかったため発生した。NTTデータの開発プロセスにおける誤解と、再検証の不足が原因で、必要な拡張が見落とされた結果だという。
全銀ネットの辻 松雄理事長は、金融機関名テーブルのサイズ拡張に伴い、正統金融機関名テーブル、略読金融機関名テーブル、金融機関コードインデックステーブルの領域が限界を超えたことを説明し、「アプリケーションの負荷や物理メモリの不足ではなく、作業領域の不足が原因である」と指摘した。
顧客への影響に関して、以前の発表における数字を更新し、影響を受けた件数が556万件であること、その中で未処理の件数が102万件であることを明らかにした。また、この問題に対する補償として、約8000件について合計800万円の支払いが行われる予定であることを報告した。
さらに、辻理事長は「委託者としてのマネジメントにも不備があった」と述べ、今回の障害に対する重大な責任を認識していることを表明した。
また、設計および製造工程プロセスにおける問題点が浮き彫りになった。これは、OSのバージョンアップ時の非互換対応の影響調査プロセスにおいて、製造関係者だけでプログラム修正方針を決定してしまい、その誤りを検出するための適切なプロセスが存在していなかったことに起因する。
試験工程プロセスにも問題があった。機能要件の充足性に関しては品質保証が行われていたが、基盤環境の変化による予期せぬ非互換による異常を検出する点で不足があった。具体的には、変更されていないテーブルが正しく作成されているかの直接確認が行われておらず、本番環境に近い試験工程プロセスも不足しており、「すり抜け」の原因となった。
NTTデータは、さらに復旧対応プロセスにも複数の課題があったとする。全銀ネットとの事前の合意不足、見積もり精度よりもスピードを優先した対処、障害の原因分析や代替運用、暫定対処の検討と対応のためのタスク管理、並びに代替案への切り替え時限の不備などが挙げられる。さらに、過去に経験のない両系同時障害を想定した訓練が実施されていなかったと総括した。
今後、NTTデータは再発防止策として、設計・製造工程でのプロセス改善と試験工程でのプロセス改善を上げるという。前者では、プログラム修正方針を詳細設計関係者も参加させて決定する。後者は、新旧テーブルの比較と実際の取引データを用いた疎通試験を実施し、試験の精度を向上させる。
復旧対応プロセスでは、全銀ネットと協議した上で復旧ガイドラインを作成し、ブラインド訓練を行うことで対応力を強化する。
NTTデータ 代表取締役社長 佐々木 裕氏は「さらに基盤人材の関与を高め、NTTデータおよびグループ会社が開発プロセスを分担することで、システムの安定性を高めていきたい」とし、「トラブル時の復旧対応におけるフィージビリティの感度を高めていきたい」と語った。