Autodesk University Japan 2016 にご来場いただいた皆様、誠にありがとうございました。
Forge トラックの E-4 セッションでは、Autodesk Forge Platform を利用した Web サービスの仕組みについて、実際に開発したサンプルをご覧いただきながら説明いたしました。
AU Japan 2016:Forge トラック BIM プロジェクトを Forge で拡張する ~Web サービス開発の概要
http://adndevblog.typepad.com/technology_perspective/2016/08/au-japan-2016-e-4-session.html
今回は、E-4 セッションのサマリをレポート致します。
Autodesk Forge Platform を利用した Webサービス開発
Autodesk Forge Platform は、Autodesk のクラウド サービスを構成するさまざまな機能を、API というかたちで公開し、再利用するための開発プラットフォームです。
Autodesk のクラウド サービスが基盤としている要素技術を、自社の独自技術や、外部データベース、外部サービスと組み合わせることで、新規に Web サービスを開発したり、自社システムに統合することができます。
現在リリースされている要素技術(API)
Autodesk Forge Platform API の概要については、下記のブログ記事にまとめられております。
Autodesk Forge Platform API(2016年9月時点)
http://adndevblog.typepad.com/technology_perspective/2016/09/autodesk-forge-overview.html
マイクロサービス・アーキテクチャと RESTful Web API
Autodesk Forge Platform は、マイクロサービス・アーキテクチャに基づいて設計されております。マイクロサービス・アーキテクチャとは、巨大で複雑な一塊のシステムを、ビジネス機能に沿って複数の小さい「マイクロサービス」に分割し、それらを連携させるアーキテクチャにすることで、迅速なデプロイ、優れた回復性やスケーラビリティといった利点を実現しようとするものです。(※1)
マイクロサービスが他のマイクロサービスと連携する代表的な方法は、RESTful Web API です。URI にアクセスすると XML や JSON などのデータが返ってくるシンプルなタイプ――XML over HTTP 方式や JSON over HTTP 方式――の API です。(※2)
勿論、 Froge の API だけを組み合わせても Web サービスを開発することができますが、インターネット上では、様々な Web サービスが Web API を公開しており、オープンソース ソフトウェア(OSS)も急速に普及しております。
Web サービスの目的に応じて、Forge の API だけではなく、これら Web API や OSS、自社の独自技術などを組み合わせることで、最適なサービスを構築することができます。
Web API(代表的なもの)
- Microsoft Office 365, Microsoft Azure, Microsoft SharePoint
- Google Maps API, Google Calendar API, Google Charts, Google Translate API
- IBM Watson API
- Yahoo! Open Local Platform
- 日本気象協会 天気予報 API
- 国土地理院 標高 API
- ゼンリン いつもNAVI API
オープンソース
- 各種 Web サーバ
- 各種 Web アプリケーション フレームワーク
- 各種 データベース
- 各種 ライブラリ
Autodesk Forge を利用した IoT インテグレーション サンプル デモ
E-4 セッションでは、BIM プロジェクトでの利用を想定した Web サービス開発のサンプルとして、「現場作業環境チェックサービス」をご覧頂きました。
この Web サービスは、主に2つの機能を実装しています。
- 複数の専門工事業者が現場で作業を行う際に、仕上げ・設備工事を実施する部屋ごとに、 お互いに現在の作業の進捗状況を確認する。
- 温室度や照度、あるいは設備機器の稼働状況など、リアルタイムのセンシングデータから、現場作業に適している環境か判断する。
Autodesk Forge Platform の API と、プロトタイピング用マイコンボード(Raspberry Pi 3)、各種センサ、 IoT 関連のオープンソース ライブラリを活用して、それらを組み合わせた Web サービスです。
Autodesk は、IoT プラットフォームとして Fusion Connect をリリースしておりますが、Forge で この API をサポートするかは、まだ検討中です。そのため、このサンプルでは、リアルタイム通信を実現するために外部の Web サービス「Pusher」や、マイコンボードからデータを送信するために「Node.js」、各種センサと通信するためにオープンソースライブラリを利用しています。
※1: マイクロサービスアーキテクチャ, オライリー・ジャパン
※2: Web API: The Good Parts, オライリー・ジャパン
By Ryuji Ogasawara

Leave a Reply