著者
Ivar Jacobson, Ian Spence, Pan-Wei Ng
出典
acmqueue Volume 15, issue 3, July 11, 2017 (Is There a Single Method for the Internet of Things? - ACM Queue)
所感
- Essence本で紹介されてたのでEssenceのIoT適用事例が見れると思って読んだら全然違った
- 結局Essnceが有効だった本番レベルの事例はどこで見れるんだ…リアルへの適用可能性が全然わからん
メモ
IoT向けの開発プラクティスは以下が既存
- Ignite
- Project Dimensions: IoTオプションを比較してプロジェクトを自己評価・テクノロジ選択する情報を提供
- Asset-Integration Architecture: PDのあと,デバイス/GW/サービス利用のプラクティスや接続パターンを提供
- IoT Methodology
- リーン,デザイン思考ベースのプロセス提供
- IoT Canvas: リーンキャンバスのIoT版
- IoT OSIリファレンスアーキテクチャ: OSI参照モデル的なもののIoT版,5層(endpoint, connectivity, middleware, IoT services, application),ステークホルダとソリューション構造議論時に使う
- Ignite
これらは既存の汎用的なプラクティスにIoT特化のプラクティスを組み込んだものだが,その一部を切り出して再利用できるような形になっていない=モノリシックになっているのが課題
新しいIoT向けプラクティスが扱うべき特性
- 一般的なシステム以上に分散システムなので,通信問題に対応するための故障モード,信頼性対策,冗長化方式開発が必要
- モバイルシステムの特性があるので,graceful degradationやセキュリティ,堅牢性への対策が必要
- 人の介入なく継続稼働させること,そのための障害管理,fail over,例外管理など
IoT開発向けには,下記の緑のプラクティスを使いたい(例えば高頻度な変更を見越してユースケースベースでスクラムしたい)が,世の中のプラクティスは再利用可能なようになっていない
- 必要なのは,プラクティスを定義するための共通語彙と,プラクティスを組み合わせて開発手法を作り,その効果を分析するためのフレームワーク→OMGでEssence1という共通基盤を標準化している
- 手法=プラクティスの組み合わせ,のイメージは以下
- 共通的に参照できるプラクティスのライブラリ(上部)があって,各チームで開発に合わせたプラクティスを組み合わせて手法を構築して使ってる(下部)
- この辺はEssenceを理解しないとどうやったらこんなの実現できるんだよ状態だと思う
- IgniteをEssenceで表現した例