「よし、Androidアプリを開発しよう!」――その前に知っておきたいアプリ開発の流れ

スマートフォンの爆発的な普及により、もはやごく身近な存在となった「スマホアプリ」。このような状況を受け、自社の顧客に向けてスマホアプリを提供し、ビジネスで活用したいと考えている方は少なくないのではないでしょうか。

スマホアプリには大きく分けてiPhone向けとAndroid向けがあり、それぞれに開発手法が異なります。この記事ではこれからAndroidアプリの開発に着手したいとお考えの方に向けて、ぜひ知っておいていただきたい「アプリ開発の流れ」をご紹介します。

勢いを増すAndroidアプリ

冒頭でも述べたように、いわゆる「スマホアプリ」はiPhoneアプリとAndroidアプリの2つに大きく分類することができます。日本は世界的に見てもiPhone 利用率の高い国だと言われてきましたが、ここ数年、Androidの利用率がiPhoneを上回る場面がちらほら現れてきています。

モバイル社会研究所が発表した『ケータイ社会白書 2019年版』の「スマホ・ケータイの所有・利用状況」によれば、時期によりAndroidとPhoneの利用比率が逆転する局面も見られますが、平均すると両者はほぼ拮抗している状況だと言ってよいでしょう。この記事をご覧の読者の方のなかにも、こうした状況をふまえてAndroidアプリの開発を検討している方がいらっしゃるのではないでしょうか?

開発プラットフォームがほぼMacOSに限られるiPhoneアプリと比較すると、Androidアプリは比較的開発のハードルが低く、挑戦しやすい状況が整っているといえるかもしれません。とはいえ、ビジネスアプリの開発にノリや勢いだけで開発に着手するのはおすすめできません。

そこで今回は、これからAndroidアプリの開発に着手しようとお考えの方に向けて、ぜひ知っておいていただきたいアプリ開発の流れをご紹介します。

※iPhoneアプリの開発方法については、下記の記事がおすすめです。

必ず理解しておきたい「iPhoneアプリ開発の進め方」の基本

Androidアプリ開発の流れ

ソフトウェア開発にはさまざまな手法があり、選択した手法によって開発の進め方は変わってきます。ここでは比較的一般的なAndroidアプリ開発の流れをご紹介します。

1.アプリの企画を立てる

はじめに、これから開発しようとするアプリについての企画を立案します。

「アプリ開発」というと設計やプログラミングなどの作業が真っ先に思い浮かぶかもしれませんが、実はその前段で行う企画の立案が意外に重要な位置を占めているのです。

企画立案の段階では、アプリを開発する目的と主要なターゲットを明確にした上で、これから開発するアプリの概要を固めます。たとえばECサイトを運営している企業なら、「顧客との接点を増やすために(目的)、自社の既存顧客を主要なターゲットとした会員向けポイントサービスアプリを開発する」といった具合です。

また、この段階でアプリ開発にかけられる予算や、開発・運用に充てられるリソース(人や機器)についても明確にし、今からやろうとしていることの実現性、費用対効果などについても検討しておくことが大切です。

2.アプリを設計する

どのようなアプリを開発すべきかが明確になったら、その内容をもとにアプリの設計を行います。

どのような画面構成にするのか、どんな機能をつけるのか、アプリが利用するデータはどんな形で保存しておくのかといった点を吟味し、設計書をつくります。

ごく小規模なアプリを1、2名の少人数で開発する場合は設計書を作らないこともありますが、ビジネス用途のアプリを開発する際は、極力設計書をつくるようにしましょう。

設計書があれば複数の開発者の間での意思疎通がスムーズに行えますし、リリース後、当初の開発者が異動や退職で担当を外れてしまうことになったとしても、設計書さえ残っていれば引き継ぎによるリスクを低減させられます。

3.アプリを制作する

設計が完了したら、いよいよ実際にアプリを制作する、プログラミングの工程に入ります。

Androidアプリの開発には、Googleが提供するAndroid Studioという専用の開発環境を使用します。Androidアプリの開発に必要な様々なツールやプログラムの部品が、このAndroid Studioの中に一通り含まれます。

Android Studioの入手方法やインストール方法は、Android開発者用サイト「Android Developers」でご覧いただけます。

なお、Androidアプリは基本的にはJavaというプログラム言語を使って制作します。Javaは1995年に開発されてから20年以上もの歴史を持つ安定した言語で、一般的なデスクトップアプリやWebアプリのほか、携帯電話や家電製品などに組み込むコンパクトなプログラム(アプリ)の開発にも利用することができます。

非常に強力で長い伝統を持つプログラム言語ですが、度重なる仕様変更によってやや複雑な仕様が追加され、習得の難易度がやや上がってしまいました。

このため、最近ではKotlinという言語を利用してAndroidアプリを開発する人も現れ始めています。KotlinはGroovyやScalaなどと同じJVM言語と呼ばれるプログラム言語で、簡単にいうと、Javaよりも簡単なプログラムコードでJavaと同じプログラムをつくることができます。

Kotlinで書いたプログラムを専用のツールで翻訳(コンパイルといいます)すると、Javaと同じ環境の上で動くプログラムに変換されるのです。

Kotlinの特徴やKotlinでAndroidアプリを開発するメリットについては、前述のAndroid Developersでも詳しく紹介されていますので、興味のある方はご一読ください。

4.アプリをテストする

アプリの制作が完了したら、次はテストを行います。

ビジネスで利用するアプリの開発において、テストは必要不可欠な作業です。個人向け、あるいは社内で利用するごく小規模なアプリであれば、ちょっとした動作確認を行う程度で許される場合もありますが、不特定多数の人にダウンロードされるアプリに対して、そのような姿勢は通用しません。設計通りに作られているか、プログラムに間違いはないかを確認しておく必要があります。アプリの利用中にバッテリーが切れる、ネットワークが切断される、といったエラーケースの確認を行っておくことも大切です。

Androidアプリの場合、インストール先となるスマホの機種やAndroidのバージョンなどによって動作が不安定になる場合があり得るため、そのあたりも踏まえて念入りにテストを行う必要があります。

5.アプリをリリースする

開発したアプリが無事すべてのテストに合格したら、いよいよリリースです。

iPhoneアプリはリリース前にAppleによる厳格な審査がありますが、Androidの場合はGooglePlay上から比較的簡単にリリースすることが可能です。

なお、GooglePlay上にアプリをリリースするためには、前半でご紹介したGoogle Developersのアカウントが必要です。アカウントの登録は、Google PlayのDeveloperアカウント登録ページから行えますが、登録にはGoogleアカウント、クレジットカードと登録料が必要です。

アカウント登録が完了したら、Google Play上にアプリをアップロードできるようになります。アプリは関連ファイルをAPK形式と呼ばれる専用の形式にパッケージした上でデジタル署名を付け、Google Playの専用ページからアップロードを行います。

アプリを公開する方法について、詳しくは以下のページを御覧ください。

6.アプリを運用する

Google Play上にアプリが公開されれば、Androidアプリのリリースは完了です。

けれど、アプリは開発し、リリースしただけで終わりではありません。アプリの機能や性質によっても異なりますが、リリース後の不具合対応や機能改善、アップデートプログラムの配信など、様々な作業が待ち受けています。

リリースしたアプリをきちんと使える状態に保つための一連の作業を「運用」と呼びますが、アプリ開発に着手する際は、リリース後の運用までを念頭に入れて計画を立てておくことをおすすめします。運用体制の不足などから、満足なサービスを提供できずに終わってしまうようになっては、せっかくかけたコストが無駄になってしまいます。

全体像を把握して、無理のないアプリ開発を!

以上、この記事ではAndroidアプリの開発を検討している方に向けて、ぜひ知っておいていただきたいアプリ開発の流れをご紹介しました。駆け足でのご紹介となりましたが、アプリ開発のアウトラインをつかんでいただくことができたでしょうか?

「アプリ開発」とは、単にプログラムコードを記述して「動くアプリ」をつくるだけの作業ではありません。開発の目的を明確にした上で、その目的を果たすために必要な機能を持つアプリを企画・設計し、設計したものを動くアプリとして制作し、ユーザに公開して運用する――この一連の流れがうまく機能して初めて、アプリ開発を成功に導くことができるのです。

今回ご紹介したのはごく大まかな流れのみですが、実際は前述の一つひとつの作業の中に様々なトラブルや落とし穴が待ち受けています。そうしたトラブルや落とし穴を避け、アプリ開発を成功に導くためには、アプリ開発の知識や経験を持つメンバーが必要です。また、開発したアプリをテストする際にも、アプリのテストに関するノウハウや多くの機器が必要となります。

このようなリソースを自社で確保するのが難しい場合出来ない場合は、経験豊富なベンダーにアプリの開発を外注するのも良い方法だと言えるでしょう。