見出し画像

大規模接種センターの予約システムの"欠陥"報道の愚かさ

先週の話題のひとつに政府が東京と大阪に準備するコロナウィルスのワクチン大規模接種センターの予約システム架空の接種券番号や生年月日を入力しても登録ができてしまうと一部マスコミが"欠陥"だと騒ぎ立てた騒動があります。報道では不透明な取引がどうのこうのと騒いでいますが、いちIT屋さんとして許せないのがこれをシステムの"欠陥"として取り上げられている事です。全然システムの欠陥でもないですし、問題ですらありません。むしろこのシステムに完璧なチェックが実装されていたほうがよっぽど問題です。そのことについて簡単に整理してみたいと思います。

1.完全性は業務フロー全体で担保するもの

システムはコンピューターシステムだけではない
「システム」というと私たちはついつい「コンピューターシステム」というイメージで考えてしまいます。しかしシステムとはWikipediaを見ても「相互に影響を及ぼしあう要素から構成される、まとまりや仕組みの全体。一般性の高い概念」とあります。「要素」とは関係するスタッフなどの人、帳票類、具体的な場所、そして手順やルールなど様々なものが含まれます。そのひとつにコンピュータシステム(インフラやアプリケーションなど)が存在しているだけなのです。それらの要素を組み合わせてシステム、今回の例でいうと大規模接種センターでの予約というが設計されます。

今回の受付システムの業務フロー
今回話題になった大規模接種センターのシステムを簡単な業務フローを書いてみました。実際にはもっと複雑化と思いますが、わかりやすいように簡単にしてみました。

画像1

この業務フローで見ると手順は大きく3つのフェーズに分けられます。

①接種券配布 
 接種に権利がある人に自治体などによって接種券(紙)が配布されます。 
 接種券は接種の権利を証明するものになります

②予約
 大規模接種を望む人はWebの予約システムによって意思表示と接種日を確定します。これで大規模接種センターを望む意思と日程が確定します。

③会場受付
 対象者は会場に接種券、予約番号、保険証を持って行き、受付係がそれを確認します。

確認するプロセス(フェーズ)はどこ?

この3つのフェーズのなかで確認すべき事項をどこで何をもって行うか整理します。
接種の権利の確認:③会場受付にて接種券の所持によって確認されます。
予約時間の確認:③の会場受付にて予約情報の有無を確認します
本人確認:③の会場受付にて保険証等で本人かどうかを確認、さらに接種券との同一人物であるかも確認します。

つまり、不正防止を防ぐための必要な確認はすべて③の会場受付にて受付係(人間)によって確認される業務システムなのです。②の予約に求められるのは予約日の確保くらいでしかなく、求められる機能は接種キャパシティの調整でしかありません。この部分は正確性を求められるモノではまったくありません。100人が99人になったところで大した影響はありませんし、お年寄りである対象者の体調不良やど忘れを考えたら、ある程度不正確であることを受容するしかない部分でしかありません。

病院の受付票システムの例

こういったシステムは、別に今回の様な緊急事態だからそうなっているわけではなく「普通の事」なのです。私たちの身の回りにもこういったシステムは存在します。代表的なのは病院や銀行でよく見かける受付順の予約システムです。窓口の横に置いてある受付番号を印刷した紙を発行数るアレです。

思い起こしてください。あの受付番号表をもらうのに本人確認しますか?そして正当な病人であることを確認しますか?保険証や診察券の所持も確認しますか?・・・・何も確認しないですよね。本人かどうかを確認するのも、病気の人なのかどうかも確認するのはすべて呼ばれた後に窓口で行いますよね。あのシステムも今回と同じで、不正に発行されたところで空振りの呼び出しが発生するだけで、不正に受診できたり替え玉受診できたりされてしまう事はないのです。

あったとしても窓口の受付のやり方を改善するだけで充分で、あの予約券発行システムを変える必要は全くありません。


2.機能追加するとコストは増大

この欠陥騒動に対してよく「時間が無いから仕方がない」といった論理も見られますが、本当にそうでしょうか? ITに機能を追加すればするほど開発にはコスト(お金)がかかります。このお金は今回は国民の税金ですよね。無駄に使っていいものではないと思います。

つまり必要ないコストはかけてはいけないのです。たとえ必要があったとしてもその効果を考えてバランスよくお金を使わないといけないのです。

・・・とはいえこれではわかりにくいので、ものすごく簡単なシステム図を書いて説明したいと思います。

1)今回のシステム

画像2

今回問題とされたシステムです。
この図にあるようにとてもシンプルな構成でデータが1つ、機能が2つの簡単なシステムです。仮にデータベースを作るのが200万円、1機能をプログラムで作るのが100万円でできるとすると、合計400万円でこのシステムは開発することが出来ます。

2)不正登録チェックを追加したシステム(簡易版)

画像3

このシステム構成では接種券番号の有無をチェックするためのデータを用意します。このデータを投入し、チェックするために2つの機能が追加されました。この構成の場合はデータ2つで機能が4つなのでシステム開発機能は800万円・・・つまり倍になります。でもこのシステムでは各自治体からの接種券のデータを入手する運用や登録・チェックする運用が発生し、人でもたくさんかかります。そこでこの自治体とネットで接続して自動連係するようにする事を考えてみました。

3)自治体の接種券データを連携した場合

画像4

わかりやすくするためにそんなわけないですが東京には4つしか自治体が無いと仮定して書いています。この場合はデータは7つ。昨日は8つになります。そのまんま数えても開発費は2200万円になります。この時点で最初に比べて⒌倍以上の開発費がかかるようになります。実際には各市町村はものすごい数がありますし、その自治体とそれぞれ日程調整しながらデータの項目の調整やテストをするための人が必要になるし、各市町村からの情報送信を管理する機能も必要になるので、たぶん数十倍のコストになるかと思います。

3.無駄な機能追加は重大な罪

ITシステム開発で一番悪いのは欠陥がある事ではなく、機能が足りない事でもなく、効果がない事にお金を使う事です。実際の効果がほとんど無いのに400万円で済む開発を数倍に膨らませるのは最悪の選択です。欠陥があれば直せばよいし、機能が足りなければ追加すればよいのですが、いったん無駄に使ってしまった開発費用(血税ですよ)はもう二度と戻ってきません。
チェックなどの人間がやったほうが効率が良い部分は人がやれば良いし、むしろ柔軟に対応が可能になります。今回の場合は問診票を渡したり、注意事項を説明するのに絶対に受付の人は必要になりますし、むしろ柔軟な対応を考えると(たとえば来る日を間違えてきちゃったおばあちゃんを追い返すことなく対応するとか)人間のほうが良い気もします。
システムとしては必要な機能を果たせていればよいのですべてをITに任せてしまう必要はありません。もちろん同じチェックを何回も何回もする必要もありません。そんなことをして無駄なお金(血税ですよ)を使うのは、犯罪的な悪行でしかありません。

むしろ今回のシステムでは生年月日を入力させるのを無駄として削除したいくらいです。接種券の番号と希望日時だけの入力でも充分な気がします。項目の数が増えれば増えるほどセキュリティ対策に費やすお金も増えるわけですし・・・・

4.これは役所だけの問題ではない

この無駄な機能をITに要求する悪い癖はなにも政府関係のシステムに限ったことはありません。企業に導入されるシステムでも同じような"欠陥"が指摘されて、そして機能追加されている実態があります。私がセミナーで以前聞いた話(ちゃんとしたコンサル会社の人でした)だと68%が実際には使われない機能が開発されていると言っていました。ERPを導入したユーザー企業(超大手です)の事例でも25%もの追加機能がほとんど使われなかったそうです。もしこれを作らなかったら、その分のITコストが少なくなるだけでなく、そのぶんITシステムが早く導入され、早く導入効果を生んでいた事になります。そのぶんを効果があることにお金を使い、はやくビジネスを展開できていればどれだけビジネスが拡大されたのかわかりませんよね。もったいないと思います。
このへんが日本の企業の生産性を下げているのかもしれませんし、DXに進めない理由だと感じています。

無駄なIT投資が一番の罪

今回の騒動も、そんな無駄な機能の開発によって遅らせている時間があったら少しでも早くワクチンを接種して、経済活動を少しでも早く再起動したほうが絶対に日本のためになりますし、無駄な開発をするお金があったら医療体制の充実に少しでもお金を使ったほうがいいと思います。


思い余って悪筆な文章を書いてしまいましたが、本当にそう思います。
少しでも日本の社会のITに対する考え方が変わってくれることを祈ります。


この記事が気に入ったらサポートをしてみませんか?