検索
特集

モバイルアプリ短期開発「mBaaS」に注目IT導入完全ガイド(3/5 ページ)

mBaaSの位置付けや基本機能を解説。技術者不足、コスト超過、リリースタイミングのズレなど品質を保ちオンスケジュールにコスト最適化を実現するには?

PC用表示 関連情報
Share
Tweet
LINE
Hatena

「mBaaS」でできることとは? 機能を徹底解説

 さて、mBaaSが担当するバックエンド領域とは具体的に何だろう。サーバ側プログラムでは、理論的にはどんな機能でも作りこむことができるが、その最大公約数的な機能、つまりどんなアプリにも共通するような汎用機能をmBaaSは提供している。主に次のような6つの機能である。

ユーザー管理機能、SNSアカウント連携機能

 アプリのユーザーを認証し、関連するメールアドレスなどの付帯情報や個人別プロファイルなどをまとめて管理する機能。アプリにサインアップ画面を追加したり、SNS(FacebookやTwitter)のアカウントによる認証を行ったり、中にはSMSを使って電話番号やメールアドレスを本人に確認するような機能もある(別料金の場合あり)。

 アカウント情報やプロファイル情報などの変更やリセット、特定ユーザーのブロック、ユーザーグループを作成しグループ別に機能制限したりデータ共有したり、グループ内だけの通知機能をもたせたりすることができる。もちろん提供企業側ではWebブラウザや専用管理画面から閲覧や編集/設定が可能で、データのエキスポートにも対応している。

事例

 図3のような会員向けのクーポン発行などはユーザー管理機能を役立てた典型的なサービス例だ。工夫次第で各種のO2O施策を簡単に実施できる。

会員向けアプリのクーポン発行画面例
図3 会員向けアプリのクーポン発行画面例(出典:アピアリーズ)

 なお、SNSアカウントでログインできるようにするのはユーザーのアプリ利用のハードルを下げるために有効だ。FacebookとTwitterはほとんどのmBaaSで認証連携可能になっている。また図4のようにOAuthやOpenID Connectに対応するとともに、社内のActive DirectoryなどLDAPサーバとの連携が可能なサービスもある。

ユーザー管理機能の例
図4 ユーザー管理機能の例(出典:Kii)

データストア機能

 アプリで使うデータを保管するDB機能。多くのmBaaSがmongoDBなどのキーバリューストア型のNoSQL DBを利用している。フォーマットが自由なJSON(JavaScript Object Notation)オブジェクトなどを格納し、RDBのようなDB設計や改変に伴う負荷が発生しにくく、柔軟に利用できるのが特徴だ。自動バックアップ機能、またデータの自動変換機能を備える場合もある。

 一方、分散型DB前提なのでトランザクション処理に必要な排他的ロックが可能かどうかに不安もあろう。これにはオブジェクト更新時にmBaaS上のオブジェクトが前回クライアントにダウンロードした状態から更新されている場合にエラーにする「楽観的ロック」機能により、複数端末から同時更新操作が行われてもデータの一貫性を損なわないようにすることで対応できよう。

コラム:IoTにも対応したデータストア領域の分割、独立

 mBaaSでは、スマートフォンなどの情報端末のアプリからのデータ以外に、ウェアラブルデバイスのデータを情報端末に取り込み、サーバ側に渡すこともできる。またLED調光デバイスなど情報家電のような「モノ」のデータを直接取り扱うこと(IoT)も可能だ。ベンダーの中には「ユーザーごと」「デバイスごと」にデータストア領域(スコープともいう)を独立させている場合がある。アクセス権設定をシンプルにし、かつ、万一あるデータストア領域がクラックされても他の領域に影響しないセキュリティが確保できる。

ユーザーと「モノ」のデータストア領域を分割、独立して運用
図5 ユーザーと「モノ」のデータストア領域を分割、独立して運用(出典:Kii)

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る