記事概要
Webアプリケーションのサービス設計について、まとめる。
開発手順
企画
どんなアプリ(機能)を作るか決める段階のこと
誰のどんな問題を解決したいのかを決める
ペルソナ
マーケティングの用語で、「サービスを使用するユーザー」のこと
「ターゲット」よりも詳細に「サービスを使用するユーザー」を決める
年齢層・職業・性別や現在の境遇などまで決めることで、よりリアルに使用者の目線でサービスを考案できる
ユーザーストーリー
「ペルソナの課題に対して、どのような機能で解決していくのか」を明確にしたもの
要件定義
詳細な情報を整理すること
- ユーザーがどのように機能を使用するのかを考え言語化する
- 障害が起こった時どうするかを決める
設計
エンジニアがどのようにアプリや新機能を作っていくかの手順書や、必要な設計図を作る工程
基本設計
開発に必要な内容へまとめることであり、外部設計とも呼ばれる
画面遷移図
どの画面でどんな操作をしたらどのページに移動するかを図で表記したもの
詳細設計
要件定義や基本設計の情報を元に、実際に書くべきコードを洗い出す作業
DB設計
開発で使用するDBの表を設計すること
具体的に考える項目としては、「テーブル」や「カラム」、「関連付け(アソシエーション)」など
- サービスで扱われる情報(エンティティ)を整理する
- エンティティの分類や関連付けなどを行い、模型のように表す(モデリング)
- テーブルの情報を利用しやすい形に変えていく(正規化)
正規形の段階 概要 非正規形 何もしていない状態 第一正規形 重複する値やカラムを分離する 第三正規形 情報が混在するエンティティを分離する
ER(Entity Relationship)図
DBのテーブルなどを図で表記したもの
開発
プログラミング言語などを使用し、アプリ開発を行う
デプロイ
作ったアプリを外部のサーバーに移して、全世界からアクセスできるように設定すること
保守/運用
動いているアプリに異常がないか定期的に確かめることや、トラブルが発生したら対処すること