アジャイル開発:成熟期の到来、その道のりThe Rational Edge (30)(1/2 ページ)

Rational Edgeより:本稿は、アジャイルカンファレンスの参加者の状況、セッションの内容、議論の変化に焦点を当てることで、アジャイルソフトウェア開発プロセスの成長と発展を振り返るものである。

» 2004年11月25日 12時00分 公開
[Gary Pollice(Professor of Practice, Worcester Polytechnic Institute),@IT]
ALT 本記事は、IBM developerWorksからアットマーク・アイティが許諾を得て翻訳、転載したものです。

  子供が大人へと成長していく課程で、絶えず肉体的・精神的変化を経験するのと同じように、発想や知的活動も成長し、成熟する課程で同じような変化を経験する。そしてこれらは、洗練され、深みを増し、最終的には知識コミュニティの真のメンバーとして受け入れられるものだ。成熟の速度はまちまちである。成長がなく、厳しい目に耐えられない発想は捨てられていく。

 筆者は数年前より、幼年期から成熟するまでのアジャイルソフトウェア活動の悪戦苦闘を、笑いや涙、恐怖感をもって追いかけてきた。筆者はアジャイル手法に常に価値を見いだしてきたが、(自分が関わった開発プロジェクトの)初期段階から導入したことはない。アジャイルの導入は、一般的にはリスクが低く、大金が絡まない案件に限っていた。だが現在は、これらの手法がソフトウェアエンジニアの“ツールキット”として適切な居場所を見つけたと考えるようになった。正しく使えば卓越した共同作業が可能になる。プロジェクトとプロセスがうまくマッチするなら、重要で大金の絡むプロジェクトにアジャイルプロセスを適用することに対してさほど消極的ではなくなった。本稿では、初期から最近(そして前回)のXP/Agile Universeカンファレンスまでのアジャイル活動の変遷と併せ、筆者がこのように考えるようになった経緯について説明する。

◆ アジリティ:黎明期

  筆者が初めて参加したアジャイルカンファレンスであるXP2001はサルディニアで開催された。参加者数は200人。多くの人がここで「アジャイル」とはいったい何なのかを学んだ。Extreme Programming(XP)に関する書籍や論文を読んではいたが、実際に利用する人との面識はなかった。

 当時、XPとアジャイル活動には、YAGNIやDTSTTCPWなどの奇妙な頭字語を使うカルト的な信者がいた(注1)。筆者は誰かに秘密の合言葉を教えてもらうのが待ち遠しかったものだ。ソフトウェア開発分野の古株の中にはアジャイル方法論に好意的なメンバーもいたが、一般的には、消える運命にある突飛な発想だとして一蹴されていた。

 XP2001の参加者の多くはコンサルタントで、クライアントの組織にXPを売り込む取り組みや、自分たちが遭遇した問題についての話が出た。XPを大規模プロジェクト向けにスケールアップすることについて話す者もいたが、そもそもXPが小規模プロジェクトで何度もうまくいくことを証明した者はいなかった。Kent Beck氏、Martin Fowler氏、Robert Martin氏など、これらのコンサルタントは非常に聡明で尊敬に値する人物だった。彼らにはソフトウェアの構築に関する深い知識があった。その中の1人はUMLに関する人気の高い本まで書いている(注2)。話を聞くだけの価値はあると思えたのだ。

 筆者は完全ではないものの、アジリティとXPに関する知識を深めてそのカンファレンス会場を後にした。特定のソフトウェア開発プロジェクトではXPをかなり有効に利用できることは知っていた。また、メリットを享受するためにXPの手法をすべて、あるいは正統的なやり方で利用する必要がないことも理解した。実際、筆者は数年前から何らかの形でこれらの手法を複数使っていた。そして、XPとRational Unified Process(RUP)の間に多くの共通点があることも明確に悟った(注3)。

 その翌年、XP/Agile Universeカンファレンスはシカゴ郊外で開催された。そのときも、カンファレンスのスポンサーを含め、多数のコンサルタントが参加した。当時、Grady Booch氏が代表だったRational Software CorporationはAgile Allianceのメンバーで、このカンファレンスにも参加をしていた。Rationalはまだ部外者的に見られていたが、コミュニティ内での提携を進め、そこでいろいろと学んでいた。このカンファレンスには、学会や調査業界の著名なメンバーが集まった。南カリフォルニア大学のBarry Boehm氏(COCOMOとスパイラルライフサイクルで有名なBarry Boehm氏である)や、Capability Maturity Model(CMM)の開発で中心的な役割を担ったSoftware Engineering InstituteのWatts Humphrey氏が基調講演を行った。

 その中でBoehm氏は、「アジャイル活動は業界に新風を吹き込んだ」と語った。この一言は、アジャイル活動にとって大きな意味があった。この言葉が多様なアジャイル関連問題に関する意見交換の道を切り開いたのだ。XPが特効薬でなかったことをいまだに認めたがらない強硬論者もいるが、一部はもっと中道的だ。Humphrey氏の話はさらに論争を巻き起こした。同氏は測定基準について話し、エンジニアリングやコントロールの観点を意見交換の中に持ち込み、最終的には発想の相互交流を助長した。

 カンファレンスの実証ワークショップでは、アジャイル手法の有効性を判断するために役立てるデータの収集と実験の実施に多数の参加者(大半は学会関係で、業界関係はわずかだった)が関心を示した。これ以前にアジャイル手法に関する調査でわれわれが目にしていたのは、ペアプログラミングの有効性測定手法に関するLaurie Williams氏の作業が唯一といってよかった。同氏の結果は、ペアプログラミングが有益であることを示唆していたが、その調査結果を確認するためにはもっと多くのデータが必要だった。多くの人々は、これをはじめとする有名なアジャイル手法のデータ収集に対して意欲的に感じられた(注4)。

 だが、2003年8月にニューオーリンズで開催された次のXP/Agile Universeでは参加者の数が減ってしまった。経済が悪化し、直前にユタ州でAgile Development Conferenceが開催されたため、ニューオーリンズに来ていたはずの参加者を奪われてしまったのだ。筆者も、このときのカンファレンスには落胆した。アジャイル手法の普及に向けて期待が高まった前回からほとんど変化がなかったように思えたのだ。しかし、コンサルタントは1年後にもアジリティを大衆に見せられたことで互いに喜び合っており、この方法論が依然として彼らの分野のもののように思えた。Ivar Jacobson氏などが基調講演で、XPが登場するはるか以前からいかに多くのアジャイル原理が存在していたかを指摘していたが、筆者にはコミュニティがあまり進歩していないように思えた。

 しかし、Microsoftをはじめ、社員を出席させる企業は増えていた。(進歩がないように思えたカンファレンスだったが)唯一の救いは実証ワークショップの存在だった。われわれは、カナダ国立研究評議会のHakan Erdogmus氏によるものをはじめ、いくつかの実験について議論した。同氏は、テストファーストプログラミング(TFP)の有効性を判断すべく行った実験で、(筆者が教えている)学生が実証ソフトウェアエンジニアリング講義の中で行った実験で得た結果と同じような結果を得た(注5)。TFPはコード品質を高めてくれるように思えるが、確信を持って有効性を主張できるほどの結果は統計的には得られなかった。Erdogmus氏からは、同氏の発見の確証を得るにはもっと実験を行う必要があったという話を聞いた。

 同カンファレンスの教育関係者向けセッションはまずまずだった。筆者は、ほかの教育関係者がアジャイル手法に関して行っている講義を見たくなり、もう少しで学界入りする寸前まで行った。彼らからは「自分たちの講義に各種手法を取り入れるための方法をいろいろと試してみたが、そのために、ほかの内容を犠牲にしなければならなかった」との意見が多く出ていた。

 筆者はカンファレンス終了後、何か足りないものに気付いた。コンサルタントも学会の人間も大勢いたのだが、実際にXPとアジャイル手法を使用する顧客が少なかった。1つだけ非常に目立ち、注目に値する例外が、Saberの航空券予約ソフトをインプリメントし、保守を行っている企業のバイスプレジデントだった。この人だけは、自分の部下がXPで成功したことを報告したのだが、ほかの顧客から情報が出ることはほとんどなかった。筆者は、これらの手法が本当にビジネス環境に進出してきたらどうなるのか思いをめぐらせた。

       1|2 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ