[付録] 都市OSって何?
内閣府によると、都市OSについては以下の説明があります。
スマートシティ実現のために、スマートシティを実現しようとする地域が共通的に活用する機能が集約され、スマートシティで導入する様々な分野のサービスの導入を容易にさせることを実現するITシステムの総称。スマートシティの運営やスマートシティサービスに求められる、代表的な3つの特徴「①相互運用(つながる)、②データ流通(ながれる)、③拡張容易(機能を広げられる)」を実現するために有効となる基本的開発環境及び運用環境を提供する
この説明はスマートシティリファレンスアーキテクチャから持ってきていると思いますが、ちょっと分かりにくいですよね。そこで、大胆に単純化して説明します。
現在でも街歩きの時には地図アプリを利用できますし、レストランなどの飲食店に行くときもナビアプリを使って探したりします。更に、自治体の情報もスマホで得られますし住民が発する情報もSNSなどで得られます。ただ、これらのアプリは別々なデータを基盤に別々な会社が提供している状況です。これではGAFA等のお金がある巨大企業が有利であり、結果的に住民や来街者が欲しいサービスや情報を得る事が出来ませんし、民主的であるとも言えません。そこで、色々なアプリで共通する処理を共通モジュールとして実装したり、アプリ間の連携を容易にしたり、自治体・地元の商業組合・観光組合などが有するデータを多くのアプリに提供したり、街角にあるセンサから得られる情報をアプリに提供したりできる「仕組み」を提供すると、地元のソフトハウスや住民含めてアプリを提供できますし、アプリだけでなくそれらの情報を店舗経営やサービスに利用できます。この様な仕組みが都市OSです
都市OSには内閣府の資料にある様にみっつの「特徴」があります。機能ではなく特徴である事に留意してください。
①繋がる
実質的にこれはOpenAPIと呼ばれるインタフェースが実装されている事を指しています。OpenAPIを意識したことは余りないかもしれませんが、例えばPCやスマホからクラウドにアクセスするときにはこのインタフェースを使ってクラウドにアクセスしている事が多いです。このインタフェースが利用者に見える場面は限られていますが、Microsoft EdgeやGoogleChromeなどのWebを見るソフトでURLを指定する時に”https://abc.def.co.jp/”などと書きますが、これがインタフェースの一部であるURLが見えている状態です。このインタフェースの特徴はインタネット上の通信を行える事と、通信する相手をURLで指定できる事です。つまり、URLを指定するだけで世界中の相手とデータのやりとりができる事を示しています。
②データ流通
Webを見るソフトではURLを指定する相手はWebサイトです。Webサイトにはコンテンツがあり、そのコンテンツを参照する事になります。これに対し、都市OSの場合は全てのデータを都市OS上に保有している訳ではなく、データを実際に保有しているシステムとの間を仲立ちするだけの場合もあります。この仲立ちする機能を技術用語ではブローカーと呼びます。このブローカーを実装している事が「データ流通」となります。実際にはブローカーを支える色々な機能があるのですが、理解としてはブローカーが実装されていると理解すれば良いと思います。
③拡張容易
都市OSには前記のブローカー以外に色々な機能が実装されます。例えば、データ形式を変換する機能、データを蓄積する機能、色々な業務で共通して使われる部品群などです。かなり技術的な資料ですが、興味があればスマートシティリファレンスアーキテクチャをご覧ください。但し、全ての機能を予め盛り込んだ都市OSと言うものは無く、実装後にも機能を追加していく必要があります。この機能を追加していく拡張と、データが増えた時の容量の拡張と、処理が多くなってきた時の処理能力の拡張などが容易にできる事が必要です。
[付録] 都市OSとエリア・データ連携基盤
都市OSという言葉は以前はかなり頻繁に使われていましたが、近頃は代わりにエリア・データ連携基盤という言葉を使う場合も多い様に思います。都市OSとエリア・データ連携基盤は同じものだと理解して構わないと思いますが、厳密には次の点で異なります。
都市OSは各種アプリケーションの共通部分は都市OSの一部であると分類しているのですが、エリア・データ連携基盤では共通部分の内先進的な部分はアプリケーションの一部であると分類しています。しかし、よく考えると先進的な機能も数年経ては陳腐化しますし、だいたい何をもって先進的と言うのかもよくわかりません。従って、実質的には同じものだと言って構わないと考えています。
[付録] 5種類のデータ連携基盤
データ連携基盤と言う用語がアチコチで使われていますが、その類型には5種類ぐらいありそうです。データ連携に関係する会合やイベントなどでデータ連携基盤と言う用語を皆さんお使いになりますが、よく聞いていると全く別のものをイメージして発言されている事も多い様です。そこで、ここではぞれぞれの意味するところを分類してみましょう。
- データの相対取引の基盤
最も単純な形態として、特定のデータ提供者と特定のデータ受領者との間のデータ転送を行うための基盤です。単純な例では通信経路上にファイルサーバを設置しただけでも良いかもしれません。但し、セキュリティー・信頼性・運用などの考慮は必要であり、そのために「基盤」という用語を使っているのかと思います。 - 紙とFaxをシステム化したデータ連携基盤
紙とFaxにより情報伝達は、情報量やスピードの観点で問題があります。また、多段階の情報伝達(例えば民間→基礎自治体→都道府県→政府など)では、段階の間の情報処理は人手で行われるので、自ずと信頼性も低いものになってしまいます。また、多くの組織が参加し居るデータ連携では人的作業だけでも膨大になります。そこでこれをシステム化する事で、情報量とスピードを改善します。また、人手による情報処理をシステムやツールにより支援する事で、データの信頼性も向上します。但し、BPRを伴わなずOnce onlyの考え方も適用されない場合が多いので、本質的な改善には繋がりません。 - データの市場としてのデータ連携基盤
データをデータセットという塊りでやりとりする基盤です。データセットとは元々はメインフレームの世界で今でいうファイルの事を指していました。つまり、データの入れ物の事です。従って、この種のデータ連携基盤には、オープンデータの基盤なども含まれます。また、データの所在や内容などを公開する「カタログ」の機能も含まれることがあります。このデータ連携はデータの流れが一方向なのが一般的です。 - システム間をつなぐデータ連携基盤
DSAが開発しているDATA-EXの様に企業や団体のシステムを繋ぐ仕組みです。例えば、サプライチェーンを構成する企業を繋ぐことで、サプライチェーン上に内在する流通在庫を減らしたり、物品が流れるスピードを向上するなどの効果が得られます。既存のシステムを繋ぐのですから、データ仕様を変換する仕組みが備わっている事が一般的です。但し、データの変換にはデータが前提としているコンテキストがある程度一致している事が必要なので、データ連携基盤があればシステムは簡単に繋げられるというものでもありません。この形態は古くからあり、例えば金融機関同士をつなぐ全銀システムなどがあります。 - データブローカーとしてのデータ連携基盤
エリア・データ連携基盤や都市OSと呼ばれるデータ連携基盤がこの仲間です。このデータ連携基盤は個々のデータをバラバラにリアルタイムに扱う事に長けていて、あるデータが更新されたら通知する機能やデータを欲しいときにセンサの値を取り出してデータに入れ込んで渡すなどの機能も備えている事があります。また、このデータ連携基盤はインタネット技術に立脚している事が多く、OpenAPIなども備えている事があります。End-to-endのデジタル化やIoTの基盤となります
データ仕様の共通化はこの5種類の上から下に向かうにしたがって必要性が増します。2番は所詮人間が介在するので、仕様に多少の乖離があっても、例えば電話で確認するなどの方法により差を埋める事が出来ます。3番は、データ仕様が全く異なってもデータのやり取りは出来ますが、受け取った側が苦労するので、やはり仕様は共通化されている方が良いでしょう。4番はデータ連携基盤に繋がるシステムは予め特定できるので、変換プログラムをそれぞれ作る事によりどうにかなるかもしれません。5番は不特定多数の参加者があり得るので、共通化(+公開)はかなり重要になります。