最近、アジャイルソフトウェア開発に注目が集まりつつある。アジャイル開発とは、短期間で反復(イテレーション)を繰り返す開発手法の総称であり、スクラム、エクストリームプログラミング(XP)、FDD(機能駆動開発)など、さまざまな手法が考案されている。最大の特徴は、ソフトウェアの仕様を固定せず、変化する環境やユーザーニーズに柔軟に対応しつつ、必要な機能から実現し、完成したものからユーザーにリリースしていく点にある。

 「プロセスやツール」よりも「人とのコミュニケーション」を、「ドキュメント」よりも「動作するソフトウェア」を、「契約交渉」よりも「顧客との協調」を重視する点も重要な特徴である。

 アジャイル開発については、数年前に一度ブームがあったので、今回のブームは二度目ということになる。前回のブームは、ソフトウェア技術者が中心で、一部ではかなり熱く盛り上がったものの、ソフトウェア業界に広く浸透することなく終息してしまった感がある。それに比べて今回は、着実にソフトウェア業界に広がりつつあるように思える。

 例えば、前回のブームの時には、専門誌の記事も「アジャイル開発とは何か」という解説や、「アジャイル開発をやってみました」という記事が多かったような記憶があるが、最近は「アジャイル開発を実践して成果を上げている」「アジャイル開発でソフトウェア開発の現場が活性化した」という類のものが多い。また、IBMやマイクロソフトといった大企業がアジャイル開発を実践し、推奨するようになったことも大きいように思う。

 独立行政法人情報処理推進機構(IPA)も昨年秋から、アジャイル開発を含む非ウォーターフォール型開発に関する調査に着手した。また、4月には、東京でアジャイル・ジャパン2010が開催されることも決まっている。このイベントは昨年に続いて2年目である。

 ちなみに、アジャイル開発の発祥の地である米国をみると、アジャイル開発はもはやブームを通り越し、ソフトウェア開発の主流になりつつある。例えば、米国の調査会社フォレスター・リサーチによれば、アジャイル開発を利用している企業の割合は、2005年の14%から07年には26%に、09年第3四半期には45%に達している(35%の企業は、アジャイル開発が主流になっていると答えている)。今回のブームで、日本でもアジャイル開発が定着することを期待している。