【2016年夏】iPhoneアプリを作り始める前に考えておきたい5つのこと

このエントリーをはてなブックマークに追加

「iPhoneアプリ作る前に考慮しておくべきことってなんだろう?」
こんな疑問を開発前に持つ方向けに、「サービス・システム設計」の観点から新規アプリ開発において意識すべきポイントをまとめました。

また、弊社より8月30日にリリースしたカウルのアプリ開発でとった対応も併記しています。
過去に携わっていたショッピングアプリでの経験や、先輩アプリエンジニアの方々に教えていただいたことをベースとしています。

企業でiOSアプリを初めて開発するエンジニア作る機能・スケジュールを決めるプロダクトオーナー といった方々の判断の材料になれば幸いです。

エンジニア視点でのスムーズなiOSアプリ開発のためのポイントはこちらにまとめています。
ちょっとの工夫でスムーズになるiOSアプリ開発のコツ9つ(コーディング・デザイン編)



サービス・システム設計で意識しておきたい5つのこと

web開発と異なる部分として、プッシュ通知などアプリならではの考慮しておくと良いことがあります。

1.ユーザにアプリアップデートを促す仕組み

APIのバージョンを上げる際、バージョンアップ前のAPIに合わせて実装されていたアプリが動かなくなる可能性があります。
旧バージョンのAPIを使うアプリが残っていると、複数バージョンのAPIを運用していく必要がありますが、運用コストやセキュリティ等の理由で旧バージョンのAPIを閉じる必要も出てくるでしょう。
ですので、特定バージョンのアプリにアップデートを促す仕組みを導入できていると将来的な運用コストを抑えることができます。

カウルではFirebase Remote Configを使用して、通知が必要なバージョンのアプリを管理するようにしています。

2.webからアプリへのインストールの導線

アプリをリリースした後の、webからのアプリをインストールさせるための導線についても考えておきます。

カウルではランディングページへアクセスした際にSmart App Bannersを出すようにしつつ、web版への登録ステップも残すことにしました。
また、未対応のiOSバージョンの端末にはSmart App Bannersのメタタグを出さないようにしています。
ユーザの使用状況に応じて、インストールの導線を追加していくことも検討しています。

3.対応デバイス選定

対応デバイスとOSのバージョンを決めます。
カウルでは開発コストを抑えるため以下に絞りました。

  • iPhoneのみ対応(ローテーションの対応は無し)
  • iOS9以降対応

最新のiOS2バージョンをサポートすることが推奨です。

4.Appleの審査でリジェクトされることも想定した締切

初回の審査ではリジェクトされる可能性が十分にあるので、余裕をもって審査に出します。

これまで 1週間程度かかっていたレビューが短縮されて、現在は1日程度になっている ようです。

カウルではメッセージのやりとり・指摘箇所の修正時間も見込んで2週間程のバッファを用意しました。
実際、カウルアプリの審査においても決済周りの説明や確認のやりとりに時間を使いました。

5.クラッシュのトラッキング等に使うプラットフォームの選定

リリース後のクラッシュの検知や、プッシュ通知を送るためのプラットフォームを選びます。
特にクラッシュ検知ツールはお金もかからず、実装に時間もかからないので何かしらいれておきましょう。

カウルの開発では以下のツール群を導入して、クラッシュ検知やプッシュ通知を実装しています。

Fabric関連のツール

  • Answers
    アプリ起動状態のトラッキングをするツール
  • Beta
    開発途中のアプリを関係者に配信してテストするためのツール
  • Crashlytics
    アプリのクラッシュを検知するツール

Firebase関連のツール

  • Analytics
    アプリ起動状態のトラッキングをするツール
  • Notifications
    プッシュ通知を送るためのツール
  • Remote Config
    設定をリモートから配信するためのツール(A/Bテスト等に使える)

カウルアプリの中の話

今回のリリースに含めなかった対応

我々は以下のタスクを次のリリースに見送りましたが、スケジュール次第では可能な限り先に対応しておけると素敵です。

開発にかかったコスト

JIRAの記録(カウルの作業時間記録について)によると、1.5人月(240時間)ほどの作業時間を使いました。作業内容としては以下の様なタスクを含みます。

  • アプリ実装
  • API修正(プッシュ通知の組み込みなど)
  • モバイルwebのUI修正
  • ミーティングやアップル審査の調整

ここに書いてあることはカウルの開発で実施していることの一部です。是非みなさんの意見や、やり方も教えていただけると幸いです!

カウルのアプリはこちらです。基本料無料で使えますので、是非ご利用ください!
https://itunes.apple.com/app/id1143903849

by まっくす

このエントリーをはてなブックマークに追加