« 酷暑の果てのずっと先 | トップページ | 酷暑がいぬまに森を散歩 »

2023/07/08

ITシステムは例外処理が9割

マイナンバーに関する誤登録やシステムの不具合に関して,システムを作る側の視点から面白い記事を見つけました.

「愚かなのはマイナカード関連だけじゃない、企業でも「バカヨケ」なきシステムの恐怖」 (木村岳史,日経ビジネス)

要は,ユーザーが様々なミスをすることを前提にシステムは設計・構築されなければならない,というエンジニアリングでは当たり前のことを述べています.工学の言葉で言うと,定格外使用に対するフェイルセーフの作り込みということになります.今日では身の回りのほとんどすべての電気製品はマイコンで制御されていますが,マイコンのプログラムにはこのフェイルセーフのためのプログラムが書き込まれているはずです.

実際自分で簡単なプログラムを書いてみるとわかりますが,実用的にしようとすればするほど,自分以外の他人にも使ってもらおうとすればするほど,誤入力や操作ミスをしたときに安全に元の状態に戻す,間違いを表示して再入力を促す,などのためのプログラム量が増大していきます.

Sourceg6f078a01d_1280

ElchinatorによるPixabayからの画像

私がこのサイトで公開しているソーティング・フィルター Refsort/Ruby でも,ソースコードの 7 割から 8 割程度は例外処理のためのものです.マイナンバーのようなシステムだと,ソースコードのおそらく9割以上が例外処理に割かれていると容易に想像できます.つまり SE やプログラマーは,めったに遭遇することはないどんな誤入力や誤操作があっても,システムが間違いを犯さないようにシステム全体を設計し実装することが求められます.

これは現実には大変なことで,100% の完璧さを求めることは無理なのですが,完璧に近づく努力を怠ることは犯罪に近いことです.自動車や航空機,医療機器などのことを考えれば容易に納得いくでしょう.

一方,ユーザーの入力ミスを防げなかったマイナンバーのシステムですが,ユーザーがどれほど間違っていたかというと,健康保険組合が 7,500 万人の被保険者の情報を登録して,誤入力があったのはわずか 1,000 件のオーダー.誤り率は 0.001% という驚異的な正確さだったのです.このような高い正確度で作業をしたにも関わらずメディアや野党はそれを騒ぎ立てるのですが,この程度の誤り率で制度自体の存続を議論するようでは,定量的思考能力が欠けているのでしょう.

ただし,誤入力を誤入力と見抜き,そういう入力をさせないようにシステムが作り込まれていなかったことは当然責められるべきです.日経ビジネスの記事もそこに論点を置いています.健康保険組合がこのような正確さで仕事をしていなかった場合を想像すると,背筋がぞっとしますね.

しかし日本では,一つの申請を行うのに住所や氏名などの基本情報を異なる書類に何度も(しかも手書きで)記入させるやり方が今でも健在です.そのあたりの発想自体から変えていかなければ,バカヨケできるシステムの構築は難しいでしょう.

| |

« 酷暑の果てのずっと先 | トップページ | 酷暑がいぬまに森を散歩 »

IT関連情報」カテゴリの記事

工学・エンジニアリング」カテゴリの記事

コメント

俊さん

ごもっともです。

ただ、戸籍には文字情報はありますが読みがない、銀行口座にはカタカナで漢字がないなど非常に無理なところがあります。

このような個人情報の間違いは、比率が極小さくても当事者にとっては重大な問題なので単純ではないと思います。

特に健康保険は生命にも関わる可能性もありますし。

一番の問題は発注者の国が仕様書を書けない、完成したシステムを検証できないところに問題があると思います。

投稿: きたきつね | 2023/07/09 22:09

キタキツネさん,

コメント多謝.目下のところ,日本の IT 関係者が最も困っているのは,地番と住居表示だそうです.以下の記事によくまとまっています.

「とにかく日本の住所のヤバさをもっと知るべきだと思います」
https://note.com/inuro/n/n7ec7cf15cf9c

私も以前住んでいた場所の住所が2種類あるのは変だと思っていました.片方はxxxx 番地の1,もう片方は xxx x丁目 x 番 x 号.

氏名の漢字の多様性も問題.斎藤さんの斎の字体は30種類以上あるのだそうです.こちらはなかなか解決が難しそうです.

投稿: 俊(とし) | 2023/07/10 19:21

コメントを書く



(ウェブ上には掲載しません)




« 酷暑の果てのずっと先 | トップページ | 酷暑がいぬまに森を散歩 »