なぜ、平鍋氏はアジャイル開発とよりを戻したのか?
セッションの後半は、及部氏と平鍋氏がお互い聞きたいことに答えるというパネルディスカッションスタイルで進められた。最初の問いは及部氏から平鍋氏に向けられた「アジャイル開発とよりを戻したのはなぜですか?」。
及部:Agile Japanのイベント開催後に、平鍋さんが「日本ではアジャイルが受け入れられないんじゃないか。これだけやってきて、この結果だから、もう少しやってダメだったら、もうアジャイルと言うのをやめようと思っている」と言っていたことをコミュニティスタッフが書いたブログを見ました。それでも、今もアジャイルを続けている理由って何ですか。
難しい質問だと前置きしつつ、Agile Japanのおかげで救われていたと平鍋氏は語る。
平鍋:海外のカンファレンスと何が違うのか、どうしたら双方向のコミュニケーションができる参加型のイベントにできるのかをずっと考えていました。やっているうちに、イベントのコンテンツ作り自体がアジャイルなんだとか、何が正しいかではなく、行動を起こすことが重要だということに気づいて。
あとは圧倒的に、環境の変化が大きかったですね。2010年くらいはWeb系のメガベンチャーがアジャイル開発やスクラムに注力し、内製化で強いチームを作り始めたことも大きな要因だったと思います。また、Regional Scrum Gathering Tokyoが果たした影響も大きいと思います。日本で大きくスクラムコミュニティが成長しました。
よいソフトウェアとは、どんなソフトウェアか?
次の問いは、平鍋氏から及部氏に投げかけた「よいソフトウェアって、どんなソフトウェアだと思うか?」という質問。平鍋氏は採用面接で必ず聞いているのだという。
及部:そのよいソフトウェアが存在してる状態が、どういう状態なのかを考えてみたんです。私はそのソフトウェアに関わる人たちが、みんな生き生きしてる状態、元気で笑顔でいる状態、自分の家族が誇らしげに「あのソフトウェアを作っているんだ」と言える状態なんじゃないかって。でも、それって理想論で実現するのは当然難しい。
なぜなら、それを実現するために必要なのはエンジニアリングだけでなくて、作るプロセスやチーム・組織など、さまざまな要素が必要なんですよね。そして、よいソフトウェアを作ろうとする活動自体が、この問いに対する答えでもある。だから今後も活動を続けていきたいと思います。
平鍋:2000年以降のソフトウェア工学には「カスタマー」とか「ビジネス価値」という言葉が頻発するのに、機械工学ではその言葉は出てこないんですよね。たぶん内部的なことと外部的なことがつながっているのが、ソフトウェアの特性の一つなんじゃないかって、最近思っています。
エンジニアにとってのアジャイル開発とは?
続いての質問は、及部氏から平鍋氏に向けた「エンジニアにとってのアジャイル開発とは?」。アジャイルコミュニティで10年活動を続けてきたが、若手が少なく、アジャイル開発はエンジニアにとっての本分ではなく、マネジメント側が考えるものだという思い込みに縛られているのではないか。エンジニアがアジャイル開発を学ぶ意味を聞いてみたいと、及部氏は問いかける。
平鍋:XPを学んで得た気づきを一つ紹介します。僕はアーキテクチャを考えることが好きだったんですね。作り始める前に、後から入るだろう追加仕様を先読みしてコードを書いていた。例えばif文の分岐とかですね。でも、ケント・ベックは増えてきたら考えろと言うんです、実践してみるとシンプルであまり凝った構造にしない方が読みやすし、拡張性にもよい影響を与える場面が何度もありました。大きな発見でしたね。変化を前提にしたソフトウェアアーキテクチャ設計というものは、決して大きな先読みを基礎にするのではなく、シンプルさを大切にする進化へとその焦点をシフトしたのです。
次のムーブメントに向け、動いて、考えて、また動く
最後に平鍋氏は、NEXTアジャイルのような新しいムーブメントが2030年くらいに起きるのではないかと大胆に予想し、今後も活動していきたいと宣言。オリンピック記録を持つ高野進氏の言葉を引用し、「まずは動いて、考えて、また動く」ことで日本の事例をもっと増やしていきたいと想いを語り、セッションを締めた。