「MEAP」導入せずしてBYODすることなかれ

この記事をtweetする このエントリーをはてなブックマークに追加

製品の基礎から選び方までをサポート! IT導入完全ガイド

「MEAP」導入せずしてBYODすることなかれ

2013/12/16


 スマートフォンやタブレットの本格的な業務適用を進めたいが、各種OSが混在するなかで業務アプリケーション(以下、アプリ)をどう作成し運用していけばよいのか、開発と管理の方法に悩む企業は少なくない。明暗を分けるポイントは、自社固有の強みを発揮できる業務アプリをスマートデバイスでPC以上に利便性高く利用できるかどうかだが、ここで役立つものとして注目されているのがMEAP(Mobile Enterprise Application Platform)だ。今回は、これまでのPC中心に作られた開発/運用基盤の限界を超えるアプリ短期構築とマルチデバイス対応を可能にするこの新しいプラットフォームの役割と導入意義、さらに選ぶ際のポイントについて考えてみたい。

MEAP

※「MEAP/「MEAP」導入せずしてBYODすることなかれ」の記事を一部ご紹介します。会員登録を行い、 ログインすると、「MEAP/「MEAP」導入せずしてBYODすることなかれ」の記事全文がお読みいただけます。

会員登録はこちら(無料)



1
1-1

MEAPの基本的な機能と役割

 MEAPとは各種スマートデバイス用のアプリ開発から運用管理、改修、バージョンアップといったアプリのライフサイクル全般にわたるコストを低減する基盤となるツール(プラットフォーム)のこと。明確な定義はないが、製品に共通する大きな特長は次の4点だ。

OSの異なる複数デバイス用のアプリが、1回の開発作業で開発できる。

必ずしもスマートデバイスのネイティブな開発言語を利用しなくてもよい。

新アプリのデプロイ、アプリ改修時の変更適用を簡単に行うことができる。

既存社内システム(データベースや基幹系パッケージアプリなど)との連携機能がある。

 これらを可能にするMEAPの仕組みは各ベンダそれぞれに異なるが、基本的なイメージとしては図1のように理解しておけばよいだろう。

図1 MEAPツールの基本的な仕組みのイメージ
図1 MEAPツールの基本的な仕組みのイメージ
資料提供:NCデザイン&コンサルティング

 基本的な業務ロジックあるいは社内の既存システムとの接続・連携機能はサーバ側アプリに組み込み、モバイルデバイス側ではデバイスの独自機能を利用できるよう、各種デバイスの差異を吸収するネイティブ実行環境を備えて、画面制御やデバイス側で必要になる処理を行う。
 ネイティブ実行環境としてはMEAP製品独自のものが提供されることになる。デバイス固有の機能差の吸収のためには、「PhoneGap」とも呼ばれるオープンソースの「Cordova」というモバイルアプリ開発用フレームワークをベースにしている製品が多い。Cordovaをベンダ独自に拡張したうえで組み込んでいるものもある(現在PhoneGapはAdobe社製品の商標)。
 開発者は、大まかに言えば業務ロジックとユーザインターフェースだけを開発すればよく、アクセス認証やデバイスとサーバとのデータ同期などのアプリ共通の基本的な機能はMEAPツールが備えているものを利用することになる。

■MEAPがカバーするモバイルアプリ開発ライフサイクル

 MEAP製品は単独またはスイート化した複数ツールで開発環境と、デバイスへの配布やデプロイ、あるいはソースコード管理などのアプリ運用管理機能とを備えているのが基本で、加えて認証やユーザ管理機能、ログ管理機能、プッシュ通信機能、さらにテスト環境(各デバイスのシミュレータ)や各種RDBやERP、CRMツールなどとの連携機能も提供されている。
 MEAPツールがカバーする領域ベンダによって異なっており、アプリのライフサイクル(図2)のほとんどの部分を任せることができる製品もあれば、機能を絞り低価格化を図ったり、一部にサーバ側の機能をサービスとして提供する(BaaS)製品もある。MEAPベンダ自体のMEAPに対する考え方が様々なので、MEAPの機能領域を特定することは難しい。

図2 IBMのMEAPがカバーするモバイルアプリ開発ライフサイクル
図2 IBMのMEAPがカバーするモバイルアプリ開発ライフサイクル
資料提供:日本アイ・ビー・エム
■開発できるアプリのタイプは?

 MEAPはサーバ側の開発とデバイス側アプリの開発の両方が可能な開発環境を備えている。デバイス側アプリの開発手法としては、図3に見るような4種類に大別できる。

図3 MEAPで開発できるアプリケーションタイプ
図3 MEAPで開発できるアプリケーションタイプ
資料提供:日本アイ・ビー・エム

■開発が容易な「Webアプリ」
 左端の「Webアプリ」はデバイス標準のブラウザで会社のWebアプリを利用する方法で、従来からのモバイルPCからWebシステム利用と本質的には変わらない。基本がWeb技術なので従来どおりサーバ側開発だけで済み、画面の調整だけができればよいことになるため低コストで迅速な開発には向いている。しかし一般的にはWebシステムであることによる制約、標準ブラウザの機能的制約があるため、モバイルデバイスの利便性が十分生かせないこともある。

■デバイスに最適な機能性を実現する「ネイティブアプリ」
 図3の右端の「ネイティブアプリ」はOSベンダが提供するSDKで専用に開発したアプリのことだ。これはOSに最適な開発言語(iOSならObjective-C、AndroidならJava)を利用し、各デバイスの性能・機能を最も適切に生かしたアプリを作ることができる。しかし特にiOSの場合は開発技術者が比較的少なく、技術習得に時間がかかる。またアプリ開発後にAppleの審査があるため1〜2週間の待ち時間が必要になり、アプリ改修のたびにデプロイまでに相当期間を要するのが難点だ。また複数OSのデバイスを利用する場合には改修時にもそれぞれのアプリを作成し、個別に配布してデプロイする必要があるため、開発効率と迅速なサービス投入にも問題がある。なお、OSベンダが提供するSDKを使わずともネイティブアプリが実装可能なMEAP製品もある。

■一般的なMEAPが持つ機能からさらに踏み込んだ「ハイブリッドアプリ」
 図3中央の2例がハイブリッドアプリだ。デバイス内にMEAP実行環境(ランタイムライブラリ)を持つコンテナを作り、その中にアプリの本体と言えるプログラムを入れ込む。コンテナが認証やデータ・アクセス制御、デバイス固有のAPI利用などの機能を持つので、中に入るプログラムは業務ロジックと操作性に関する機能があればよく、アプリの改修の際にはその部分だけを改修したものをサーバ側に用意すれば、デバイスがその旨の通知を受けて自動または手動でダウンロードしてコンテナ内に収め、アップデートが完了できる。配布とデプロイの手間がなく、アプリのメンテナンスの大部分がサーバ側の仕事にできるので、ネイティブアプリに較べて運用管理負荷が大きく低減可能だ。このあたりは、一般的なMEAPが持つ機能ではないものの、製品によってはここまで踏み込んだ機能が提供されている。

 またWebアプリとは違い、各OSのユーザインターフェースの違いに合わせ、他のアプリと操作において違和感がないようにできるのが大きな利点だ。同じ機能を使う場合でも、OSが違うと標準的な操作性がずいぶん違う。図4に各種OSのデバイスでの画面の違い、操作性の違いを示すが、このような違いに合わせてデバイス個別にアプリ開発するのは容易でないことがひと目でわかる。この部分だけでもデバイスの差異をほとんど考慮しなくてよいMEAPツールの利便性が理解できよう。

図4 各種モバイルデバイスの画面の違いの例
図4 各種モバイルデバイスの画面の違いの例
資料提供:サンフューチャー

 なお、上掲の図3ではコンテナの中味にあたる部分がHTML5のコードでできている場合を「ハイブリッド(Web)」アプリ、HTML5に加えてネイティブ開発用のコードも使用した場合を「ハイブリッド(Mixed)」アプリとしている。MEAP製品によっては、HTML5ではなくJava Scriptだけを利用したり、Web標準言語ではなく(しかし類似する部分が多く習得容易な)独自言語によるコードを利用したりするものがある。
 この仕組みはRIA(Rich Internet Applications)開発ツールの考え方とよく似ているとピンと来た方も多いと思う。実際、独自言語で開発する古くからのRIAツールの一部は、スマートデバイス対応機能を追加して現在ではPCと他のモバイルデバイスの全部をカバーするMEAPツールとして活用できるよう進化したものがある。その仕組みのイメージ例を図5に示す。サーバ側とデバイス側に対応する実行環境があり、アプリの本体となる機能とデータ(ここではアプリケーションメタデータと呼んでいる)を、この場合はXMLでやり取りしている。

図5 進化したRIA開発ツールとしてのMEAPのイメージ
図5 進化したRIA開発ツールとしてのMEAPのイメージ
資料提供:マジックソフトウェア・ジャパン

…この記事の続きは、会員限定です。  会員登録はこちら(無料)

続きを読むには…
会員登録いただくと自動的にこの記事に戻り、続きが読めます。

会員登録(無料)・ログイン

このページの先頭へ

MEAP/「MEAP」導入せずしてBYODすることなかれ」関連の情報を、チョイスしてお届けします

※キーマンズネット内の「MEAP」関連情報をランダムに表示しています。

MEAP」関連の特集


スマートフォン普及に合わせて自社で活用したいと考えるものの、人材もいないしノウハウもない…と悩んでい…



既にオフィスでおなじみの複合機。でもその機能を使いこなすか否かで業務効率も雲泥の差が!注目の最新機能…



ROIの最大化や顧客満足度の向上、業務改善など、多くのビジネス効果が期待できるモバイル活用。今回はそ…


「開発環境/BaaS」関連の製品

Ethereumも自在に展開、Azure活用で迅速なブロックチェーン開発 【日本マイクロソフト】 クラウド開発基盤 Web Aviator(PaaS) 【キヤノンITソリューションズ】 Visual Studio用開発支援ツール ComponentOne Studio 【グレープシティ】
開発環境/BaaS 開発環境/BaaS 開発環境/BaaS
Azureでブロックチェーン開発、スマートコントラクト基盤も迅速・低コスト展開 クラウドやオンプレミスで稼働させるWebアプリケーションの開発、検証、本稼働を迅速に行えるクラウド開発基盤。クラウド&標準技術&GUIツールでスピード開発を実現。 Visual Studioで利用する複数のコンポーネントを搭載、多様なプラットフォームで利用可能なオールインワン開発支援ツール。
年3回の機能更新で、常に最新の開発環境を提供。

「開発環境/BaaS」関連の特集


「mBaaSって何?」という方は必見。IaaS/PaaS/SaaSでもない、mBaaSの位置づけや基…



企業におけるモバイル活用は業務改善・革新につながる多くの可能性を持つ一方、開発成功例は多くない。成否…



クラウドの一領域に加わった「BaaS」について紹介。SaaSともIaaSとも違うこのサービスはどんな…


「開発」関連 製品レポート一覧

このページの先頭へ

MEAP/ 「MEAP」導入せずしてBYODすることなかれ」の記事を一部ご紹介しました。
会員登録を行い、ログインすると、「MEAP/ 「MEAP」導入せずしてBYODすることなかれ」の記事の続きがお読みいただけます。


Myリストへ 印刷用ページへ

この記事をtweetする このエントリーをはてなブックマークに追加


この記事に掲載している情報は、掲載日時点のものです。変更となる場合がございますのでご了承下さい。


ページ: 1 | 2 | 3


30006301


IT・IT製品TOP > 開発 > 開発環境/BaaS > 開発環境/BaaSのIT特集 > 特集詳細

このページの先頭へ

キーマンズネットとは

ページトップへ