要件定義要件定義ってよく聞くけど何をしてるかわからないと思ったので勉強ついでに簡単にまとめました。
要件定義書って何?
一言でいうと「何を作るか」を決めるもの(どう作るかじゃない)
設計との違い
| フェーズ | 内容 |
|---|---|
| 要件定義 | 何をやるか |
| 設計 | どうやるか |
要件定義書に書くべきもの(最重要だけ)
まずはこの5つは最低限必要!
① 目的(これ一番大事)
なんのために作るの?
例
・ユーザーがログインできるようにする
・注文を管理できるようにする
② 機能一覧(何ができる?)
例
・ログイン
・ログアウト
・パスワードリセット
③ ユーザーの動き(業務フロー)
実際どう使う?
例
① ユーザーがメール入力
② パスワード入力
③ ログインボタンクリック
④ ホーム画面に遷移
④ 入力・出力(データ)
何を扱う?
例
入力:
・メール
・パスワード
出力:
・ログイン結果(成功/失敗)
⑤ 条件・制約
プロジェクト内の書き方のルール(命名規則等)やバリテーション
例
・パスワードは8文字以上
・メール形式でないとエラー
ここまでで“最低限の要件定義”!!
もっと詳しい要件定義を書くには
- 権限管理
- エラーケース
- パフォーマンス要件
- セキュリティ要件
- 非機能要件(負荷・速度)
辺りも書くとより質が高い要件定義になるそうです。
実際の要件定義例
最初はこんな感じで十分!
■機能名:ログイン機能
■目的
ユーザーが認証してサービスを利用できるようにする
■機能
・メール入力
・パスワード入力
・ログインボタン
■処理
① メール・パスワード入力
② ボタン押下
③ 認証処理
④ 成功ならトップ画面
■入力
・email
・password
■条件
・パスワード8文字以上