「COCOA」の不具合は厚労省担当者の知識不足が原因、は本当か?

新型コロナウイルス感染者との接触通知を行うスマホアプリ「COCOA」。これのAndroid版で不具合を長期間放置していた件について、厚労省から出てきた報告書の結論は、厚労省担当者のアプリに関する知識不足で全体を管理できず、適切なテストの実施や外部からの指摘に対応できなかったことが原因、という結論でした。しかし、本当に知識不足が原因なのでしょうか?
我々もユーザー企業の担当者とやり取りをしますが、多くの担当者がIT関連知識は不足していると思われます。なぜなら、それは彼らの専門分野ではないからです。だから外部に委託するのです。

今回のようなパターンはシステム開発においてよくある話ですが、知識不足が原因ということは稀だと思われ、ほとんどの場合が成果物に対する理解不足とテスト不足が原因です。きつい言葉で言えば、どんなものが出来上がってくるのかハッキリとイメージが出来ていなくて、提出されたものへの第一印象で成否を決めていることが大きいと思います。「概ねこんな感じでOK」というレベルで判断してしまうと、ろくにテストするパターンが網羅できず、運用開始後に穴が見つかるというのはよく聞く話ですし、後から「それならこういう仕様でなければダメだったのでは!?」と驚くようなことは我々も経験済みです。

具体的に成果物にどのような振る舞いをさせたいか?こういう場面ではこういう動作をして欲しい、こういう使い方をした場合は警告を出して欲しいなど、使う立場から見たアプリケーションの振る舞いをしっかり把握することです。そのイメージさえ出来ていれば、大きなポイントを外さないテスト内容は決められますし、例外があるのであれば使用する可能性のある関係者全員でパターン出しをすれば済むことです。
裏で何が動いているとか、このAPIを使うとこんなことが出来るが、他のOSでは別のやり方が必要だとか、そのような技術的な知識は知っているに越したことは無いですが、ユーザー側の担当者には不要な知識です。

と同時に、受注側も言われたことだけを真に受けて手を動かすだけでは全然ダメで、発注者の意図するところ、完成形のイメージをいかに共有できるかが大切です。もちろん、概要だけ丸投げしておいて受注者に理解力や追求力を求めるのは筋違いですが、質問することを恐れて曖昧な理解のまま進めることは一番危険です。しつこすぎて嫌がられるかもしれませんが、不明点については話し合いなり質問の送りつけなどのコミュニケーションを取って、正しい認識を共有していくことが最善の策です。

システム開発における多くの失敗談は、発注側が完成図をイメージできていないか、イメージしていることを開発側と共有できていないことがほとんどです。丸投げ体質であれば尚更その確率は高くなるでしょう。