この6月、フィリピン・マニラ近郊にあるマカティ市の高層ビルのオフィスで、スマートフォンやタブレット端末対応のアプリ開発拠点「Laboratory V」が活動を開始した。メンバーは全員が20代、30代のエンジニアで、HTML5やCSS3(カスケード・スタイル・シート3)、JavaScriptなどによる開発を得意とする。
この拠点を立ち上げたのは、企業向けのオークション事業を手掛けるオークネットである。同社が出資するIT関連会社のオフィス内にスペースを設けて、現地採用の技術者やデザイナーを配した(図1)。ユーザー企業が、スマホアプリの開発を目的に海外に拠点を設けるのは珍しい。
オークネットがここまで取り組む理由は、国内のITベンダーにHTML5を使ったスマホやタブレット端末向けアプリ開発や、ユーザーインタフェース設計のノウハウや技術が不足していると判断したからだ。「今後のシステム開発は、スマホやタブレット端末を想定したマルチデバイス対応が必要だ。HTML5を中心に開発を進めていくことにしたが、国内では技術者が確保できないのが悩みだった」とオークネットの鈴木廣太郎常務執行役員は明かす。
同社はこれまでも、スマホやタブレット端末などスマートデバイスに対応した情報システムを開発してきた(図2)。PCだけでなくスマホやタブレット端末から「競り」に参加するオークションアプリや、中古自動車査定のアプリなどだ。この6月には、オークションで取引する商品物流の現場でiPadなどから操作するシステム「mint smart backyard system」を稼働させたばかりだ。
こういったスマートデバイス対応システムを開発する際に常に課題となるのが、ITベンダーの選定だった。オークネットが活用を目指すHTML5に通じたITベンダーはまだ少ない。「実際に会って話をしたITベンダーは100社を超えた。それでもこの会社にお願いしたい、というベンダーは見つからなかった」(オークネットシステムサービス事業部の黒柳為之ジェネラル・マネージャー)。
そこで海外の技術者に目を向けた。スマホやHTML5の技術は日進月歩であるため、ネットで最新の情報を得やすい英語圏の技術者が望ましい。「フィリピンは日本との時差も少なく、最適と考えた」(鈴木常務)。
100人弱の候補者を面接し、テストとしてスマホ向けHTML5アプリを実際に作ってもらい、その中からまずは6人を採用することにした。CSS3を使って画面を設計するデザイナーと、データの処理やAPI(アプリケーション・プログラミング・インタフェース)の呼び出し機能をHTML5やJavaScriptで実装するプログラマーが、3人ずつだ。人員は徐々に増やす。すでに三つの社内システム案件が決まっている。
アプリ開発の基盤を作る
オークネットのように、スマートデバイス向けアプリの開発に取り組む先行企業は、従来のPC向けシステム開発にはなかった問題や課題に直面し、それを乗り越えてきた。
大量のアプリを開発するリクルートも、アプリの標準化や開発効率の問題に直面した。同社では複数の部門が主体となって、それぞれ個別にアプリを開発していたため、効率が悪かったのだ。品質やスピードの向上が課題だった。
そこでAndroidアプリの開発に注力し始めた2011年4月に、アプリ開発ルールと基盤整備に着手した。具体的には、アプリを開発する際の標準ルールやツールを用意したのだ(図3)。
ソースコードの書き方や、開発した機能部品を再利用する方法などを決め、チュートリアルとして社内サイトで公開した。機能部品は、「キャッシュ」「Twitter連携」「音声認識」といった単位でサイトで公開し、再利用可能にした。
開発したアプリは、社内標準の仕組みとして導入したツールを使って品質を確認する。米テストフライトのクラウドサービスを使い、iPhoneとiPad向けアプリのテストを行う。開発したアプリを、あらかじめ登録しておいたテスト用のiPhoneやiPadに配布する機能がある。わざわざテスト端末をUSBケーブルでPCに接続するといった手間を省き、テスト期間が短縮できる。
アプリの品質を向上させるための仕組みも用意した。個人情報を含まないアプリの利用ログを記録し、リクルートのサーバーに送信するAPIを用意。社内サーバーで、どんなアプリでどのようなエラーがどのくらい発生しているかを一目で把握できるようにした。
リクルート MIT Unitedの志田一茂ゼネラルマネジャーは、「開発にスピード感を出すためには基盤作りが重要。保守でも差が出てくる」と指摘する。
使う技術も開発プロセスも違う
このように、スマホやタブレット端末向けのアプリ開発は、従来のPCベースのシステムとは異なり、多くの課題や今までにない困難が伴う(図4)。開発言語やツールも「Objective-C」や「AndroidSDK」など、システム部門やITベンダーにとって馴染みが薄いものがほとんどだ。オークネットが採用するHTML5やJavaScriptもそうだ。
開発期間や開発プロセスについても、スマートデバイス向けは従来のシステムとは勝手が違う。一つのアプリを開発する期間は、2~3カ月程度。要件定義、設計、開発、テストといった、標準的な開発プロセスは、この短い開発期間に凝縮されることになる。
オークネットやリクルートなどは、こういった違いを乗り越えてきた先行企業だ。そこで得られたノウハウを踏まえ、これからスマートデバイス向けアプリ開発に着手する企業はどういった考え方で取り組むべきなのか。
先行企業の取り組みから、手早く開発し業務に役立てるための五つのポイントが浮かび上がってくる。「プロトタイプ開発」「段階的な機能追加」「開発ドキュメントの作成」「保守用端末の確保」「開発基盤の整備」である(図5)。「先行企業に見る五つの勘所」の章では、これらの中身を事例を引きつつ解説する。
「開発基盤の整備」は、本格的な業務アプリを継続的に利用するには、今後不可欠だ。リクルートのように自前で整備を進めるケースもあるが、そうもいかない企業が多数派だろう。そういった企業に向けて、ITベンダーが基盤の核となるソフトウエアやサービスの提供を開始している。これについては「開発基盤でスピードアップ」の章で見ていく。