まあまあ古い講演なのですが、社内で話題になっていた、『達人プログラマー』で有名なDave Thomas氏によるAgile is Deadの講演動画を観ました。このブログ記事では、簡単ですが、その動画のサマリをお伝えしたいと思います。
Agile is Dead?
ご存知の方も多いかと思いますが、Dave Thomas氏はアジャイル開発宣言に名前を載せているようなアジャイル開発における主要メンバーの一人とも言える方です。この講演の元ネタ的な位置付けとして、同氏による「Agile is Dead (Long Live Agility)」というブログ記事があるようです。このブログでは、アジャイルが始まった当初の目的は、より良いソフトウェアをより迅速に開発するための方法論を提供することだったはずが、時間が経つにつれてアジャイルはその本質を失い、形骸化し、企業によってマーケティングツール、マーケティング用語として誤用されるようになったことについて述べています。
Agileがいつの間にか名詞になってしまった
本講演では、”agile”はそもそも「形容詞」であることを指摘します。日本語に訳すと「敏しょうな〜」などのようなイメージでしょうか。アジャイル開発=俊敏な開発、ということです。何かを形容するための用語が、いつの間にか「Agile」単品が名詞かのように、かつ単語が大文字からスタートしており固有名詞化されているというところを指摘します。
なぜこのようになってしまったか、について氏は「名詞にすると売り物にできる」と主張しています。更には売り物になることで「恐怖を煽ったり」「カッコよさをちらつかせて」マーケティングするようになります。様々な企業がいつの間にか売り物として展開することで、その本質が忘れ去られていることを アジャイルは死んだ(Agile is Dead)と言っているのです。
Agilityにしよう
Agileは上記のような使われ方をされてしまうので、変わりにAgilityという元々名詞である用語に変えようというのです。講演ではあまり捉えきれなかったので以下はブログからの引用です。
You don’t use agile tools—you use tools that enhance your agility.
https://pragdave.me/thoughts/active/2014-03-04-time-to-kill-agile.html
個人的には上記の例文が一番しっくりきました。「敏しょう性の高いツールを使うのではなく、俊敏性を実現/加速するためのツールを使う」。日本語だと形容詞:敏捷「な」と名詞:敏捷「性」でわかりにくい気がしますが、「アジャイル・ツール」です!と売られているものを選択するのではなく、「これは我々にとって敏捷性を上げるツールか?」という観点で選択する、というイメージでしょうか。このように、物事の本質を突き詰めて考えること、自分たちの文脈にあっているかを考えることの重要性に改めて気付かされます。
本で学んだことが全てではない
名詞で売られたアジャイルの陥りがちな問題点として、「あの本に書いてあるフレームワークに則って〜」などのようなことになり、自分たちの現状にマッチしたフレームワークであるか否かを判断せずに取り入れてしまうことについても指摘しています。このような課題に対して、開発チームの文脈を考慮に入れて、カスタマイズして導入するなども必要になる、と提案しています。本に書いてあるからやろう、ではなく、それが自分たちのAgilityを実現するものなのかを考慮しなさい、場合によってはカスタマイズをしても良い(むしろ後者が大事)と理解しました。
勇気をもって立ち向かおう
講演の最後に氏は「勇気を持ち発言/行動すること」が重要であるとメッセージを伝えていました。開発者は問題を詳細に理解し、それを解決できる能力を持つ人である。だからこそ勇気をもって、「手を動かしてみなければ分からないことが分からない」と伝えることが重要だといいます。会社や組織のレベルではこのような警鐘に対してしっかりと向き合う勇気が必要だと。
終わりに
2015年こ講演とはいえ現在にも通ずるものが多くあるかと思います。むしろ、2020年代だからこそ改めて本質について考え、プロジェクト毎の文脈に応じて実践をしていかなければならないと思いました。また、最後のCall outにもあるように、技術者だけでなく組織の管理者、経営者がアジャイルについての正しい理解をしなければならないということは耳が痛い話でもあるかと思いますが改めて心に留めておきたいことでした。