seegeのまとめサイト

もっと早く教えてくれよって思った内容を書いていきたいと思います。

COCOAの不具合は2020年11月に指摘されていた

COCOAでまた不具合

新型コロナウイルス接触確認アプリ「COCOA」が2021年2月3日にまた不具合を出したとのことです。

f:id:seege:20210214041337p:plain

不具合の内容が致命的なもので、Android端末で、陽性登録者と1メートル以内の距離で15分以上の接触があっても、接触として検知・通知を行っていなかったというものです。

Android端末にて本アプリをご利用の場合に、陽性登録を行った本アプリ利用者との1メートル以内15分以上の条件に該当する接触があっても接触として検知・通知を行っていないことが判明しました。本障害の解消は、2月中旬を予定しており、それまでの間、Android端末をご利用の方は、仮に陽性者との1メートル以内15分以上の接触があったとしても、本アプリで通知を受け取ることができません。なお、iOS版については本障害の影響はなく、陽性者との接触について通知を受けることが可能です。

【出典】新型コロナウイルス接触確認アプリ(COCOA) COVID-19 Contact-Confirming Application|厚生労働省 

Android端末だけと記載されていますが、Android端末の場合は、通知を行っていなかったということなので、陽性登録者がAndroid端末の場合だと通知されないので、iOS版であっても、通知されていないものを受けることなんて、できないはずです。

厚生労働省のホームページのQ&Aにも質問として掲載されていますが、通知を受け取ることが可能と書かれてあるのは謎です。

問⑨-5 Android端末が陽性者との接触を通知しないようになっているとのことですが、iOS版の接触確認アプリは機能していますか?

  • iOS端末をご利用の方については、Android端末で発生している障害の影響はなく、陽性者との接触について通知を受けることが可能です。

【出典】接触確認アプリ利用者向けQ&A|厚生労働省

不具合はまだ解消されていない

まだ、不具合は解消されておらず、何をしているんだろう?って感じです。

  • 厚生労働省としては、2月中旬までに障害を解消すべく取り組むとともに、品質管理を徹底いたします。引き続き国民の皆様に広く安心して本アプリを御利用いただけるよう、しっかり取り組んでまいります。

COCOAのこれまでの更新履歴は以下の通りです。

  • 2020年6月19日に「1.0.0」版をリリース
  • 2020年6月30日にiOS版の修正版「1.1.1」の配布
    2020年7月1日にAndroid版の修正版「1.1.1」の配布
    新型コロナウイルス感染者等情報把握・管理システム(HER-SYS)から発行されていない処理番号を、陽性者の登録画面に入力した場合に「完了しました」という表示が出る場合があった。
  • 2020年7月13日にiOS版の修正版「1.1.2」の配布
    2020年7月14日にAndroid版の修正版「1.1.2」の配布
    接触確認アプリに陽性者として登録を行う際、正しい処理番号を入力しても登録することができない事象
  • 2020年9月8日にiOS版の修正版「1.1.3」の配布
    2020年9月9日にAndroid版の修正版「1.1.3」の配布
    概ね1メートル以内の距離で15分以上の近接した状態を検出する精度の適正化を図るため、内部処理の改良
  • 2020年9月24日にiOS版の修正版「1.1.4」の配布
  • 2020年9月28日にAndroid版の修正版「1.1.4」の配布
    陽性者との接触があった旨のプッシュ通知を表示する際の接触の判定と、接触確認アプリに陽性者との接触があった旨の表示をする際の接触の判定とを整合的に行うようにプログラムの修正を行うとともに、接触の検出精度の適正化を図るため、内部処理の改良
  • 2020年11月5日に、修正版「1.1.5」の配布
    本アプリにおいて接触通知を受けた利用者に、各自治体の体制整備の状況に応じた適切な相談先を速やかにお示しできるよう、画面遷移の見直し
  • 2020年12月3日に、修正版「1.2.0」の配布
    利用者が本アプリの不具合を感じた際に、利用者本人の同意・協力のもとで、不具合の調査に役立つ動作情報(※)を送信いただける機能を追加
  • 2020年12月15日に、修正版「1.2.1」の配布
    保健所による積極的疫学調査との整合性を図る観点から、陽性者との接触の可能性について本アプリで通知を行う対象期間を、保健所が行う積極的疫学調査において濃厚接触者の探索を行う期間にあわせる改修

【出典】新型コロナウイルス接触確認アプリ(COCOA) COVID-19 Contact-Confirming Application|厚生労働省

今回の不具合は、2020年9月28日にAndroid版の修正を行った時のものです。陽性者との接触に関する内容を修正しているので、全く関係のないところを修正して不具合が出たわけではなく、関係する部分を修正していたのに不具合を発見できなったのですから一体、どのようなテストを行っているのか?と突っ込みたくなります。

COCOAの開発元はどこ?

厚生労働省は、COCOAの開発をパーソルプロセス&テクノロジー株式会社に委託(受託予算9,460万円)し、パーソルプロセス&テクノロジーが元請けとして全体の工程管理を担当し、エムティーアイがバグ改修や保守開発を担当しています。

運用経費は別で今年度の所要経費は現時点で2.5億円程度だそうです。

【出典】加藤大臣会見概要 |令和2年6月19日|大臣記者会見|厚生労働省

そして、COCOAのベースは、「COVID-19 Radar Japan」というエンジニアを中心とした有志が集まった、オープンソースプロジェクトにより開発されたものです。

このプロジェクトは、日本とシンガポール、香港などを中心に200名以上が参加しています。

開発の中心となった方は、日本マイクロソフト社に所属している方で、プロジェクトには個人として参加しています。

COVID-19 Radar Japanは、ボランティアでの協力ですが、工程管理を行ったというパーソルプロセス&テクノロジー株式会社には1億円近くの税金が支払われているというのは、違和感を感じます。

f:id:seege:20210214045241p:plain

【出典】接触確認アプリCOCOAの現状と課題(2020年9月17日)

上記の資料によると、保守運用体制とありますので、プログラム開発は、ボランティアに依存しているということなのでしょう。

そして、感染追跡アプリがスマホ上でスムーズに動くための共通規格は、米グーグルと米アップルが開発したことから「規格の利用は1国1アプリのみ」「アプリは公衆衛生当局が作製または利用するものに限る」との方針が示されたことで日本では、厚生労働省が主導することになっています。

厚生労働省が主導で、プログラム開発はボランティアの協力を得て、運用保守は、パーソルプロセス&テクノロジーに委託し、パーソルプロセス&テクノロジーが更に、3社に再委託という体制でCOCOAは開発・運用・保守が行われていることになります。

すべてが無責任

2020年6月19日の最初のリリース版については、開発者の方が行っていたようですが、これが新型コロナウイルス感染者等情報把握・管理システム(HER-SYS)から発行されていない処理番号を、陽性者の登録画面に入力した場合に「完了しました」と表示される不具合が見つかり、厳しい批判を受けました。

開発者の方は「5日前にAPIの仕様が変わろうと、実装が変わろうと、何があっても3週間で完璧なものを作り上げろと言われ、不具合が出たらへっぽこエンジニアの烙印を押されるわけだ……」という発言をされているようですが、結局、ボランティアの協力となれば、あくまで、協力で責任はないという認識になってしまうんですよね。国が主導して国民に使ってもらうアプリを開発するのであれば、責任はしっかり明確にするべきです。肝心のプログラム開発はボランティア、運用・保守も自分たちではできないような企業が受けて、再委託。こんな体制で完璧なものを作って運用・保守ができるはずはないんです。

開発費はボランティアのはずなのに、約1億円、更に運用経費が2.5億円(今年度のみ)ですが、これだけのお金を費やしているのに、根本となる機能が働いていなかったことに気づかなかった、しかも、今回の、COCOA Android版の不具合については、2020年11月25日に、Git-HUBで指摘されていたのに、それさえも確認されていないのですから、パーソルプロセス&テクノロジーはどんな運用・保守体制を構築しているのか?ってことです。

 

  • 現在通知サーバーから配信されているファイルではtransmission_risk_levelに0が設定されていますが、AndroidではtransmissionRiskScoreがExposureConfigurationに従って設定されるのはtransmission_risk_levelが1~8の場合であり、0だった場合はtransmissionRiskScoreには1が入るようになっているようです。
・・・途中略
  • transmissionRiskScoreが1のときにriskScoreがminimumRiskScore以上になることはないので、transmission_risk_levelが0だと、現在のAndroid版では接触が検知されることはないと思われます。

【出典】transmission_risk_levelの値について · Issue #14 · cocoa-mhlw/cocoa · GitHub

半年間も機能しないアプリを使わされていたことになります。しかも、2.5億円の運用経費が使われていたのです。しかも、2021年2月14日現在、まだ修正は改善されていません。正直、苛立ちしか感じません。

こんな状態のアプリですから2021年2月9日時点で、ようやく2,500万件を超えました。

当初、国民の60%の利用が必要と言われていましたが、今、現在でまだ20%程度しか利用していないことになります。

【出典】接触確認アプリ「COCOA」のDL数が2,500万件突破。Androidの通知不具合修正はまだ先に - PC Watch

こんなお粗末なアプリに今後も何億もかかる運用費用を無駄に費やすつもりなのでしょうか?