代表的なアジャイル開発手法
「アジャイルソフトウェア開発宣言」に合意している代表的なアジャイル開発手法には次のようなものがあります。
●エクストリーム・プログラミング(Extreme Programming、XP)
Kent Beck氏の「XPエクストリーム・プログラミング入門編」で紹介され、一躍注目を浴びました。アジャイル開発手法の代表として認識されており、特に定義されている4つの価値と12のプラクティスは具体的で理解しやすくなっています。
●スクラム(Scrum)
開発プロセスの管理に焦点が当てられているのが特徴です。スプリントと呼ばれる30日に区切られた単位で動作可能な製品を作成すること、毎日決まった時間に決まった場所で行われる短時間のミーティングなどが特長です。
●クリスタルファミリー(Crystal Family)
プロジェクトに関わる人数とシステムエラーの重要度という2つの要素の大きさに応じて適用する数種類の方法論から成りたっています。各プロジェクトで判断する余地を残しているため、多くのプロジェクトで採用しやすい方法論です。
●フィーチャー駆動型開発(Feature-Driven Development、FDD)
フィーチャー(機能)ごとに2週間の繰り返し開発を行います。8つのプラクティスが示されており、モデリングに重点が置かれています。
● 適応的ソフトウェア開発(Adaptive Software Development、ASD)
ソフトウェア開発を複雑で変化の多い環境と捉え、それを前提に適応的なソフトウェア開発を行うことを方法論としてまとめています。他の方法論に比べ理論的に説明されていますが、すぐに使える具体的なプラクティスが乏しいため、イメージはわきにくい点があります。一方で、範囲を限定していないため大きなフレームワークと捉えることができ、他の方法論よりも適用範囲が広いといえます。