私の中でのアジャイルに対する考え方

最近どこへいってもアジャイルもしくはそれに関連する話を聞く事が多くなってきました。
実際私も世の中が言うアジャイル開発をやっていたりしますが、少し思うところを書こうと思います。

実は既にアジャイルだった

ゲーム業界で既に数社の中で仕事をしてきた私ですが、大抵の会社ではアジャイルに近いような開発をしていたと思います。
実際エクストリームプログラミングスクラムを使用して開発していたというわけではありませんが、週単位どころか日数単位で変わる仕様に対応する開発体制、毎日行う報告会、週単位での進行確認、実際に作り上げた成果物報告、マイルストーンを区切っての出来たゲームのレビュー等、細かい単位の中で変化に強い開発はある意味で当たり前の光景です。
無駄のない素早く開発を行うという意味ではアジャイルそのものでしょう。
この話は既に過去に同様の事を仰っている人もいました。


CEDEC事前インタビュー:アジャイルで大規模開発? スクラムを使ったゲーム開発の可能性とは
http://www.4gamer.net/games/105/G010549/20100821003/

更に同記事内にはアンチャーテッド2はスクラムを用いて作られたという事も言われています。


GDC 2010]ゲーム大賞受賞作「Uncharted 2: Among Thieves」のポストモーテム
http://www.4gamer.net/games/093/G009300/20100313002/

これらを見る限りゲーム業界においては既にアジャイルな開発が一般的(XPだとかスクラムだとかは別として)であると言えるでしょう。

実際にアジャイル(素早い開発)なのか?

実際にXPやスクラムを取り入れて開発はアジャイルになるのか?そういう疑問は常々湧いてきますが、結局のところ慣れの問題であると思います。
私はXPやスクラムを取り入れても開発がアジャイルになるかと言えばそうとは思いませんし、XPやスクラムがなくてもアジャイル開発が行えているケースもあると思っています。
特にゲーム業界ではそういう会社が多いでしょう。
アジャイルはXPやスクラムだけでなく、クリスタルファミリー、フィーチャ駆動開発、適応的ソフトウェア開発、動的システム開発方法論、リーンソフトウェア開発、などなど様々な手法が存在しています。
結局のところは何を選ぶかが重要ではなく、自分達に合った方法で素早く開発するという事に尽きると思います。
何かにこだわるよりも自分が最も素早く開発出来る手段をとる、それこそがアジャイル開発だ、というのが私の中での結論です。