まず結論

ソフトウェア開発の進め方(開発モデル)には複数種類があります。ウォーターフォール(順序通り)・アジャイル(反復・柔軟)・スパイラル(リスク評価を繰り返す)が試験の頻出テーマです。

ウォーターフォールモデル

① 要件定義
何を作るかを決める
② 設計
どう作るかを設計する
③ 実装
実際にコーディング
④ テスト
動作を確認・バグ修正
⑤ 運用・保守
リリース後の維持管理
各フェーズを順番通り進める。前工程が完了してから次工程へ
メリット

✅ 工程が明確で進捗管理しやすい
✅ 成果物・ドキュメントが整備される
✅ 大規模・要件が固定のプロジェクト向け

デメリット

❌ 要件変更に弱い(後戻りが困難)
❌ 動作するソフトウェアが遅い段階まで見えない
❌ 仕様変更コストが高い

アジャイル開発

アジャイル宣言の核心:「プロセスやツールよりも個人と対話を」「計画に従うことよりも変化への対応を」。短いサイクル(スプリント/イテレーション)で開発を繰り返し、顧客フィードバックを素早く反映。
スクラム

スプリント(1〜4週間)単位で開発。プロダクトオーナー・スクラムマスター・開発チームの3役割。スプリントレビューとレトロスペクティブを実施。

XP(エクストリームプログラミング)

ペアプログラミング・テスト駆動開発(TDD)・継続的インテグレーション(CI)などの実践を重視。

その他の開発モデル

モデル特徴向いているケース
スパイラルリスク評価→設計→実装→評価を繰り返すリスクが高く大規模なプロジェクト
プロトタイプ早期に試作品を作り顧客確認してから開発要件が曖昧なプロジェクト
インクリメンタル機能を少しずつ追加しながら段階的に完成優先度の高い機能から使いたいケース
RADツールを使い短期間で開発短納期プロジェクト

🎯 試験での出方

⚠️ よくある間違い

✍️ 確認クイズ

Q1. 開発中に要件変更が頻繁に発生する場合、最も適した開発モデルはどれか。
✅ 正解は②。アジャイル開発は短いサイクルで開発・フィードバック・改善を繰り返すため、要件変更への対応が柔軟。ウォーターフォールは後戻りが困難で変更に弱い。
Q2. 要件定義が曖昧なプロジェクトで、顧客に早期から確認しながら進める開発モデルはどれか。
✅ 正解は③。プロトタイプモデルは早期に試作品(プロトタイプ)を作成して顧客に確認してもらい、フィードバックをもとに要件を確定してから本開発に進みます。要件が曖昧なときに有効。
Q3. スクラムで1〜4週間の開発サイクルのことを何というか。
✅ 正解は②。スクラムにおける固定長の開発サイクルを「スプリント」(またはイテレーション)という。バックログは開発すべき機能の一覧リスト。インクリメントはスプリントの成果物。
Q4. ウォーターフォールモデルの最大の問題点として正しいものはどれか。
✅ 正解は②。ウォーターフォールは各フェーズを順番に完了させる手法。要件定義→設計→実装→テストと流れるため、後のフェーズで問題が発覚すると前のフェーズに大きく戻る「手戻り」が発生してコスト・工期が大幅に増大します。要件変化に弱いのが最大の弱点です。
Q5. プロトタイプモデルの特徴として正しいものはどれか。
✅ 正解は②。プロトタイプモデルは早期に動く試作品を作成してユーザーにレビューさせ、要件の誤解や変更を早期に発見します。要件が不明確なプロジェクトに有効。①はスパイラルモデル、③はアジャイル(スクラム)の特徴です。

Sponsor Link