現代人に、欠かせないデバイスの「スマートフォン」。
スマートフォンでできることはインターネットだけではなく、スケジュール管理やSNS投稿など多岐にわたります。
また、アプリもスマートフォンユーザーには大切なアイテムです。
昨今はスマートフォンで使用できる便利なアプリが展開され、機能が似ているものも数えると、多くの種類があります。
それぞれのアプリは、開発される前に試作品がつくられます。
採用されるケースは、現代で主流となっているアジャイル開発が大半ですが、アジャイル開発とは一体何なのか。
そこで今回はアジャイル開発の概要と、試作品のデモタイプの重要性について解説していきます。
どんな製品でも試作してみてから本格的に開発される
今や、毎日の生活で欠かすことができないインターネット。
パソコンのみならず、スマートフォンやタブレットの普及で、さまざまな機能をもつアプリが開発されていますが、開発される初期段階では、あらゆる角度から動作や使用感が検証されています。
不具合の確認
アプリを作るとなったら、まずは目的を明確にして設計をします。
アプリも同様で、まずは「何のためのアプリ」を「どのような設計」で組み立てていくか、緻密に考察されます。
そして実際に目的を持ったアプリが形になったあとは、設計通りに機能するか、耐久性に優れているか、どんな状況でも動作するかは重要な事項となります。
アプリに限らず、モノ作りにとってこの検証は生産に入る前の必須事項です。
試作は制作者側のために?!
アプリを作るには、設計が終わった段階で「試作品」が作られます。
「プロトタイプ」ともよばれる試作品は、作り手があらゆる検証を行うために必要不可欠です。
消費者が触れることはなく、あくまで作り手にとって重要な過程の一つで機能や動作、使用感を検証するための試作品です。
また、社会環境や消費者のニーズなどが変わることもあり、その場合は試作品をもう一度作るか調整をします。
こうしてモノは、さまざまな工程を経て世に出てくるのです。
試作品でモノの動作や正確性を高め、基準をクリアしてから量産。
そして、消費者へ提供されていくのが常となります。
アジャイル開発という方法
アプリの開発方法の1つでもある、「アジャイル開発」という言葉は、最近よく耳にするようになりました。
言葉の意味は、端的に述べると「ソフトウェアの開発において、従来にくらべて早く開発ができる手法」の総称です。
このように早く開発が可能になった背景には、ソフトウェアの開発をするにあたり、設計や仕様の変更があるのが前提という考えがあります。
まずはおおまかな設計から始めるという結論から出た開発手法がアジャイル開発です。
アジャイル開発では、最初にモノの「核」となるもの、つまり必要性が高い部分から設計されます。
そして、推測や仮説を取り入れることはないため、変更すべき要素があれば、柔軟に対応ができるというメリットがあります。
アジャイル開発が注目されている理由
従来のソフトウェア開発では、「ウォーターフォール」とよばれている手法が使われてきました。
ウォーターフォール開発とは、その名の通り滝から水が流れるように、それぞれの過程の順番を守り開発していく方法です。
具体的には、要件定義や開発設計などの上流工程から始まり実装やテストの下流工程に向けてあらかじめ定められた期間と工数の順に開発していくというわけです。
開発のフェーズを順に進めるため進捗状況の管理や開発要員の確保がしやすいメリットがある一方でプロジェクト途中での仕様変更に対応しにくいというデメリットもあります。
そんな中、アジャイル開発は2000年以降にから主流になってきて、いまでは一般的となっています。
アジャイル開発が注目されている理由にあがるのが、「開発過程における柔軟性」や「開発までの時間の早さ」です。
アジャイル開発はモノを作るにあたり、反復(イテレーション)しながら進めるのが特徴で、仕様や設計の変更があれば、瞬時に対応ができるのです。
近年では、ユーザーのニーズに対して敏感にモノが作られるため、アジャイル開発は時代に合った開発方法といえます。
また、核となる部分を初期段階で固めたりインテレーションしたりするため、不具合が出たとしても修正の工程が少なくすみます。
そして、従来のウォーターフォール開発にくらべ、開発費用が抑えられるところもアジャイル開発が注目される理由といえるでしょう。
アジャイル開発の手法
そんなアジャイル開発の手法を具体的にご紹介します。
アジャイル開発の手法は2つあり、なかでも主流のスクラムと、エクストリームプログラミング(XP)に分けられます。
アジャイル開発の主流:スクラム
スクラムとは、チームが一体となって開発を行うフレームワークのことを指します。
具体的な役割は、開発チームの作業とプロダクトに対して責任をもつ「プロダクトオーナー」、チーム全体を指揮し円滑に進めるための支援を行う「スクラムマスター」とその他の開発チームです。
そしてプロダクトに対する利害関係を持つ、スクラムチーム以外のステークホルダーからのフィードバックが行われます。
スクラムはエンジニアや顧客がチームとなってプロジェクトを遂行することに重点を置いているため、チーム内での十分なコミュニケーションの有無が非常に重要なポイントとなります。
アジャイル開発の手法:エクストリームプログラミング
エクストリームプログラミング(Exstreme Programming)は技術者を重視したもので、プログラミング開始後も使用の変更・修正・追加を想定した上でとりくむ手法です。
完成度を高めるために小単位の機能の設計・開発・テストを繰り返す、「反復型開発」であり、アジャイル開発においてはスクラムと合わせて用いられることがあります。
そして問題発生のリスクを避けるためにも、「プラクティス」と呼ばれる具体的な実践内容が定められているのが特徴。
例えば、「ペアプログラミング」と呼ばれる2人1組が基本のプログラミング方法があります。
これは設計・開発・テストとペアで行い、1人が開発しもう1人が確認することで問題発生のリスクを低減し、効率も挙げていく方法です。
その他には「ソースコードの共有所有」というのもあります。
その名の通り、ソースコードをオープンにしてシェアすることでチーム内なら誰でも修正することができます。
開発遅延の防止や個々の知識範囲の拡大の効果が見込まれます。
アジャイル開発前でも大切なデモアプリ
「デモアプリ」とは、消費者にリリースする前に作られる試作品です。
アジャイル開発で制作したアプリは、一旦、デモアプリとして動作確認や使用感などを検証します。
先に述べたように、デモアプリとは試作品です。
消費者が手にする前に、「正常に動くか」や「使い心地に不便な点がないか」など、確認をするために必要となります。
その他にも、アプリ自体の不具合があれば、修正しなくてはなりません。
デモアプリは、ユーザーが使う前にあらゆる検証をおこなうために必要不可欠なものです。
そこで 、試作アプリを開発・操作するメリット・試作を作らなかった時のデメリットを見てみましょう。
アプリでツールを作る場合は試作から作った方がよい
試作品を作った方が良い理由は、下記の通りです。
・早い段階で気づきや発見を得られる
試作アプリの段階でアプリ内の欠陥やエラー、気付きを発見できるメリットがあります。
早い段階で気付きを多く見つけると、アプリの本運用時に予期せぬエラーに見舞われる確率を減らせます。
本運用日の直近で不具合や短所に気付いた場合、余裕を持って変更することは難しいです。
運用開始日を公に紹介したのにアプリ配信日をズラした場合、会社のイメージが悪くなりファン離れや株価下落を引き起こす危険性もあります。
しかし、試作アプリで何度か試せば運用開始日直前に不具合や短所に気付くことが少なくなり、無理な変更を強いられる確率も減ります。
運用開始日直前のアクシデントに見舞われないためにも、試作を作った方が良いといえるのです。
・アプリ開発者とのギャップを埋められる
依頼者とアプリ開発者の間で、アプリに対するギャップが発生しているケースもあります。
たとえば「依頼者側はお客様を増やすアプリを作りたいのに、 アプリ開発者側はお客の需要を考えずに便利な機能を次々とアプリに埋め込む」という例です。
本運用時に気付いても後の祭り状態になる恐れも…。
しかしアプリの試作品を作れば、依頼者側がアプリ開発者に要望を伝える機会を増やせるため、
イメージ通りのアプリに仕上がる可能性が高くなります。
詳細なデモアプリの作成を
試作品のアプリとはいえ、できるだけ詳細に、実際のアプリに搭載する機能に近づけたほうがいいでしょう。
その中でもポイントは以下の動きを入れることです。
●画面切り替え時の動き
●アプリ内の視覚が変わる動き(遠近法など)
●アプリ内の絵が動く
これらの動きをいれることで、実際のアプリの操作感を確認することができます。
画面の切り替えはスムーズに、滑らかに行えているか、ボタンや操作する重要な部分に視認性の高いカラーの採用ができているかの確認は非常に重要です。
まとめ
いかがでしたか。
今回はアジャイルについて、開発方法やメリットと、アプリを開発するうえで重要なデモアプリについて解説しました。
アジャイル開発が主流となった現代では、凄まじいスピードでアプリがリリースされています。
ご紹介したアジャイル開発を利用して世の中をより便利にしていくアプリの導入を検討してみるのもいいですね。
また、アプリの運用を開始しても、ユーザーからの評判が悪ければ飽きられてしまいます。
そうならないためにもデモアプリで運用前にしっかりと不具合を見つけ修正していくことが大切です。