アジャイルはもう古い?
私は日頃、ソフトウェア開発、特に開発プロセスに関する仕事をしています。そんなわけで、プロセス関連の情報はできるだけ集めるようにしているのですが、先日久しぶりにIvar Jacobson氏のブログを見たところ、ちょっと面白いエントリがありました。
Taking the Temp on Agile(Ivar blog)
なんでも、Agileの巨人の一人であるKent Beckがぶっちゃけたらしいのです。「もうAgileなんて古いってみんな言ってるよ!コミュニケーションなんて真っ平だ!みんなもっとコードが書きたいんだよ!」
ええ〜ッ(マスオさん風)。
今回はミニ・マインドマップで。もう10日以上前か…。
個人的には、国内の企業で全面的にアジャイルのやり方を導入するのは、厳しいところが多いのではないかなと思っています。同じことはむかしからよく言われてましたが、日本はfixed priceな一括請負も多いし、お客さんとの関係もウェットになりがちだし、要員のマインドや文化的に向かない面もあるでしょう。
それにまあ、私自身の性分として、ある程度きっちり計画を作って、それに沿って仕事をするのが合ってます。あくまで仕事では、ですけど。
とはいえ、一言で「アジャイル」といっても色々な手法が考えられてきているわけで、そこから上手いやり方を取り入れて、日々の仕事をラクに(重要)、楽しく(さらに重要)できれば良いなぁとは思うのです。実際、XUnit系のツールを使ったTDD(っぽいやり方)なんかは、結構広まっているんじゃないでしょうか。そういうわけで、Jacobson氏の意見は概ねその通りだなーと思った次第。
以下、私的超訳。
アジャイルの現状について
Taking the Temp on Agile(Ivar blog)
何週間か前に、Kent BeckがスウェーデンGothenburgでのカンファレンスでキーノートを行った。彼はこう口火を切った。米国ではアジャイルは既に古くなりつつあり、プログラマたちは社交性を強要されるデイリーミーティングに疲れ果てている。彼らはコーディングがしたいのであって、話し合いがしたいわけじゃないんだ、と。XPの父であり、私が多大な敬意を払ってやまないアジャイルムーブメントの方向性を決定づけた、恐らく最も有力な人間がそう言ったのだ。
我々も、少なくとも米国において、人々がアジャイルを語るのに疲れた兆候を見て取っている。我々の顧客である大企業のCIOは「アジャイル」という用語を使いたがらない。我々がプラクティスを広めてきた、何千人もの開発者を抱える別の大企業のCTOはこう言う…アジャイルでもRUPでも何でも、アプローチには拘らない。結果だけが全てだ、と。彼はアジャイルからは距離を置いている。彼の組織にも熱狂的な信者がいて、信者たちはその方法でしか結果を出そうとしないからだ。
これは、最新のトレンドへの熱意が冷める一歩前にいつも見られることで、避けることはできない。本当の質問はこうなんだ。「アジャイルをやるためには、今までやってきたこと全てを捨てなければならないのか?」そして、まだアジャイルをやっていない人々は全てすっ飛ばして次に進むべきなのだろうか?否、そうじゃない!アジャイルには普遍的に有用なことが沢山含まれているのだ。
我々は、小さいプロジェクトから大きなプログラムまで企業へアジャイルを広めるよう、世界中の大企業と仕事をしてきた。より大きな企業では、アジャイルへの反発に出くわすこともあった。ひとつの原因としては、経験を積んだ開発者やマネージャ、経営層にとって、一部のアジャイル支持者の独善的な熱意がうすら寒く感じられたことが挙げられる。「アーキテクチャなぞ不要、モデリングも要らない、ただコーディングしてリファクタリングせよ」などという文言が、むかしアーキテクチャ設計せずに酷い目にあった人間には信頼出来ないのだ。まして、説明不足のコンセプト、例えば「要求文書などない…テストが要求だ」やら「ペアプログラミング」などについては、言及するまでもない。
幸いなことに、アジャイルは少しずつ成熟してきており、熱狂的な信者は理性的な支持者にほとんど取って代わられつつある。アジャイルアプローチには多くの良い点があるが、本当に成功するためには、それらを他の物事と組み合わせる必要があることを、彼らは知っているのだ。
今では、彼らのような人は派手な活躍をしていない。悪く言えば、彼らは最先端ではない古臭い人間になりつつあるのだ。彼らは大きなカンファレンスで大々的にスピーチもしない。アジャイルのカンファレンスにおいてさえ、そうなのだ。彼らは以前のようにコンサルタントとして雇われているわけでもないし、ちょっとくたびれて見える。
Scrumはどうだろう?Scrumはいたるところで深刻な問題に直面している。反動に苦しめられつつあるのだ。これはScrumそれ自体に問題があるのではなく、Scrumのを取り巻く事情によるものだ(実力もないのにScrumで利益を得たがる連中のことだよ)。あらゆる詐欺じみた誇大広告は、そのうちこの問題に苦しめられることになるだろう。2000$支払って他の50人と一緒に2日間のセミナを受講するような人々を皆Scrumマスタに仕立て上げて、わざわざトラブルを呼び込むのだ。Scrumの人気はまだ高いが、休みもなく風船を膨らませ続ければ、いずれ破裂するにきまっている。
折角Scrumには素晴らしいアイデアが幾つもあるのに、勿体ない。
その代わりに今となっては、大小様々な組織の様々な種類のプロジェクトやプログラムの成功に裏打ちされた我々の活動によって、アジャイルの進化は牽引されているのだ。「アジャイル」は、むかしからやってきたことに当てられる単なるパッチではない。アジャイルは、ビジネス的に良い結果を出すことにフォーカスしつつ、あなた方の活動すべてに関する態度を改めるものなのだ。アジャイルは、CXOに対しては「良いソフトウェアを迅速に、低コストで」という意味合いになり、ソフトウェア開発者には「Scrum、TDD、継続的統合」を意味するものになる。
ブームとどんちゃん騒ぎの終わりを認識し、アジャイルムーブメントによってもたらされた多くのグッドプラクティスを学び、それらをしっかり維持して、次の大きな波を追い求める際にも、それらを捨て去らないようにしたいものだ。
私のアドバイスは、こうだ。アジャイルからグッドプラクティスを見つけ出しなさい、そしてそれらを他のグッドプラクティスと組み合わせなさい。我々がEssential Unified ProcessをRUPのコアコンセプトから作り上げたとき、そうしたように。進歩の過程で取り組んだ物事を捨て去るような真似は、決してしてはならないのだ。スマートに行こう!
Leave a Reply
You must be logged in to post a comment.