
![]() |
![]() |
![]() |
![]() |
| 司会:森屋英治 氏 株式会社アークウェイ 代表取締役 |
平鍋健児 氏 株式会社チェンジビジョン 代表取締役社長 |
小井土亨 氏 NPO INETA Japan 理事 |
倉貫義人 氏 TIS 株式会社 社内ベンチャーカンパニー 「ソニックガーデン」代表 |
「前編:日本におけるアジャイル ソフトウェア開発のこれまで」
| 前編 後編 | 次のページへ → |
森屋 (司会) 今日はみなさんでアジャイルを中心にしたソフトウェア開発の展望の話をしたいのですが、ぜひ明るい話とともに本質的なことにも触れていけたらと思っています。
■アジャイルとの出会い
森屋 僕のアジャイルとの出会いは、小井土さんがきっかけを作ってくれたんです。1999 年か 2000 年くらいでした。
平鍋 XP (eXtreme Programming) のメーリングリストを立ち上げたのが 2000 年の春でした。
(編集部注: XP はアジャイル ソフトウェア開発の先駆けとなった開発手法。コーディングとテストを重視し、1 週間程度のサイクルで反復型の開発を行うなどの特徴を持つ)
小井土 出会いに関して言うと、その前にオブジェクト指向があって、その人たちがデザイン パターンやパターン ランゲージをやりはじめて、そして XPJUG (日本 eXtreme Programming ユーザ会) を立ち上げたんですね。
森屋 僕はその XPJUG の集まりに小井土さんに連れて行ってもらったのが初めてでしたね。そのとき平鍋さんが熱く XP について語っていて、それに賛同したというか。平鍋さんの話を聞いて、こんなロックな人がいるのかと思った。
XP のコミュニティに集まってくる人って、会社ではとんがっている人たちなのではないかと思いました。
倉貫 僕は XP との出会いが 2000 年の夏。当時まだ入社 2 年目で、大きなプロジェクトが終わって時間ができたのでオブジェクト指向の研修に行ったら一人だけ若い講師の人がいて、それが平鍋さんだった。そこで XP の話をしていて。それでアジャイルのコミュニティというものを知って。当時アジャイルのコミュニティは僕にとってなんだか行きやすい雰囲気でした。
小井土 アジャイルって、それまでと違ってソフトウェア開発の新しい視点に立っているんですね。XP を知るまではオブジェクト指向をコミュニティなどでやっていたのだけれど、なんとなく閉塞感を感じていて、そんなときにアジャイルや XP が登場して、これはソフトウェア開発にとって衝撃的な考え方だと思いました。
![]() |
平鍋 僕の出会いは 2000 年の始めにケント・ベックの XP の本 (XP を解説した“eXtreme Programming explained”。日本語訳『XP エクストリーム・プログラミング入門』) をアマゾンで洋書を買って読んだこと。「お前は俺か!」と思うぐらい入り込んで 2 〜 3 日で読んだ。
それで興奮して、これは訳さなきゃと出版社に電話したら「もうやってます」と言われて。それじゃあということで XP についての Web サイトを作ったりしました。その名も「エクストリームプログラミング」というサイトで、XP についての最新情報をアップデートするサイト。現在でも残っています。
■アジャイルに出会ったときの衝撃
小井土 みんなアジャイルに出会って衝撃を受けたところは同じで面白いですね。
小井土 テスト ファーストはかなり衝撃的でしたね。テスト ファーストはリファクタリングとほぼイコールですし、それをイテレーティブ (反復的) に作る、必要十分で作る、という点は人に教える点でも外せないですね。
いいオブジェクト指向設計とテストの容易性というのは、実はすごくマッチしていて、単にオブジェクト指向を教えるのではなくて、テスト指向とかテスト ファーストと合わせて教えることが多いです。
森屋 普通ライブラリを作るときには仕様ばかり見て作るんだけど、テストを先に書くと、使う人の視点に立って書くことになります。その視点の移動というのはすごく大事。ペア プログラミングでもそうだけど、使う人とプログラムを書く人の視点の変わり方は面白いですね。
■アジャイルを広めるには
森屋 みなさんがアジャイルを広めようとする活動の中で、うまくいったこと、感謝されたような例はありますか?
倉貫 僕が XP でよかったと思うのは、プロジェクトの終了時にスタッフみんなで振り返りをするときに、「次もアジャイル開発を採用するか?」と聞くと、みんなイエスと答えてくれるんですね、それは嬉しかった。
というのも、プロジェクトを始めるときに XP を採用したりすると、最初はやっぱりみんな戸惑っていて。最初のうちは反復ごとのミーティングなどで、僕だけが意見を言うような、僕だけのプロジェクトみたいな感じだったのが、繰り返していくと徐々にみんな意見を言い出すようになるんですね。それでみんなの自分のプロジェクトになっていく。
![]() |
で、XP がはっきり言っているのは、オブジェクト指向は再利用のためではなくてメンテナンス容易性あるいは継続的なデザイン進化のためだと言い切っていて、そのためにテストが容易で、テスト ツールがあって、だからオブジェクト指向を使うのだと。
つまり変化に対応するために、シンプルに設計してかつテストをしやすくする。そのためにオブジェクト指向を使うんだという、アジャイル開発が登場したおかげで実用性の面で初めてオブジェクト指向を使う理由が説明できたんです。
ここまでは工学的な面での利点なんですが、一方で人間系の面でいうと、反復ごとに「ふりかえり」というミーティングがあって、チームで気付きを共有したり、「うまくいってない」と報告できるとか「じゃあどうしたらできるだろう」と議論するといった、人間が持っている、やりながら学んで、それを自分たちのものにしていく、ということをプロセスの中に組み込んでいる。これはアジャイルが初めて明示したことじゃないかと思います。
森屋 本来、自分たちのためにプロセスがあるはずなのに、いままではどこかの外部から持ってきすぎたな、という反省がありますね。その気付きを与えてくれるのはアジャイルの大きな利点です。自分たちのものだから自分たちでプロセスを作ればいいと、最近そのことをすごく思いますね。
平鍋 いまのプロジェクトで悩んでいるのはこの問題だ、というときに、それを 1 週間など反復ごとのミーティングで共有して、それを自分たちのやり方を作り出して解決していこう、というのはまったく健全で、それが本当の近道なんですよね。
■何が普及の障害になっているか
森屋 とはいえアジャイルの普及には障害がたくさんありますね。
![]() |
森屋 大きな会社だと品質保証部というのがあって、リリース前にソフトウェアをそこでチェックしてもらうと「バグがないのはおかしい」って言われることもあります。でもアジャイルの手法を取り入れてテスト ファーストで作っているとバグは出ないんです。考え方が違うんですよね。
でもどんなプロジェクトでも、アジャイルが利用できる切り口はたくさんあると思います。問題に対してどうアプローチするか、という策がアジャイルや XP にはいっぱい詰まっているので、それを 1 つの足がかりとして自分たちになじむところから使っていけばいいと思います。
平鍋 現場をよくしようと考えたとき、今までの幻想として、「ソフトウェアは工業製品だから、何か問題があるならそれは設計に時間をかけて取り組まないのが悪い、とか、最初の計画がおかしいのではとか」って考えがち。でも現場にいる人は分かっていて、いくら計画や設計のマニュアルを事前に作ったってうまくいかないものはいかなくて、それより顧客を連れてきて一緒に対話しながら動くソフトウェアを作っていったほうが絶対にうまくいくって知っている。
だけどソフトウェアは工業製品だという幻想があまりにも強くて、いままで変化が起こらなかったんです。
森屋 それでも客先に常駐などして経験値を積んだ人は、何となく顧客の感覚や要望が分かるようになってくるんです。ただしそれには何年もかかる。
平鍋 アジャイルはその状態へ早く、1 カ月で持って行こうとしているんです。
倉貫 実は以前にパートナー企業さんも含めたプロジェクトをしていて、全員で反復ごとにミーティングをして意見などを定期的に聞いていたんです。そしたらある日パートナーに呼ばれて「僕たちにはそこまで考えさせないでくれ、計画通りに言われたことはやるから」と言われて衝撃を受けたことがありました。誰もがアジャイルを導入したいわけじゃないんだなと。
森屋 アジャイルだと、エンジニアが自由に作れる一方で責任も伴ってくるから、そのバランスは難しいですね。
平鍋 日本だと受託という仕事が IT 業界の中心みたいなところがあって、それだとソフトウェアをうまく作ってもそれほど評価されない。一方で海外だと自社製品やパッケージソフトを作っている人が多くて、それだといかに短期間で品質の高いソフトウェアを作れるか、というところが会社の強みになる。日本でも産業構造が変わらないとだめかもしれないと思っています。
![]() |
森屋 エンドユーザー企業の情報システム部門なら、うまくソフトウェアが作れれば社内のエンドユーザーが喜んでくれたり企業の直接の利益になったりするから、開発に対するモチベーションはずいぶん違ってくるでしょうね。
小井土 いい品質とかいい機能を追求しよう、という気持ちがないといけないですよね。そこがすごく大事なところです。
平鍋 そのためにはソフトウェアの価値をビジネスに転化できるようにしなければ。仕様どおりに作るのがよいのではなくて、本当にいいソフトウェア、本当にビジネスで価値を生み出すソフトウェアを作ろう、という気にならないといけないですよね。
森屋 そういう価値の転換できる方向に、IT 業界を持って行かなければなりませんね。
| 前編 後編 | 次のページへ → |
平鍋健児 氏 (株式会社チェンジビジョン 代表取締役社長)
日本におけるアジャイル ソフトウェア開発手法の第一人者。オブジェクト指向技術、アジャイル開発、ファシリテーションなどのコンサルタント。アジャイルプロセス協議会副会長。
小井土亨 氏 (NPO INETA Japan 理事)
一貫してソフトウェアの開発を生業としテストによる設計とリファクタリングを日課とする実践者。日本 XP ユーザ会 広報担当
倉貫義人 氏 (TIS 株式会社 社内ベンチャーカンパニー「ソニックガーデン」代表)
入社 2 年目でアジャイル開発手法に出会い、いくつものシステム構築案件をアジャイルによって開発してきた事例を持つ。日本 eXtreme Programming ユーザ会 (XPJUG) 会長として XP の普及にも活躍