モノのインターネット(IoT)が切り開く可能性は素晴らしいものだ。しかし、IoTのデバイスに組み込まれているソフトウェアに十分な注意が払われているとは言い難い。管理が一元化されたITインフラとは状況が異なるため、この問題は非常に手ごわい難問になる可能性がある。ある推計によれば、これまでにすでに300億個以上のIoTデバイスが出回っており、1秒ごとに127個の新しいIoTデバイスがインターネットに接続されているという。
これらのデバイスの多くは、単純なものではない。デバイスはますます洗練され、インテリジェントになっており、それらの内部ではかなりの量のコードが動いている。しかしそれは、面倒を見なければならないソフトウェアが大量に存在するということを意味する。Gartnerは、現在企業が生成しているデータの約10%は従来の一元化されたデータセンターやクラウド以外で生成、処理されており、この数字は2025年までに75%に達すると推計している。
提供:Joe McKendrick
冷蔵庫や洗濯機内のセンサーのソフトウェアに問題が生じれば、不便になる。自動車や乗り物で問題が生じれば、トラブルになる。そして、医療機器のソフトウェアで問題が生じれば、生きるか死ぬかの問題になる。
「コードの腐敗(code rot)」は、これらのデバイスが抱えている潜在的な問題の原因の1つだ。コードの腐敗は新しい問題ではなく、かなり前から災厄の原因になっていた。この問題は、ソフトウェアを取り巻く環境の変化やソフトウェアのデグレードが発生した場合、あるいはソフトウェアの機能改良や更新が積み重なって、技術的負債が蓄積した場合に発生する。
非常に優れた設計のエンタープライズシステムでさえ、この問題によって立ち往生する場合がある。しかし、ますます高度なコードがエッジに展開されるほど、IoTデバイスや分散システムに対して十分な注意を払う必要があり、特に特に重要な機能を持つデバイスやシステムではその必要性が高まっている。TauruSeerの創業者であり、同社の最高経営責任者(CEO)を務めるJeremy Vaughan氏は、最近、医療の世界のエッジ環境で使われているコードについて警告を発した。
Vaughan氏が行動を起こすきっかけとなったのは、1型糖尿病だった娘が使っていたモバイルアプリの持続血糖モニタリング(CGM)機能に問題が発生したためだ。「機能が消え、重要なアラートが作動せず、通知が止まった」と同氏は述べている。その結果、CGMのアラートに頼っていた9才の娘は、直感に頼らざるを得なくなったという。
Vaughan氏は、2016年にダウンロードしたアプリが、2018年末には「完全に役に立たなくなっていた」と話す。「Vaughan氏の一家は孤立しているように感じたが、他にも同じ状況の人がいるのではないかと考えた。彼らは『Google Play』とAppleの『App Store』のレビューを見て、数百人の患者や看護者が、同様の問題について不満を述べているのを知った」と同氏は言う。