メッセージの音声版をYouTubeで公開中

メッセージ from KK2

KK2weekly【メッセージfromKK2】(第825号 2024年2月16日発行)byAVCC

無料で学べるKK2Webサイトの動画掲載本数 1,998

コンピュータシステムとトラブルについて

平田英世
一般財団法人 AVCC 理事
元 富士通株式会社 シニアアドバイザー

 昨年10月10日、他行あての振り込みができないという障害が全国銀行データ通信システムで発生しました。私は長年システムエンジニアとして働いてきており、この問題を掘り下げることで、どうしてこのようなトラブルが起きたのだろうか?ということについて少し考えてみたいと思います。

 今回のトラブルの原因はいたって単純明快でした。新しく導入したシステムの開発において、設計書に記述されていたことをプログラマーが見落としたために、振り込み時に発生する振込手数料のチェック処理が正しく動作せず、エラーとなって、振り込み処理自体ができなくなってしまったということなのです。

 具体的には、振込手数料を計算するために必要となる対象の銀行名に関する情報等を処理開始前にあらかじめコンピュータのメモリ上に展開し、いつでもその情報を参照できるように設計されていましたが、メモリサイズが不足したことで、すべての情報がメモリ上に展開されない状態で運用が行われてしまったことが原因であると全国銀行資金決済ネットワークと開発ベンダーであるNTTデータから発表されています。今回の処理はこれまで運用されてきた部分を新しく変更する開発であって、新システムでは従来より情報量が増大化することはわかっていた(設計書上はそのようになっていた)のに、それをうっかり従来と同じ情報量を展開できれば良いとしてシステムを作ってしまったことが問題のようでした。

 通常はあらかじめデータなどをメモリに展開する場合は、メモリのサイズがどの程度かを規定し、メモリ上にその領域を確保したうえでそこにデータを展開するという処理となります。しかし、不幸なことにサイズを超えて展開されたところに、別の処理がメモリを確保し、そこに別のデータを展開するということが発生し、領域を超えて展開された銀行名に関する情報の一部は他の情報に上書きされてしまったということが発生したのです。家の購入に例えるなら、家の設計図を40坪で描いたが、実際に購入した土地は35坪しかなく、差分の5坪は別の人が購入して別の家を建ててしまった、ということと近い状態です。

 そもそもコンピュータシステム開発とは、最初にどういったシステムを開発するのかという設計を行い、それをプログラマーがコンピュータ言語に書くことで完成します。現代はアジャイル開発やノーコードなど、ちゃんとした設計書を作らなくてもシステムを作り上げることができるようになってきていますが、大規模、複雑なシステムなどに対しては条件が複雑かつ多岐にわたることから現実的には設計書、プログラミングといった開発手法が必要となります。

 そんなコンピュータシステム開発におけるトラブルの原因は、私の経験上、主に以下の4つであると考えます。
 a.コンピュータスキルのない技術者による開発
 b.設計上の漏れやミスをそのまま開発
 c.設計・プログラミング・テスティングなど複数の工程間の伝達ミス、勘違い
 d.レビューやテスティングでの漏れ、問題指摘の抜け
 上記以外に機械自体の故障もありますが、それを除けば、これらはすべて人間のミスということになります。

 今回の原因は、c.やd.にあたると思われます。一般的には、二重三重にチェックができる体制を設定しています。例えば設計書通りにシステムが動作しているかどうかを実際にシステムを動かしてチェックする、また、有識者が集まって設計書をレビューし、設計書自体の問題を設計段階で発見する、さらに設計ミスは必ず存在するという前提でレビューした場合、問題点をある一定件数以上指摘しなければ品質が保てていないという評価を下すなど、トラブルを未然に防止するための対策は年々成熟してきています。しかし、現実はトラブルが起きています。どのような対策を打ってもやはり人間による最終判断であり、残念なことに抜け・漏れ・勘違いは避けられないのです。

 コンピュータシステムのトラブルは必ず起きると想定し、社会的に問題となる大きなシステムであればあるほど、関連業界などを巻き込んだトラブル発生時の運用上の対策をきちんと事前に作り上げておくことが重要であると思います。

平田さん 平田英世
大学卒業後、1977年 富士通株式会社に入社。SEとして中央官庁基盤整備事業を中心に従事し、2014年オリパラ組織委員会へ出向、イノベーション推進室 室長として、5Gやロボットなどの先端技術を駆使したコロナ禍での安全・安心な大会開催を実践。

yose yose yose yose

■発行元:一般財団法人AVCC霞が関ナレッジスクエア事務局
〒100-0013 東京都千代田区霞が関3-2-1 霞が関コモンゲート 西館ショップ&レストラン 3F
電話:03-3288-1921 FAX:03-5157-9225

霞が関ナレッジスクエア(KK2)は学校教育や企業研修では教えていない「しごと力」をいつでも、どこでも、誰でも学べる場を提供することを目的に、一般財団法人AVCCの公益目的事業として運営しております。