サービス設計(アプリケーションが作られる流れ)を説明していきます!
① 企画 アプリケーションの内容を考察
↓
② 要件定義 アプリケーションの仕様、要件の洗い出し
↓
③ 設計 DBの設計などを行う
↓
④ 開発 実際にプログラミング言語などを使用し開発を行う
↓
⑤ 保守・運用 リリース後のバグの対処や追加機能の実装
上記がサービス設計の大まかな流れになります。
一つずつ詳しく解説していきます!
① 企画
ペルソナ(サービスを使用するユーザー)を考える
具体的には性別や年齢、職業、趣味などユーザーを細かくイメージし、生まれる課題を見つけていきます。
ユーザーストーリー
ペルソナの課題に対して、どのような機能で解決していくのかを明確にする。
例えば、ペルソナの課題が「好きな本を発信して、共有したいけど発信する場所がない」という課題だった場合、「発信する場所を作る」という機能がユーザーストーリーになります。
② 要件定義
開発者がアプリケーションの仕様を把握するために、詳細まで言語化するということです。これにより、複数の開発での共通認識を持つことができます。
例えば、ユーザー登録のトップページにはどのような表示をするのかを言語化するみたいな感じです。
③ 設計
・基本設計 画面や画面遷移の流れをまとめる→画面遷移図を作成するとアプリケーションの全体がつかめやすい
・詳細設計 書くべきコード、ユーザーが行う操作など書き出す。
DB設計 テーブルやカラム、関係性(アソシエーション)などを設計する
エンティティ(≒テーブル)を洗い出すポイントはデータが登録されるときに注目する
制約 データを登録するときに制限をかけること
例
・NOT NULL(ノットヌル)制約 → 空の値を登録できない
・一意性制約 → 同じデータを保存することはできない
・外部キー制約 → 特定のキーがないと保存できない
・チェック制約 → 条件を満たさないと保存できない 例 6文字以上
DBを可視化するためにER図を使います。
これによりテーブル間の関係性がわかりやすくなります。
以上がサービス設計の流れになります!