オモカゲ 開発振り返り
小さなお店のための顔がポイントカードになるアプリ、オモカゲの開発が完了し、現在Googleストアの審査待ちです。審査が終わり次第アプリを公開する予定です。
一次リリース後はしばらくサポート改善に努め、落ち着いてきたら追加機能開発を進めていこうと考えています。
ここまでのアプリ開発を振り返りたいと思います。
開発期間と所要時間
アプリ審査までにかかった期間と所要時間です。
所要日数は26日、合計時間は160時間となりました。
開発を始めたのが2020年5月14日、開発完了してアプリ申請を出したのが6月26日です。約1か月半、オモカゲの開発に注力してきました。
最初のうちは6月中旬には完了できるかなと思っていたのですが、コーディング以外の作業が思いのほか多く、6月末までかかってしまいました。
各作業にかかった時間をA~Fに分類して集計してみました。
A: 基本機能 62時間、38.75%
アプリの主要な機能です。お客様の顔を解析してメンバーを特定し、ポイントを付与したり消費したりするアプリの根幹の機能です。
感覚としてはこの部分が所要時間の80%ぐらいを占めるイメージですが、実際には40%にも満たない割合でした。
このあたりが最初の想定工数と最終工数とのギャップになる部分だと思います。
この部分の開発が終わるとほぼアプリ開発が完了したような気になりましたが、実際には半分も終わっていなかったことになりますね。
この基本機能を開発しているときは非常に楽しく毎日充実感がありました。
B: 補完機能 27時間、16.88%
基本機能の次に手をつけたのが、会員や売上の検索、紹介機能、ダッシュボード機能でした。
ここは概ね想定通りの時間となりました。
今回Flutterで構築して自分としてのテンプレ化ができたので、次から新しいアプリを作成する際はもっと迅速に対応できそうです。
ここまでは最初から想定していた機能で、みるみるアプリが形になっていくのが楽しく、集中力を保って進めていけました。
C: 付随機能 39時間、24.38%
補完機能の次は付随機能の対応を行いました。
初回起動時の処理、スプラッシュスクリーン、利用規約・プライバシーポリシー、ロギング、エラーハンドリング、レスポンシブ対応などのどのアプリで必要になる対応です。
ここは想定よりかなり時間がかかりました。アプリのコア機能ではなく、面白い対応ではないのでなかなか気が進まず、気分的にはしんどい期間でした。
アプリがある程度出来上がった後にまとめて対応しがちな部分で、それは決して間違いではないのですが、この対応期間はモチベーション維持が大変ですね。
ロギング、エラーハンドリング、レスポンシブ対応などは最初にある程度方針決めておいてコア機能の実装と同時に進める方が、効率はともかくモチベーション的にはいい気がします。
ここに39時間、約25%もの工数がかかった事は大きな誤算です。
アプリ開発時になかなかこの部分を見積りとして想定する事は難しいですが、所要工数としてしっかり積んでおく必要がありますね。
D: テスト、不具合対応 15時間、9.38%
付随機能の開発まで完了した後、全体を通してのテスト、不具合対応を行いました。
ここは想定よりも少ない時間で完了できたと思います。
一般的なアプリやWEBサービスの開発に比べればかなり少ない時間で問題も少なかったのではないかと思います。
これは自分で企画、設計して開発しており、かつ開発もしていた事が大きいです。
企画、設計、開発の担当が違っていたり、開発者が複数いる場合はこれの数倍の工数がかかったのではないでしょうか。
統合テストでの問題が少ないというのは個人開発の大きな強みですね。
ただテストケースをあげてもくもくとテストを実行している日は気分がなかなかのらず塞ぎがちとなりました。
E: WEBページ、アプリ申請 17時間、10.63%
最後にオモカゲの紹介、オンラインマニュアルページを作成し、アプリ申請をしました。
このフェーズでかかった時間は17時間、10.63%でした。
WEBサイト作成は最初は簡単な紹介ページぐらいで想定していたのですが、オンラインマニュアルやFAQを用意するのに時間がかかってしまいました。
WEBサイトはGoogleサイトを利用しましたが、これはそれなりにいい感じのWEBサイトがDocsのように簡単に構築できて凄くたすかりました。
振り返り
アプリ開発からアプリ申請まで一通り体験して、アプリ開発の全体がつかめました。
Flutterでだいたいやりたい事が実現できるようになったので、次のアプリ開発からはもっとスピーディに対応できそうです。
最初の基本機能や補完機能の開発あたりまでは楽しくモチベーションも続くのですが、付随機能、テスト不具合対応あたりはモチベーションの維持が大変でした。
オンラインマニュアル作成も面倒でなかなか気がのらず机に向かい続けるのがしんどい時期が続きました。
このあたりのモチベーションを維持する対応を考えないといけませんね。
次回の投稿ではFlutterを中心にテクニカルな部分を振り返りたいと思います。