×
開発技術と開発管理

IPAのDX SQUAREでも、企画・要件定義・基本設計を上流工程として説明しています。


なぜウォーターフォールでは要件定義が重要なのか

ウォーターフォールモデルでは、後工程が前工程の成果物を前提として進みます。

たとえば次のような要件を考えます。

「利用者はメールアドレスでログインできる」

この要件から設計すると、

要件定義
「メールアドレスでログインする」
        ↓
設計
Userテーブルにメールアドレスを持たせる
        ↓
実装
認証処理を作る
        ↓
テスト
メールアドレスでログインできるか確認する

という流れになります。

ところがテスト段階で、

「やっぱり社員番号でログインしたい」

となるとどうでしょうか。

要件修正
  ↑
設計修正
  ↑
DB設計修正
  ↑
認証処理修正
  ↑
テスト仕様修正

複数の成果物へ影響が広がります。

これが手戻りです。

上流工程の問題ほど後工程への影響範囲が大きくなりやすいため、要件定義や設計段階でレビューすることが重要になります。IPAも、要件定義の抜け・漏れ・曖昧さが後工程の手戻りコストを増加させると説明しています。


ウォーターフォールモデルのメリット

1. 全体計画を立てやすい

最初に要件や工程を整理するため、

  • 開発範囲
  • 必要な担当者
  • スケジュール
  • 成果物
  • テスト計画

などを比較的整理しやすくなります。


2. 工程ごとの責任範囲を明確にしやすい

たとえば、