組織としての機動力アップや、社会問題となっている長時間労働の抑制などを目的に、多くの企業がワークスタイル改革に取り組んでいる。そうした中でも、モバイルデバイスを活用し、場所を問わずに業務にあたることのできる環境を整えることへの関心はひときわ高い。メールやスケジューラなどについては比較的対応が進んでいるが、悩ましいのは業務に密着したアプリケーションのモバイル対応をどうするかという問題。本稿では、現実的アプローチを考察してみたい。

課題はアプリケーション開発のリードタイム削減

 ワークスタイル改革においてモバイル対応が重要とされる理由は、改めて言うまでもないだろう。社内からでないとアクセスできないアプリケーションやデータがあると、外出先での業務が制限されるし、そのためだけに帰社するような無駄な移動も発生する。場所を問わずに業務にあたることができる環境を整えることができれば、一人ひとりが効率的な時間の使いかができるし、結果としてビジネススピードの向上など企業としての競争力にもつなげることができる。

 もっとも、企業がモバイルワーク対応を進めるうえでは、さまざまな課題を解決しなければならない。外に持ち出される多種多様なデバイスの運用管理をどうするか、セキュリティ上の懸念事項をどう払拭するかといったものが典型例に挙がり、こうした課題を解決するための製品/サービスが続々と登場している。EMM(エンタープライズモバイルマネジメント)ソリューションは注目株の一つ。詳しくは別記事で解説しているのでそちらを参照していただきたいが、EMMを導入することで、企業はデバイス、アプリケーション、データといったものを一元的に管理することが可能となるため、ここにきてにわかに注目を集めている。

 ただし、EMMはあくまでもモバイルワークのインフラレイヤーなどベーシックな部分を支えるソリューションであり、導入しただけでモバイル対応がすべて完了するとはいかない。例えば、既存の業務アプリケーションの中には、モバイルデバイスにネイティブに対応していないものも少なくないはずで、それに対処するとなると思いのほか手間ひまがかかる。

 用途別のアプリケーションパッケージやクラウドサービスをほぼそのまま使用している場合、そのベンダーがモバイルアプリを提供していれば、それを使うことで大きな問題とはならない。電子メールやグループウェア、営業支援システムなどではよくあるケースで、すでに活用している企業もあることだろう。その一方、パッケージを使っていても大幅なカスタマイズを加えている場合や、スクラッチでアプリケーションを開発している場合は、モバイルデバイス用のアプリも自前で用意する必要性に迫られる。クライアント/サーバー型で構築したアプリケーションにおいてPCサイドで担っていたロジックや機能を、新たにモバイルデバイス向けに移植しなければならないといったケースだ。

 モバイルデバイス用アプリの開発手法には、OSごとに開発を行うネイティブ開発やOS非依存のかたちで行うハイブリッド開発があり、それぞれに一長一短がある。詳細については割愛するが、一般的には、ハイブリッド開発のほうが開発リソースの削減は容易だが、GPSなどのデバイス機能の活用やUX(ユーザーエクスペリエンス)の面ではネイティブ開発に分があると言われている。なお、Webアプリケーションとして開発されている場合はモバイルデバイス用画面を追加するといった方法で対処可能だが、この場合も画面サイズを考慮した画面設計のやり直しが必要になり、ロジック部分は流用できたとしても画面周りは再設計を避けられない。

 いずれにせよ、アプリケーションをモバイル対応に改修するには、少なからぬ時間とコストがかかる。それもアプリケーションごとに行う必要があるから、運用しているアプリケーションの数が多ければ多いほど、企業への負担は重く大きくなることを念頭に置かなければならない。モバイル対応が済んでいるものとそうではないものをふるい分けし、後者の中では、外出先でも是非使えるようにしなければならないものを絞り込んだ上で優先順位の高いものから順次リリースするメリハリある取り組みが重要だ。また、業務アプリケーションごとのライフサイクルにも目を配り、次期更改のタイミングでモバイル対応を図るのも一考である。

モバイルアプリをラピッド開発で実現

 ビジネスを支えるIT基盤といった文脈では、ともすると生産管理システムや販売管理システムといった業務アプリケーションにばかりに目を向けがちだが、実際にはそうした基幹業務の間を埋める形で機能しているアプリケーションが存在していることも忘れてはならない。例えば、最初はExcelやAccessをベースに現場主導で簡易的な仕組みを作り、さらにはマクロやVBA(Visual Basic for Applications)などを使って機能も規模も拡大してきたようなアプリケーションだ。

 その多くは、現場業務に密着した形で進化を続けてきた経緯があり、従業員にとってはなくてはならないもの。モバイル改革で一人ひとりの生産性を上げようという旗印を掲げる場合、基幹業務アプリケーションよりも、むしろこうした“隙間”にあるアプリケーションの方がモバイル対応のニーズが根強いといったことが間々あるものだ。

 この市場に着目し、現場密着型の業務アプリケーションをラピッド開発(短期開発)することに主眼を置いたクラウドサービスが登場してきたのは朗報と言えるだろう。サイボウズの「kintone」などはその代表例だ。例えば、受注管理表として作成した表計算ソフトのファイルを入力データとして与えると、表の項目をもとにデータベーステーブルを自動作成し、それに対応する入力フォームや、データをグラフ化する分析画面などまでをほぼ自動で用意するのが特徴だ。データベースに関する知識が不要で、開発者ではなくてもある程度のアプリケーションが作れる。しかも、生成されたアプリケーションは、最初からモバイル対応になっているので、どんな端末からでも利用できる利点がある。kintoneと同様のクラウドサービスは「Oracle APEX(Application Express)」など、ほかのベンダーからも続々と提供されている状況にある。

 こうした製品/サービスの特性を理解しうまく使いこなせば、前章で触れたような、モバイル対応を急ぐべき既存の基幹業務アプリケーション(特にフロントエンドの画面周りやロジック)のモダナイゼーション(現代化)に道筋をつけることも可能だろう。もちろん、そのままアドオンできるという簡単な話ではないが、API連携といった手法を使い、相応の開発リソースを投じれば、モバイル対応にかかる時間とコストを大幅に削減することが見込める。稼働環境を自前で用意する必要がないクラウドサービスであればこそ、リードタイム削減にも有効だ。

モバイルワーク対応で改めて注目されるVDI

 ラピッド開発型のクラウドサービスは、事業部門寄りのアプリケーションを新規開発する手法として注目すべき技術だが、さまざまな用途をすべからくカバーする万能解ではない。例えば、多段階の画面遷移が発生するような複雑なアプリケーションの開発はどちらかというと苦手であり、やはり一長一短がある。

 そこで、モバイル対応が急務だが開発が間に合わないという場合に検討したい現実解の一つが、VDI(デスクトップ仮想化基盤)の活用だ。VDIは、仮想化技術を使ってデスクトップ環境をサーバーに集約し、アプリケーションとデータの一元管理を実現するソリューションだ。クライアントPCのシンクライアント化を目的に、10年前くらいから企業での採用が進んできた。

 決して目新しいソリューションではないが、VDIを利用することでスマートデバイスからも既存のアプリケーションを利用できるようになる。アプリケーションにまったく手を加えずに、モバイル対応ができることは大きなメリットだ。仮想化されるのは基本的にWindowsのデスクトップ環境になるため、スマートフォンの小さな画面では快適とは言えないが、10インチクラスのタブレットであれば十分実用になる。

 またVDIには、画面のみを転送するため、データを外部に出さなくて済むというメリットもある。もちろん、盗難や紛失時の不正アクセス対策は必須だが、デバイスにデータが残らないという点での安心感はある。

 スマートデバイス上でWindowsデスクトップの画面を使うというのは、使い勝手の面ではマイナスになるが、モバイルワーク対応を迅速に進めるうえでは有効な手段だ。