モバイル開発の世界において、それさえあれば何にでも対応できるという方法は存在しない。「Android」と「iOS」のわずか2種類のモバイルプラットフォームが独占しているが、アプリケーションは薄型のスマートフォンから大型のタブレットに至るまで、あらゆる形態や大きさの端末でうまく機能する必要がある。(続きはページの末尾にあります) モバイル開発の世界において、それさえあれば何にでも対応できるという方法は存在しない。「Android」と「iOS」のわずか2種類のモバイルプラットフォームが独占しているが、アプリケーションは薄型のスマートフォンから大型のタブレットに至るまで、あらゆる形態や大きさの端末でうまく機能する必要がある。(続きはページの末尾にあります)
モバイルアプリケーション開発はさまざまな要件が絡み合う。開発で使用するプログラミング言語とテストツールを選ぶ際に役立つヒントを解説する。
モバイルアプリケーション開発の主な要件にデバイスのOSの種類がある。「iOS」「Android」あるいはその両方で利用できるアプリケーションの開発に適したプログラミング言語やツールには、どのようなものがあるのか。
モバイルアプリのテストは、ユーザーエクスペリエンスを高めるとともに、バグを見つけ出すためにも必要なプロセスだ。アプリ開発に必須となる定番のテストツール「Appium」「Calabash」「Perfecto Mobile」「Ranorex」について紹介する。
クロスプラットフォームモバイルアプリを開発しようという決断は、IT担当者にとって最初の一歩にすぎない。本稿では、使用するツールの選択肢やアプリのテスト方法を紹介する。
モバイルアプリ開発には、Appleの「iOS」とGoogleの「Android」のどちらをサポートするかをはじめとした、アプリの種類と開発手法が含まれる。IT部門が採用すべきツールやトレンドを3つの質問から明らかにする。
適切な準備をしなければ、アプリ開発は複雑になり得る。幸先良くプロセスを開始し、最適なツールを武器に開発における無理、無駄を回避しよう。
モバイルアプリを開発する際には、ビジネス要件と機能要件に基づき、最も適した開発言語を選ぶ。本稿では、ビジネスユーザーも参考になる主要な開発言語の特徴を紹介する。
「モバイルアプリケーション開発プラットフォーム」(MADP)を適切に選び、効果的に活用すれば、コスト削減やリソースの有効利用につながる。MADPの主要な5つの用途を紹介しよう。
ネイティブアプリケーションのような操作性を有する「プログレッシブWebアプリケーション」。その実装方法を取り上げる。
「Xamarin Live Player」はiOSアプリの開発やテストを高速化でき、Macがなくてもアプリケーションのデバッグができる。
モバイルアプリ開発と配信の選択肢は豊富にある。本稿では5つのアプローチについて検討し、ユーザーのニーズにどう応えられるかを検証する。
基本業務にモバイルアプリを使いたくても、IT部門や開発者に開発を依頼するとコストと時間がかかってしまう。そこで、「RMAD」ツールを使ってモバイルアプリを自作しようと考える人たちが増えている。
IT関連職業の平均年収を調査したところ、モバイルアプリ開発スキル保持者が上位にランクインした。その理由を紹介する。
IBM技術を使う開発者は、Appleのオープンソースプログラミング言語「Swift」を使ってネイティブなiOSアプリケーションを作成できるようになった。
IBM、Microsoft、Oracle、SAPの4大ベンダーが、モバイルアプリケーション開発市場でしのぎを削り始めた。各社の戦略を見ていこう。
Apple「iOS」用のアプリの開発は、適切なデザインプラットフォームとプログラミング言語の選択から始まり、ユーザーフレンドリーなネイティブアプリの完成に至るまでの多層的なプロセスだ。
企業のIT部門がどのタイプのアプリケーションを開発するか選ぶ際は、デバイスへの対応性やアクセス方法が焦点になる。
IBMとAppleの提携により、クラウド開発プラットフォーム「Bluemix」でAppleのプログラミング言語「Swift」を利用できるようになった。提携の経緯や「Watson」との連係などを紹介する。
モバイルアプリ開発に関しては、主にネイティブアプリ、HTML5アプリ、ハイブリッドアプリという3つの選択肢がある。どのアプリケーション形式がビジネスに適しているのだろうか。
クロスプラットフォーム対応のモバイル開発ツールを利用すれば、開発者はアプリを1本作成するだけで各種のプラットフォームに対応させることができる。モバイルアプリの開発プロセス簡素化が可能だ。
さらに新しい種類のモバイルデバイスが登場すれば、それにも対応しなければならない。また、ネットに接続された固定型と移動型のセンサーやアプライアンス、すなわちモノのインターネット(IoT)では、そうしたデバイスを制御し、あるいは通信して革新的な機能やサービスを実現する、さらに有用なモバイルアプリ開発の機会が開ける。
では、役に立つ魅力的なモバイルアプリやサービスをタイミング良く繰り返し開発し、常に顧客に喜んでもらうために組織が必要とするアジャイルは、どうすれば達成できるのか。クロスプラットフォームのWebアプリを選ぶべきか、それともAndroidとiOS向けに別々のネイティブアプリを開発し、サイズの違う端末向けに最適化すべきなのか。開発チームとプロセスを編成する最善の方法はあるのか。モバイルイノベーションの現場にいる人たちの間では、最も生産性の高いモバイル開発のアプローチを巡ってさまざまな意見がある。だがある程度共通する項目を引き出すことは可能だ。
ネイティブアプリを開発する方がいいのか、それともクロスプラットフォームのアプローチを選ぶべきかという疑問に対する答えには、正解も間違いもない。答えはその会社のニーズと顧客の好みによる。多くの組織は両方を採用している。
アイデアを育むアプリ開発プロセスを最適化して最大限のビジネスアジリティを発揮するに当たっては、魅力的な新しいモバイルアプリとサービスのための達成可能なアイデアをタイミング良く継続的に出し、そのアイデアをできる限り手早く効率的に実現する必要がある。アイデアを出し、それを発展させるためには、従来の組織の垣根や階層を越えて自由に連携できるオープンな文化が必要だ。魅力的なアプリのアイデアは、社内のどこからでも(あるいは社外からも)生まれ得る。形になっていない思考や疑問がその発端となることもある。
スタッフにソーシャルメディアの利用を促したり、ITチームのためにハッカソンを組織したり、新しいアイデアを発掘する時間を与えるといった取り組みも組文化のクリエイティブ性を保つ助けになる。