ボッシュ ソフトウェア イノベーションズ
ソフトウェアイノベーション

IoTにおけるソフトウェアの更新(SOTA入門)

7 Aug 2018 | 読了時間: 4分
Bosch ConnectedWorld Blogからの翻訳

このブログ記事の筆者はOlaf Weinmannです。筆者の紹介及び英語版のブログ記事は こちらです。

SOTA

今の私たちは、スマートフォンのソフトウェアをアップデート(更新)するプロセスについてはよく知っています。そして、私たちはメーカーに対し、オペレーティングシステム(OS)が常に最新状態に維持されることを期待しています。また一方、アプリケーションのデベロッパーに対しても、そのアプリケーションについて同様のことを期待しています。さらに、ソフトウェアの更新は容易であるべきで、せいぜい単にボタンを1回押すだけで終わることが望まれます。それでは、IoTデバイスの場合にそうならない理由は何でしょうか。ここでは、IoTでの無線によるソフトウェア更新について見てみましょう。

SOTAとFOTAの違い

無線によるソフトウェア更新(略して「SOTA」と言います)は、一般にインターネット経由で更新データをリモート受信することを意味しており、ユーザーは自分のデバイスをベンダーやサポート場所に持ち込む必要がありません。エンドユーザーにとってはSOTAでプロセスが単純化されますが、製品をダウンロードの形で提供することや、その資格のあるデバイスのみを指定しなければならないことなど、メーカーから見た場合には複雑なプロセスです。非常に多くのデバイスが対象の場合、必要なキャンペーンを展開することや、関係するロールアウトをうまくまとめて組織化することが必要になります。ソフトウェア更新プロセスの進捗状況も、その開始時点からモニターしておかなければなりません。そしてその間ずっと、セキュリティや信頼性の要求に目を光らせている必要があります。

SOTAは一般にソフトウェアコンポーネントの更新のことですが、FOTAはより狭い意味での更新です。すなわちFOTAは、無線でファームウェアを更新するプロセスのことです。言い換えると、FOTAはベースとなるハードウェアを制御するための、メインシステムソフトウェアの更新です。

IoTにはSOTAが必要

IoTについて語るとき、遅かれ早かれ「アジャイル開発」という用語に出会います。この用語は、単にソフトウェア開発にだけでなく、製品開発にも使われる業界用語です。アジャイル開発とは、製品やソリューション、サービスが、ある動的プロセスの一部として作り出されることを意味しています。つまり、1個の製品を1回だけ開発するわけではありません。実際、修正を加えたり、継続的に改良したりして、頻繁に変化する顧客の要求に合わせていくことになります。要するに、IoTは非常にダイナミックな環境であり、提供される物の絶え間ない改良こそが成功への鍵になります。またこのことから、ソフトウェアやアプリケーションを常に最新状態に維持しておくことも決定的に重要です。

「IoTはとてもダイナミックな環境です。ソフトウェアやアプリケーションを常に最新状態にしておくことが不可欠です」
Olaf Weinmann, ボッシュIoTロールアウトのプロダクトオーナー

数百万もの接続されたデバイスがあるなか、無線でのソフトウェア更新は顧客にとって便利で、更新プロセスを円滑に進められます。IoTで無線によるソフトウェア更新を使うことの重要な利点は以下の2つです。

  • 1つは、効率的で素早い反応が可能になることです。たとえば、セキュリティ侵害やソフトウェアのバグが見つかり、処置や修正が必要な場合を考えます。SOTAであれば、途方もない労力は必要とせず、ソフトウェア更新やセキュリティパッチをIoTデバイスに供給可能です。
  • さらに、SOTAを使い、自社の製品に新しい機能を追加することも可能です。これにより、ユーザーにとっての製品の魅力が失われないようにすることができ、製品寿命も長くなります。これは、ある1つの別のビジネスモデルとして見ることもできます。購入の意志決定を行うとき、お客様はそのユースケースに応じ、段階を踏みながら柔軟に機能の追加や削除を行えることが有益だと考える場合があります。これは当然新しい収入源へとつながります。たとえばお客様に新機能を提供したい場合、従来なら新製品を設計し、製造し、出荷する必要がありました。今なら、単に無線で更新データを送るだけで新機能を追加し、収益につなげることができます。

SOTAのユースケースを見る
自動車産業

車線保持から駐車補助、インフォテインメントの提供まで、最近の自動車はますます「道路を走るコンピュータ」へと進化してきました。最近の車には様々なソフトウェアが組み込まれていますが、自動車メーカーは、自社の車を常に最新の状態にしておく必要があります。多くの場合、このようなソフトウェアの更新は整備工場でケーブルを接続し、手作業で行われています。

セキュリティインシデントやソフトウェアのバグが検出された場合、影響のあるソフトウェアを更新するため、メーカーは何千台もの車のリコールを余儀なくされます。これはメーカーにとって非効率なだけでなく、車のオーナーにとっても時間がかかる、厄介な出来事です。SOTAを使えば、このようなプロセスはクラウド経由で対応でき、時間の大幅な節約が可能なばかりでなく、お客様の満足感を損なうこともありません。

しかし、これは単にセキュリティ上の欠陥にパッチを当てたり、ソフトウェアのエラーを修正したりするだけのことではありません。SOTAは、必要な機能の維持や、全く新しい機能を車のオーナーに提供することにも使えます。たとえば、メーカーから最新のカーナビ地図を配信することも可能です。

スマートメーター/スマート暖房

あまり目立たないユースケースとして、サービスとしてのソフトウェア更新があり、これは全く新しいビジネスモデルを作り出す機会となります。ソフトウェアベンダーやサービスプロバイダであれば、顧客向けのサービスソリューションとしての更新を開発することができます。クラウド上の再利用可能なサービス(たとえば  ボッシュIoT ロールアウト(英語))を利用し、顧客にとって最適な注文仕立てのコンポーネントを提供することで価値を生み出すことができます。

スケーラブルなソフトウェアプロビジョニングが不可欠

これまでに述べたユースケースは、IoTの世界に無線によるソフトウェア更新を適用したときの単なる一例に過ぎません。ここで述べたもの以外にも、たとえばコネクテッドビルディングやヘルスケアセクターなど、多くの分野でSOTAが役立ちます。

無線によるソフトウェア更新の考え方は、理論的には筋が通っているように見えますが、実際に実現するのは困難な場合があります。最新状態に維持すべきソフトウェアアプリケーションがほんの数点であれば簡単なことに見えるかもしれませんが、フィールドに展開されているIoTデバイスが何10億個もある場合、どのような方法ならソフトウェア更新が可能でしょうか。そのような場合は、 あらゆる種類のIoTアプリケーションで使用可能な、 キャンペーンマネジメント機能を持つ スケーラブルソフトウェアプロビジョニングサービスの(英語)利用が不可避です。

その他、無線でのソフトウェア更新について