第11回八子クラウド座談会に向けBaaSを調べてみる

9月13日(金)

最近IT関連で全く奮闘できていなかったので、ちょっと気合いを入れようと思います。

奮闘の舞台は9月14日(土)に開催される、
第11回八子クラウド座談会「最新動向!BaaSとはなんぞや??」
です。
http://www.zusaar.com/event/1020003

デロイトの八子さんを筆頭に、クラウドの最新動向について各企業のレクチャーや議論を通じ見識を深め、新たにビジネスまで生み出してしまおうという会です。

毎回参加させていただいているのですが、今回はいつも以上についていくのが難しそうです。

今までのテーマはSaaSだったり、モバイル×クラウドだったり、相当身近でイメージも湧きやすいものでしたが、今回はBaaS。

スクリーンショット 2014-02-06 22.26.51

Amazonでググっても単独で扱っている書籍は出てきません笑

そういうわけで、可能な限りまとめてみることにしました。

●BaaSを調べる

大体以下の内容を調べることにしました。

・概念
誰が、いつ(時期)、どこで(最初に登場したカンファレンス等)、なぜ(出自、問題意識)、どういう風に、発表した?
・BaaSの仕組み、該当するレイヤー
他のaaSと比較できたらなおよし
・事例
・BaaSを用いるメリット、デメリット
・ニュース、最新記事
・展望、課題
・論点

●BaaSとは?

ではまずBaaSとはなんでしょう?公式に定義され、一般化されているとは思えないので、色々見ててわかりやすくまとまってるところから引用します。

BaaSとは一般に、モバイルアプリケーションのバックエンドとして求められるデータストア機能、プッシュ通信機能、ユーザー管理機能、ソーシャルとの連係、ロケーションとの連係などを備え、それらの機能をモバイルアプリケーションからAPIで呼び出すことで、サーバ側のコードを書くことなく、クラウドと連動するモバイルアプリケーションを効率よく開発できる環境を提供するものです。

だそうです。Publickey Enterprise IT × Cloud Computing × Mobile Technology Publickey Enterprise IT × Cloud Computing × Mobile Technology より。

これ単独で見ると意味不明だったのですが、色んな記事や、as a Serviceとして提供される他のレイヤーと比較することで少し理解が進んだように思います。

BaaSとはBackend as a Serviceの略で、文字通り「バックエンド」をサービスとして提供するもの。

2011年頃からBaaSをSDKやAPIの形で提供するスタートアップが登場し、2012年にBaaSという概念・用語としてよく見られるようになってきたようです。

Wikipediaより。(ごめんなさい笑 日本語版はなさそうです)

Googleの誰々が何とかカンファレンスで初めて使用!みたいなのはなさそうです。

今年2月、BaaSで知られていたCocoafishがTitanium Mobileを提供するAppceleratorが買収したり、今年4月FacebookがBaaS大手のParse.comを買収したことでBaaSが話題になったりしたと。(ノーマーク)

どうしてこんなサービスが出て来たかというと、ソーシャルゲーム等モバイルがすごいたくさん作られるようになった昨今。

モバイルデバイスを開発をするには、ユーザとやりとりするデバイスよりのアプリ(フロント)だけでなく、ユーザの情報管理、認証等を行うサーバサイド(バックエンド)の構築が不可欠。

そこで、どのアプリでも大体似たような機能が必要なバックエンドをまとめて提供しよう。それによってユーザビリィの向上、機能追加や仕様変更が頻繁な発生に集中でき、低コストで対応できるように…というのがBaaSの出自のようです。(ざっくり)

2012年の市場規模が216億円だったのが2017年には7700億円になるそうですすごーい。
http://www.marketsandmarkets.com/PressReleases/baas.asp

PaaS越え…?
http://www.gartner.com/newsroom/id/2242415

●BaaSの仕組み

仕組みとかわかんねぇwwwというのが正直なところですが、わかりやすく説明しているサイトがあったので、引っ張って来ます。

com1.png
(出典:http://www.appiaries.com/jp/baas/index.htmlより)

SaaSみたいに特定のアプリはくっついてなくて、PaaSにモバイルアプリ用の共通機能(図中のPROGRAM)がついたものという感じですね。

図上で比べるとややわかりやすいです。

特徴の比較も同サイトに載っていたので、見てみましょう。

com2.png
(出典:http://www.appiaries.com/jp/baas/index.htmlより)

あくまでBaaSの一製品の紹介ページからの引用なのでそこは注意が必要ですが、PaaS、SaaSとの比較の上でスケールアップ、スケールアウト、サーバプログラム開発コスト、カスタマイズ性で比較といったところでしょうか。

おそらく、開発するにあたり利用、という形になると思うので、SaaSは利用シーンによってはもはや比較の対象ではなく、PROGRAM部分にどの程度の独自性が要求されるか、独自性がいらないなら自社開発とサービス利用とどちらが得かでで使い分けるという感じだと思います。

●事例

これこそ勉強会で!という感じですが、具体的な製品を見た方がよりイメージがわきやすいと思うので、いくらか見ておこうと思います。

基本的に上記のレイヤーまでの機能を提供するという点は変わらないと思うので、具体的にどのような機能が含まれるのかざっと挙げていきます。

●appiaries
ピーシーフェーズ
・PUSH通知機能
・データベース機能
・ロケーション機能
・ファイル機能
・ユーザ登録、認証/管理機能
・アクセス制御機能

●Kii Cloud
Kii
・プッシュ配信管理
・ユーア認証
・データ管理
・ファイルストレージ
・アクセスログ解析
※100万APIコール、1GBストレージまで無料

●Sentional cloud
SafeNET
オンプレ、SaaS環境向けに以下のサービスを提供
・ソフトウェアライセンスの発行・管理
・ユーザー情報の管理
・利用状況の把握
・分析
※課金や帳票サービス等、外部サービスと連携予定

●ModuleApps
ロケーションバリュー
販促用アプリの構築支援
・SNS連携
・リクエスト
・ポイント
・問い合わせ
・スタンプ
・会員管理
・クーポン
・ブラウザ
・電子チラシ
・バーコード
・店舗情報
・プッシュ
・お知らせ
・お気に入り
・アプリ内広告
・経路検索
・店舗検索
・メニュー

●SPIRAL
パイプドビッツ
・会員情報等のDB機能
・ログイン認証機能
・ソーシャル連携
・ファイルストレージ
・ロケーション
・プッシュ通知、メール配信
・キャッシュ機能
・分析機能
・スケジュール実行
・API開発

●Titanium cloud services
appcelerator
・ユーザ管理
・ストレージ
・ロケーション
・ソーシャル連携
・データ収集、分析
・プッシュ通知
・チェックイン
・ユーザ状況更新
・チャット
・ユーザ認証

●Parse Cloud
Parse.com
・プッシュ通知
・ストレージ
・ソーシャル連携
・データ分析
・コード生成

多機能のものから用途をある程度限定するものまで様々ですね。

やたらめったら機能が充実していることが重要なのではなくて、アプリ開発において重視する機能が他より優れていたり、取捨選択できるよう機能がそれぞれ独立していたり、提供される機能がいかに個別のアプリに寄り添うことができるかが大事なのでしょうね。

他にもたくさん!

●メリット・デメリット

上記のまとめ+想像ですね。

●メリット
・アプリ開発に集中できる
サーバ側の設計、構築、運用の時間、お金、設備、人等リソース
・開発速度が上がる
・コストダウン

●デメリット
・SaaSに比べて更にコントロールできない部分が増える
トラブル対応速度、故障箇所の切り分け
・BaaSベンダをまたがるサービスを構築し辛い?
そもそも組み合わせられるかわからないし、できたとしても管理が煩雑?というかBaaSのよさが失われる?
・認証の脆弱性
トークンリプレースという仕組みに問題あり?
・サーバサイドのエンジニアが育たない?

ひよっこ営業の想像はこの域でした…

●ニュース

FacebookのParse買収が目立ちますね。というかBaaSで検索してみると大体その記事です。
http://www.publickey1.jp/blog/13/baasparsefacebook.html

開発環境の提供を行い、アプリ開発のプラットフォームになりたいFacebookとしては、モバイルアプリの開発の活性化に加わりたく、その流れで広告配信強化が狙いなんでしょうか。

汎用的なインフラ提供サービスを早期に押さえ、開発者やそのユーザを囲み込むという点でBaaSレイヤーはPaaSレイヤーと同等の役割を果たすはずですね。

あとは案の定MSやGoogleもBaaS提供に相次いで参入しており、今後さらにプラットフォーマーとしての競争は激化しそうです。
http://itpro.nikkeibp.co.jp/article/Active/20130904/502211/

●展望、課題

そんな大きなことは書けませんね笑

ただ、興味としては「エンタープライズ」向けのソフト開発にどうやって食い込んでいけるかは見物です。

クラウド(IaaS)ですらセキュリティやコスト(間にベンダが入るからノウハウが過渡期な段階での設計、構築、運用はかえって高コスト)等で意思決定上踏み切れずクラウドだオンプレだやっぱりその間だと言っている、またモバイルデバイス自体の活用がそもそも進まない中で、コンシューマ向けのアプリとの溝は開く一方なのが現状ですよね。

個人的には地道に活用事例が増えたり、果敢に導入に挑み大々的に取り上げられるのを待つ、という立場に甘んじてしまうような気がします。

大きく話すと実の無い感じになってしまいますが、課題はBaaSの周辺の事情の前に個々のデメリットの克服、上で挙げたデメリットもその一部と思います。

なので、まずはそれを考えられたらと。

勉強会で深めていけたらと思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です