Alistair Cockburn(アジャイル運動の創始者の1人)は、 Crystal Clear(彼のアジャイル方法論の1つの側面)についてこれを述べています。
Crystal Clearは、レベル3のリスナーに次の言葉で説明できます。
「ワークステーションとホワイトボードを備えた部屋に4〜6人を配置し、ユーザーにアクセスできるようにします。1〜2か月ごとに実行中のテスト済みソフトウェアをユーザーに提供し、それ以外の場合はそのままにしておきます。」
それは、アジャイルの定義であり、確かに彼らが何をしているかを知っていて、それに乗り込んでそれを行うと信頼できる経験豊富な開発スタッフにとっては明らかです。それでは、CIとTDD、ペアプログラミングなど、流行のすべてのものを使用する必要があるということですか。簡単に言えば...いいえ。
アジャイルは、一連のプロセスに従うことではなく、効果的であることです。それがあなたにとって何を意味するかは、あなたのチームとそれがどのように機能するか、あなたがあなたにとって何が役に立つかによって異なります。TDDが動作するコードの作成に役立たない場合は、WebでTDDが叫ぶあまり使われていないライトを聞くのをやめて、使用しないでください!ペアプログラミングが本当にチームが集中して仕事を遂行するのに役立つ場合は、時間の無駄だと言っている人を無視して、学校の運動会での3足レースのようにチームを編成します。
私は何年も前にアジャイルを行いましたが、アジャイルを行っていることにさえ気づいていなかったため、毎月製品の反復を提供し、定期的にバグの修正と新機能の追加を繰り返しました。そのようなものが発明されておらず、リファクタリングの本が書かれていないため、私たちは絶対にユニットテストを行いませんでした。つまり、いわゆるアジャイルの実践がなくても、アジャイルを実行できます。
アリステアはまた、ケントベックのこれを言います:
XPとSoftware Engineering Instituteの「能力成熟度モデル」の5つのレベルについて尋ねたところ、XPの3つの成熟度レベルについて回答しました。
書かれているようにすべてを行います。
それを行った後、ルールのバリエーションを試してください。
最終的には、XPを実行しているかどうかは気にしません。
最終的に、XPを実行しているかどうかは気にしないでください... この罠に陥らないように注意する賢い言葉。