TOPプロジェクト管理> ソフトウェアを早期に回収することのメリット
アジャイル開発
今こそ再考するアジャイル開発

第2回:アジャイル開発のメリット 〜 ユーザのメリット

著者:日本コンピューター・システム   新保 康夫
アッズーリ   濱 勝巳  2006/8/16
前のページ  1  2  3  次のページ
ソフトウェアを早期に回収することのメリット

   アジャイル開発は2週間から1ヶ月程度の短い期間を1つの開発プロセスとしており、その期間の開発プロセスを繰り返します。この1回の開発プロセスはイテレーションやスプリントなどと呼ばれます。1回のイテレーション終了後には、実際に動作するソフトウェアがリリースされます。

   つまり、ユーザは実際に動作するソフトウェアを非常に短期で入手できることとなります。現実問題として、1回のイテレーションだけで運用を開始できるかというと難しいのですが、数回のイテレーションを繰り返して、運用に値するレベルにシステムが達した時点で運用を開始することができます。

   たとえそれがプロジェクトの期間中であって、すべての機能が実装されていなくても、ユーザがイテレーションの終了時に運用に値するレベルと判断したらビジネスを開始することができるのです。ユーザはできるだけ早くシステムの運用を開始することができるので、競合他社よりも早く市場に進出することやシステムの投資に掛かる費用を早期に回収してキャッシュフローを高めることができるようになります。
回収期間の早期化
図2:回収期間の早期化


すべての要件の定義が確定している必要はない

   アジャイル開発ではすべての要件が確定している必要はありません。解決される要件さえ確定していれば、イテレーションを開始することができます。それ以外の曖昧な要件は次のイテレーションの開始前までに確定しておけばよいのです。

   つまり、すべての要求が決定できないことでビジネス機会の損失を防ぐという意味で、わかっている要求だけでビジネスが開始できるようになります。また実際にどれだけ要件を詳細まで詰めたとしても、実装される現物(実際に開発したソフトウェア)との誤差を埋めることはできません。もちろん、定義された時点で正しかった要件が実際のリリース時点まで正しいとも限らないのです。

   アジャイル開発では頭の中で要件を詳細に詰めることよりも、短期に現物をリリースすることを繰り返してその結果を現物にフィードバックして、コミュニケーションを進めることによって真の要件を確定できるようにするのです。

   仮に、確定した要求がイテレーションで実装された後に何らかの問題があってフィードバックされたとしましょう。その場合は思っていたものとすべてが違うということになっても、1回のイテレーションの費用の損失を被るだけであり、ユーザの真の要求を知ることができるようになります。

現物によるフィードバック
図3:現物によるフィードバック

   ソフトウェアを開発する際にユーザが最初にすべての要件を定義・確定することは、大変な労力と時間を一般的に費やします。それは現在においてもっとも必要としている要件を1つずつ定義・確定していくことになるので、ユーザにとっても「見える化」を確実に進めることになり、結果としてユーザ間コミュニケーションもよくなるのです。

前のページ  1  2  3  次のページ


日本コンピューター・システム株式会社  新保 康夫
著者プロフィール
日本コンピューター・システム株式会社
新保 康夫(しんぼ やすを)

本部企画室 コンサルタント、ITコーディネータ/ITCインストラクタ、システム監査技術者。
1975年 日本コンピューター・システムに入社。システム開発に従事し、プロジェクトマネージャを経て現在、コンサルタント業務に従事する。コンポーネントベース開発やアジャイル開発にも関与する。
「ソフトウェアプロセスレベルを向上させるCMMI活用術〜ソフトウェア開発の品格」をThinkITにて掲載。

有限会社アッズーリ  取締役社長  濱  勝巳
有限会社アッズーリ
濱  勝巳(はま  かつみ)

(有)アッズーリ 取締役社長。メーカ系ソフトウェア会社でファームウェアのプログラマを経て、フリーのエンジニアとして独立し、1999年に有限会社アッズーリを設立。オブジェクト指向、アジャイルプロセスを利用したエンタープライズアプリケーションを開発に従事し、現在は経営やプロジェクトマネジメントの視点でアジャイルプロセスを見つめ、情報システムベンダのあるべき姿を追求している。2003年よりアジャイルプロセス協議会副会長。


INDEX
第2回:アジャイル開発のメリット 〜 ユーザのメリット
  アジャイル開発の定義
ソフトウェアを早期に回収することのメリット
  重要なものを優先して実装することによる高い投資対効果