LoginSignup
6
10

More than 3 years have passed since last update.

スマホアプリの要件定義で考慮すべき項目【随時更新予定】

Last updated at Posted at 2019-06-08

スマートフォンのネイティブアプリの開発を行う際に特有の、要件定義に盛り込んでおくべき内容をまとめます。自分向けメモのためやや殴り描きですが、随時更新しもう少しちゃんとまとめ直す予定です。

サポート端末

  • サポート対応OS、バージョン、インストール可能な最低OSバージョン
  • タブレットへのインストール可否
  • サポート対象の画面サイズ(特にAndroidは画面サイズの種類が多いため)

UI関連

  • ポートレートビュー(横表示)への対応有無
  • split view(タブレットやAndroid7?以上で複数アプリを並べて表示させる機能)への対応有無
  • タブレットの場合に、iPadの互換表示モード(?)を利用するのか、ユニバーサルアプリとしてリリースするのか。
  • OSのUI設定についてどこまでサポートするか
    • OS設定のフォントサイズ
      ※何も考えずに実装すると、iOSはOSのフォントサイズ設定に依存せず独立して描画され、AndroidはOS設定に影響を受ける。
    • (Androidのみ)システムフォントの設定
    • (Androidのみ)ビューの拡大表示
    • (Androidのみ)デフォルトキーボードの設定
    • (Androidのみ)Adaptive Iconへの対応(Android8以上) cf. https://qiita.com/ryo_mm2d/items/bc2807670eedc71630b9
  • 画面サイズが大きい(タブレットとかの場合に)どのように拡大させるか。要素自体を引き伸ばすのか、要素間のマージンで幅を調整するのか。後者の場合は、どこの要素間でマージンを設けるのかなどを明示化するため、画面サイズごとにデザインパターンを何パターンかつくることもある。
  • 幅や高さが固定の要素に対して文字数が超過した場合に、文字列の一部を「...」と省略表示とするのか、要素内に文字が収まるよう自動縮小させるのか(※設計時に要素ごとに検討した方が無難かも)
  • (iOS13以降)ダークモードへの対応方針
  • カラーユニバーサルデザイン( https://www.asobou.co.jp/blog/web/cud )への対応有無

トラッキング

  • トラッキングの計測対象は何にするのか。screen_viewのみ?screen_viewを取得する場合はスクリーンクラスの定義も行なうのか?ボタンタップなどのイベントも取得するのか?
  • クラッシュレポート(Crashlyticsなど)の導入有無を決める。ストアのコンソールでも確認できるが専用のツールを入れたほうが詳細な情報が取得できる。

セキュリティ

  • iCloudなどにアプリ内保持項目もバックアップさせるかどうか

コーディング規約

その他

  • URLスキーム、Universal Links(iOSのみ)の有無
6
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
10