開発ライフサイクルの特徴を分かりやすくするために、引き渡し頻度(成果物を渡すスピード)と変更頻度(計画の変更が起こるスピード)という2つのポイントを軸に整理します。それぞれのライフサイクルを日常生活の例にたとえながら説明します。
- 漸進型ライフサイクル
特徴:
引き渡し頻度:高い(成果物を頻繁に渡す)
変更頻度:低い(計画を大きく変えない)
例: 本を分冊で書く方法
1章ずつ完成させて順番に読者に渡していきます。
最初に全体の目次(計画)をしっかり決めるので、大幅な変更はありません。
読者は1章ずつ完成した内容を読めるため、進捗が分かりやすいです。
- 反復型ライフサイクル
特徴:
引き渡し頻度:低い(完成品が出るまで時間がかかる)
変更頻度:高い(計画を試しながら変えていく)
例: 彫刻を作る方法
最初は石をざっくり削って形を整える。
作っている途中で「もっとこうした方がいい」と考えが変わり、形を修正する。
完成品は一気に仕上がるが、その過程では何度も方向を変えることがある。
- アジャイル型ライフサイクル
特徴:
引き渡し頻度:高い(成果物を小分けで頻繁に渡す)
変更頻度:高い(計画も柔軟に変える)
例: オーダーメイドのケーキ作り
「まずスポンジ部分を見てもらい、次にクリームのデザインを相談する」といった感じで、小さい単位で成果物を渡します。
「もっと甘くしてほしい」などの要望が途中で出ても、それに応じて柔軟に対応します。
最終的にお客さんが満足するケーキを作り上げます。
比較表
まとめ
漸進型は、計画を守りつつこまめに成果物を渡す。
反復型は、大きく変更しながらまとめて成果を出す。
アジャイル型は、柔軟に変更しながら小分けに成果物を渡す。
開発プロジェクトの性質やチームの特性に応じて、どのアプローチを使うかを選ぶのが重要です。