違いシリーズ一覧に戻る
システム開発

ウォーターフォール開発とアジャイル開発の違い

システム開発の代表的な2つのアプローチ。ウォーターフォールは工程を順番に進め、アジャイルは短い反復で動くソフトを作りながら改善していきます。仕様変更への適応力や成果物の出し方が違います。

比較表で見る違い

観点ウォーターフォール開発アジャイル開発
進め方要件定義→設計→実装→テスト→運用を順番に短い反復(イテレーション/スプリント)を繰り返す
前工程への戻り原則として戻らない(手戻りコスト大)反復ごとに見直しが前提
仕様変更への対応困難(変更管理が重い)柔軟(変更を歓迎)
ドキュメント詳細な設計書・仕様書を重視動くソフトウェアを重視(必要最低限)
向くプロジェクト要件が固定・規模が大きく品質要求が高い要件が変わりやすく素早い価値提供が必要

それぞれの詳しい解説

Aウォーターフォール開発

要件定義・基本設計・詳細設計・実装・テスト・運用といった工程を上流から下流へ順次進める伝統的な開発手法。各工程の成果物を確定して次に進むため、計画通りに進めば管理しやすい反面、後工程での仕様変更には弱いという特徴があります。

  • 工程ごとに成果物を確定して進める

  • 進捗・コスト管理が容易

  • 要件変更には弱く手戻りコストが大きい

Bアジャイル開発

短い反復(数週間のイテレーションやスプリント)で要件定義から動くソフトのリリースまでを繰り返す開発手法。スクラム・XP(エクストリームプログラミング)等が代表で、変化への適応と顧客との継続的な対話を重視します。

  • 短期間で動くソフトをリリース

  • スクラム・XP・カンバンなどの実践手法

  • 要件変更に柔軟・継続的な改善が前提

試験対策のポイント

「ウォーターフォール=順番・固定・大規模向き」「アジャイル=反復・柔軟・変化対応」。アジャイルソフトウェア開発宣言の「動くソフトウェア」「変化への対応」が判断軸。

理解度チェック(3問)

Q1. ウォーターフォール開発の特徴として最も適切なものはどれか。

  1. 1短い反復で要件定義から実装までを繰り返す
  2. 2要件定義から運用まで工程を順次進め、原則として前工程に戻らない
  3. 3ドキュメントを最小限にし動くソフトを優先する
  4. 4日次ミーティングで毎日タスクを見直す
解答・解説を見る

正解:2. 要件定義から運用まで工程を順次進め、原則として前工程に戻らない

ウォーターフォール開発は工程を上流から下流へ順次進める手法。前工程への手戻りコストが大きい。

Q2. アジャイル開発の代表的な実践手法として最も適切なものはどれか。

  1. 1ER図
  2. 2スクラム
  3. 3PERT図
  4. 4WBS
解答・解説を見る

正解:2. スクラム

スクラムはアジャイル開発の代表的な実践手法。ER図はDB設計、PERT図やWBSはプロジェクト管理の手法。

Q3. 次のような特性を持つプロジェクトで、より適しているのはどちらか。「ビジネス環境が急変し要件変更が頻繁に発生する」

  1. 1ウォーターフォール開発
  2. 2アジャイル開発
  3. 3どちらも適していない
  4. 4どちらも同程度に適している
解答・解説を見る

正解:2. アジャイル開発

要件変更が多い環境では、短い反復で柔軟に対応できるアジャイル開発が向く。

ITパスポート 記憶定着問題で演習する