ウォーターフォールの次に行け!0日本のソフトウェア開発を今一度洗濯いたし申し候(1/2):企業のIT・経営・ビジネスをつなぐ情報サイト EnterpriseZine (EZ)(情報元のブックマーク数)

ウォーターフォール or アジャイル?!

最近「アジャイル開発」が大きく盛り上がっているように感じます。大規模なイベントが開催され、MicrosoftIBM等の大手も参画。筆者の周辺では「iPadか?アジャイルか?」という勢いを感じます。最近ではアジャイル支援の仕事も増えてきました。
では、アジャイル開発のどんなところが凄いのでしょう? 本に書いてある通りのアジャイル開発を実践すれば本当に効果が出るのでしょうか? 皆さんの中には、トップダウンアジャイル導入が決まり、「どうしたらいいんだろう」と感じておられる情報システム部門の方もいらっしゃるかもしれません。
この連載では主にユーザー企業の情報システム担当者の皆さんに向けて、筆者が長年のアジャイルの実践経験を通じて学んだ「アジャイル開発における導入成功の秘訣」をこっそりお話いたします。連載の第一回はイントロダクションとして、アジャイル開発の導入のメリットをご説明しましょう。

ウォーターフォールの次に行け!〜日本のソフトウェア開発を今一度洗濯いたし申し候 (1/2):EnterpriseZine(エンタープライズジン)

現状ウォーターフォール型の開発だと張りぼてなプロトタイプを承認して動き出すけど・・・・まぁ酷な話だよなぁ、ユーザにとっても。

正直なところ、動いているアプリケーションを見ないうちに、仕様を決めるのは相当に難しいことです。開発メンバーだって、実際にやってみないことには技術的に実現可能かどうかはわからないのですから。その後も、中間分析や設計の段階でキングファイルに一杯のドキュメントが作られ、それぞれに承認を求められますが、大量の技術的な文書を精査しろと言われても厳しいのが正直なところでしょう。私がその立場でも難しいといわざるを得ません。

ウォーターフォールの次に行け!〜日本のソフトウェア開発を今一度洗濯いたし申し候 (1/2):EnterpriseZine(エンタープライズジン)

某A社さんは要件定義をアジャイルで作る感じでしたね。確かに要件を決めるにはアジャイルってよいかもね。

アジャイル開発はこれまで見てきたような「プロジェクトの失敗要因」に対応します。その肝となるのが「イテレーション」もしくは「スプリント」と呼ばれる2週間〜4週間程度の開発期間の繰り返しです。基本的なアジャイルの手順では、プロジェクト開始時に見積もりを行い、機能毎のリリースの予定をざっくりと決め、イテレーションを何回か実施します。
イテレーションでは、設計から開発、テスト、リリースまで必要なすべての工程を行い、終了時にはかならず「実際に動くアプリケーション」がアウトプットされます。イテレーションの開始時には、前回リリースした「実際に動くアプリケーション」を見ながら、顧客と開発者が密な会話を行って、次の開発内容を決定します。また、イテレーション終了時には実際の成果を判断します。そうしたサイクルを繰り返すことによって、徐々にシステムの機能を充実させていくのです。

ウォーターフォールの次に行け!〜日本のソフトウェア開発を今一度洗濯いたし申し候 (2/2):EnterpriseZine(エンタープライズジン)

screenshot