仕様書の項目まとめてみた
初めてのアプリ開発、何を決めておけばこの後作りやすいんだっけ?
色んなひとが色んなことを言っている。
わたしなりにまとめてみた。
ここまで決めておけばやりやすい気がする。
開発コード名 【codename】 コードネーム:
ファイル名につけるため、正式名称が決まるまでの呼称、てきとー、Pancakeとかでも。
【企画フェーズ】
1.ペルソナ設定
2.悩みや課題
3.課題解決された状態
4.課題解決に必要な機能
5.ユーザーストーリーまとめ(≒要件定義書):
{whoペルソナ}が、{why課題}を解決するために{how機能}を使って{what課題解決}できるようになる
6.ブランディング:
ブランド(アプリ)名、カラー、アイコン、キャチコピーなど:仮置きでOK、作りながら固めていく
【要件定義フェーズ】
7.欲しい機能:
~ができるようになる(ユーザー目線)
8.作らない機能:
あえて最初は作らずに、今後のアップデートにとっておく機能など
ペルソナやアプリの目的からずれる機能は作らないなど
9.画面と画面遷移の流れ:
ワイヤーフレーム(ラフ)
【基本設計フェーズ】
10.画面遷移図(文字):
11.ワイヤーフレーム(絵):(1)-(5)を画面ごと
(1)画面名:その画面は何のためか(例:トップページ)
(2)機能一覧:その画面でどのような処理が存在するのか
(3)インプット機能要件: ,操作方法(入力/ボタンなど): ,入力データ(数値/文字列など): ,出力結果/遷移先:
(4)リンク機能要件: ,操作方法(入力/ボタンなど): ,出力結果/遷移先:
(5)表示要件:~を見ることができる
(6)配置図
12.画面設計:(1)-(5)を画面ごと
(1)画面名:その画面は何のためか(例:トップページ)
(2)機能一覧:その画面でどのような処理が存在するのか
(3)インプット機能要件: ,操作方法(入力/ボタンなど): ,入力データ(数値/文字列など): ,出力結果/遷移先:
(4)リンク機能要件: ,操作方法(入力/ボタンなど): ,出力結果/遷移先:
(5)表示要件:~を見ることができる
(6)配置図
13.データベースの設計:
テーブルにデータが登録されるときに着目
(1)エンティティの種類:扱うデータ:洗い出し⇒カラム名として整理⇒グルーピング(データベースの正規化)
(2)テーブルの種類:何のデータを管理するテーブルが必要か。必要なテーブルを書き出す
(3)テーブルの中身:エンティティのアソシエーションの洗い出しをカラムとアソシエーションをそれぞれのテーブル内で整理
(4)ER図作成:エンティティ同士の関係性(アソシエーション)を図に示す
(5)データの制約、バリデーションの設定、必須かどうか
【詳細設計フェーズ】
14.基本設計書の作成:
画面遷移図/画面設計のわかりやすいまとめ
15.クラス図の作成:
11.で書き出した処理をクラスという役割のまとまりにグルーピング
16.シーケンス図の作成:
17.画面(機能?)ごとに設定すべきこと:
ルーティング: ,コントローラ: ,アクション: ,モデル:
18.コードを当てはめる
19.テーブル定義書の作成:
まとめ