うさぎ組

ソフトウェア開発、チームによる製品開発、アジャイル、ソフトウェアテスト

アジャイル開発にハイスキルが必要という誤解について

これの続きです。
→「アジャイル開発とはなにか - うさぎ組



ある方とアジャイルについて話していてなぜその方がアジャイルは難しいと言っているのかようやく説明できるようになったのがなんとなく成長したなぁと感じました。


その方はXPやScrumといったプロセスやフレームワークアジャイルだと見なしていて、それらを実践するのは難しいというのです。
例えば、XPには設計が極端に少なく多くのエンジニアには難しい、大きい設計をしたらXPではないというのです。そしてそれはアジャイルではない。と。


僕はアジャイルというのはもっと根源的なものであって、アジリティにソフトウェアを開発しようとする状態や手法だと思います。
前のブログからの引用になりますが、
========================
アジャイル開発は何かに対する答えを持っているんじゃなくって、自分達の最適解を探すためのアジリティなメンタルモデルを掲げていて、その具体例としてXP, Scrum, Lean が定義されてきた。
だから、いつだって答えは僕たちが見つける必要がある。
========================


いくつか代表的に知られているアジャイルプロセスやアジャイルプラクティスの実践を出来なかったからといって、それがアジャイルなソフトウェア開発ではないというのとは違うと思うのです。


XPとして宣言されたこと全てを守れなかったらそれはXPと呼べないのかどうかは僕にはまだ判断できませんが、XPが出来ないことでアジャイルでなくなるとは思わないし、
ハイスキルエンジニアでなければアジャイル開発が出来ないということにはならないと思っています。
ハイスキルであるかどうかよりも、アジャイル開発に重要なのはアジリティなメンタルモデルとチームで解決することに全力を注げる意志だと思っています。


恐らく彼が言っているのはアジャイルプロセスは難しいと言いたいのでしょう。
でも、それはあくまでXPの話であって、XPだけがアジャイルプロセスではありません。
また、XP, Scrum, Lean 以外に自分達でアジャイルに開発できているならそれはアジャイルプロセスだと思うのです。


何度かTwitterでは言っているのですが、アジャイルソフトウェア開発の4つの宣言とアジャイルソフトウェア開発の12の原則に恥じていないと言えればそれはアジャイル開発なのだと僕は思います。(少し教条的かもしれませんけど、まぁ目安としてね。


アジャイルサムライ−達人開発者への道−

アジャイルサムライ−達人開発者への道−

アジャイルな見積りと計画づくり ~価値あるソフトウェアを育てる概念と技法~

アジャイルな見積りと計画づくり ~価値あるソフトウェアを育てる概念と技法~

アート・オブ・アジャイル デベロップメント ―組織を成功に導くエクストリームプログラミング (THEORY/IN/PRACTICE)

アート・オブ・アジャイル デベロップメント ―組織を成功に導くエクストリームプログラミング (THEORY/IN/PRACTICE)

アジャイルプラクティス 達人プログラマに学ぶ現場開発者の習慣

アジャイルプラクティス 達人プログラマに学ぶ現場開発者の習慣