原則として以下の要件が要求されます。
|
1.
|
早期かつ頻繁に価値のあるソフトウェアを納品することによりユーザーを満足させることを最優先とする。
|
2.
|
短期のタイム・ボックス(単位期間)を好み、ソフトウェアを頻繁に(2週間~2ヶ月ごと)に納品する。
|
3.
|
進捗を測る最良の方法は動作可能なソフトウェアである。
|
4.
|
開発の後期でも要求の変更を受け付ける。
|
5.
|
プロジェクトの期間中、ユーザーと開発者は毎日一緒に作業する。
|
6.
|
モチベーションの高いメンバーを中心にプロジェクトを立ち上げる。
|
7.
|
最も効率的かつ効果的に情報を伝達する方法は、直接対話することである。
|
8.
|
最善のアーキテクチャ、要求、設計は自己組織化したチームから生まれる。
|
9.
|
アジャイルは常に技術的な素晴らしさや優れた設計に注意を払うことにより強化される。
|
10.
|
アジャイルを用いれば開発者とユーザーは最適なペースで開発を続けることができる。
|
11.
|
シンプルさが大事。やるべき仕事の量を最小にする技が必要不可欠である。
|
12.
|
チームは、より効果的な方法を探るため定期的に見直しを行い、それに従って行動を調整・修正する。
|
アリスター・コーバーン著「アジャイルソフトウェア開発」より
|
|
これらを実現する手段として最近XP(エクストリーム・プログラミング)が注目されています。この中には我々ITDの技術者にとっても非常に示唆に富んだ内容が含まれているので、今回はXPの概要について説明します。
似たような手法にRUPというものがあり、これも反復的なシステム開発を行なうものですが、説明は別の機会に譲ります。
|