1.ウオーターフォールモデル
●メリット
・開発工程がシンプルで分かりやすいため、管理しやすい
・既知の仕様・技術の場合は相性がよい
●デメリット
・統合時に発見される問題が多く、実際には工程が順番に進まない
・手戻りが大きい
・開発リスク(要求・技術)がテスト工程までわかりづらい
2.スパイラルモデル
●メリット
・各サイクルで、前サイクルの検証結果を反映できるため、仕様変更に強い
・要求や技術的なリスクの高い未知のシステム開発に適用しやすい
●デメリット
・機能間の依存関係が強く、システム分割しづらいときは適用しにくい
・各サイクルの問題を踏まえて、次サイクルの計画立案とプロジェクト遂行のスキルが必要
・プロトタイプを作成するため、開発効率が低くなることがある
3.反復方モデル
●メリット
・反復ごとに要件定義工程があるため、仕様変更に対応しやすい
・反復ごとにサービスが増えるスタイルのため、ユーザに分割納品でき、短期でシステムを稼働させることができる
・顧客に分割納品したシステムを利用してもらい、結果を次の反復にフィードバックできる
●デメリット
・反復ごとにサービスを稼働させるためには、反復ごとに品質管理、構成管理などが発生し、リリースコストが増大する
・各工程をラウンドトリップで開発するため、プロジェクト管理が難しい