前回はアプリを作ろうと思った動機について述べました。
今回は、知識も経験もゼロの状態から、どうやってアプリの設計を行ったかを説明したいと思います。
コンセプト設計
まず、何をやりたいか。どうしたいか。最も重要な部分がここだと思います。この力が大きければ大きいほど、目標達成までの時間は短縮され、出来上がる成果物の完成度は高くなります。
やりたいことの洗い出し
こういった感情を計るものさしはありませんが、とりあえずやりたいことをリストアップすることで、第三者視点で冷静に判断することは可能です。ここには、自分に都合いいことばかり書くのではなく、くだらないと思うことや、人に見せるにはあまりに恥ずかしい事も全て書き出します。
先に言っておくと、この時、あまりに書き出す量が少ないようであれば、そもそも本当に自分がやりたいことなのかを、もう一度考え直すべきです。書けないという心理的な抵抗が出ている時点で、その目標は未達になる可能性が高いです。
自分の場合、要約すれば以下の様な感じだったと思います。
- 何でもいいからアプリが作りたい
- アプリを作れるようになりたい
- アプリを売りたい
- ライトのアプリでいいと思うものがないから作りたい
- アプリ開発に関する難易度設定は低くしたい
- グラフィックにこだわりたい
- 日本だけでなく、世界の人々に使ってもらいたい
- 3ヶ月で完成させる
- 無料アプリは作らない
- 内部課金アプリが作りたい
- Objective-Cの作法を習得したい
- 1回使うと消されるアプリは作りたくない
- アプリリリースまでの一連の手順を理解したい
見せるのが恥ずかしいくらい単純なことばかりです(笑)
ちなみに、この時点での自分のObjective-Cの能力はゼロですが、技術的な部分は後回しです。目標がしっかりしていれば技術は後でいくらでも身につける事ができる、という自信だけはありました。
要素の分類
これらの要素を、アプリの仕様に影響するかどうかでグループ分けしてみます。
- 【アプリの仕様には影響のないグループ】
-
- 何でもいいからアプリが作りたい
- アプリを作れるようになりたい
- Objective-Cの作法を習得したい
- 1回使うと消されるアプリは作りたくない
- アプリリリースまでの一連の手順を理解したい
- 【アプリのコンセプトに関わるグループ】
-
- アプリを売りたい
- ライトのアプリでいいと思うものがないから作りたい
- アプリ開発に関する難易度設定は低くしたい
- グラフィックにこだわりたい
- 日本だけでなく、世界の人々に使ってもらいたい
- 3ヶ月で完成させる
- 無料アプリは作らない
- 内部課金アプリが作りたい
これらの事から自分は、「Objective-Cを習得しつつ」「ライトアプリ程度の難易度のアプリ」を「3ヶ月で制作」し「有料アプリ」として「リリースしたい」と言うことが分かりました。
無料? or 有料?
有料アプリにしたかった理由は、これから作るものに対して「お金」という責任を負うことで、初めて制作するアプリに対し、ある程度のクオリティを保証しなければいけない、というハードルを自身に課したかったからです。
アプリが無料であることを理由に気楽に制作し、結果として一瞬の価値すら出ないものだけは、1発目に通るべきではないと感じていたのでしょう。
また、ユーザー視点に立った場合、購入前には無料アプリ以上に内容を検討し、一度対価を払ったアプリはすぐに手放したりはしないはずです。このことは「1回使うと消されるアプリは作りたくない」という項目とリンクしています。
課金制の無料アプリはマネタイズの設計や、課金システムの実装等、初めてアプリを制作する自分には課題が多すぎるため、この時点では却下となりました。
高すぎるハードルを設定してしまうと、助走に入る前に競技を離脱しかねません。
目標設定のミス
通常ならば、このまま知識と技術を身につけ、開発を進めていけば3ヶ月で完成させリリースできるはずなのですが、このアプリのコンセプトに関しては、絶対に目標が達成できないというとんでもないものでした。
一見すると何がいけないのか分からないと思いますが、Appleのアプリ審査のガイドラインの2.11項にその答えがあります。
一度でもガイドラインに目を通した方であれば、事前にこの問題は回避できたのですが、当時の自分はそういった知識もなく、結局リリースができないアプリを完成させてしまうことになります。
まとめ
次回からは、アプリ開発開始から初めてのiPhoneアプリの完成までを、実際のソースコードを交えながら説明していきたいと思います。