108
最近アジャイル界隈で よく聞く話

History_of_waterfall_append

Embed Size (px)

DESCRIPTION

This Presentation is showed on July 8. it base on History of WaterFall on Agile-Samurai YokohamaDojo.

Citation preview

Page 1: History_of_waterfall_append

最近アジャイル界隈で

よく聞く話

Page 2: History_of_waterfall_append

「自分の現場がウォーター

フォールで全然ダメで

それをアジャイルなら

変えられないかと思って」

Page 3: History_of_waterfall_append

いったい誰と戦って

いるんだ・・・・・

Page 4: History_of_waterfall_append

ちょっと待て

Page 5: History_of_waterfall_append

「自分の現場がウォーター

フォールで全然ダメで

それをアジャイルなら

変えられないかと思って」

Page 6: History_of_waterfall_append

そもそも

Page 7: History_of_waterfall_append

ウォーターフォールって

だめなの?

Page 8: History_of_waterfall_append

なんでそんなものを

みんな使っているの?

Page 9: History_of_waterfall_append

というか

ウォーターフォールって

なに?

Page 10: History_of_waterfall_append

いつどこで

生まれたものなの?

Page 11: History_of_waterfall_append

ということで我々は

ウォーターフォールの

起源に迫ってみることにした

Page 12: History_of_waterfall_append
Page 13: History_of_waterfall_append

History of WaterFall

瀬宮 新(@shin_semiya)

Page 14: History_of_waterfall_append

ウォーターフォールだと

思われているもの

Page 15: History_of_waterfall_append

・よくある仕様変更

・手戻りしない直列的な工程

・大量の書類

・絶対固定の納期と予算

→そしてデスマーチへ

Page 16: History_of_waterfall_append

本当の

ウォーターフォール

ってそもそもなに?

Page 17: History_of_waterfall_append

ウォーターフォールの起源

Winston.W.Royce

Managing the Development

of Large Software Systems

という論文(5ページくらい)

Page 18: History_of_waterfall_append

分析

実装

Page 19: History_of_waterfall_append

要求

分析

設計

実装

運用

試験

Page 20: History_of_waterfall_append

2回実施せよ

(プロトタイプ)

テストを計画せよ

(設計よりも前に)

顧客をまきこめ

(反復的なチェック)

Royceは言った(1)

Page 21: History_of_waterfall_append

当初のRoyce案では

ウォーターフォールを

反復型開発として

して提案していた

Page 22: History_of_waterfall_append

仕様変更があったら

費用/納期を追加しろ

仕様変更があったら

もう一回やりなおせ

Royceは言った(2)

Page 23: History_of_waterfall_append

つまり

Page 24: History_of_waterfall_append

ここさぁなんかイメージと 違うんだよね

Page 25: History_of_waterfall_append

すると

Page 26: History_of_waterfall_append

おかわり=反復的な開発

Page 27: History_of_waterfall_append

なるほどなるほど

Page 28: History_of_waterfall_append

それでは

Page 29: History_of_waterfall_append

どうしてこうなった

Page 30: History_of_waterfall_append
Page 31: History_of_waterfall_append

時は1980年代

Page 32: History_of_waterfall_append

・システム開発は大規模化

・税金による予算化に

「おかわり」は不向き

・予算と納期の追加が続発

→「おかわり」しすぎ!

Page 33: History_of_waterfall_append

再発防止策が必要だな

Page 34: History_of_waterfall_append

ということで

Page 35: History_of_waterfall_append

DOD-STD-2167(1985.6)

(文書をいっぱい作ろう!)

DOD-STD-2167A(1988.2)

(工程の反復の否定

ウォーターフォールは

「おかわり」禁止!)

Page 36: History_of_waterfall_append

反復型開発が否定され

直列的ウォーターフォール

が生まれた

Page 37: History_of_waterfall_append

DOD-STD-2167A(1988.2)

を真に受けると

・ウォーターフォール

(絶対に「おかわり」禁止)

・ほかの開発手法

(大規模開発に不向き)

の二択

Page 38: History_of_waterfall_append

そして滝は詰まり始めた

Page 39: History_of_waterfall_append
Page 40: History_of_waterfall_append

一方、日本では

Page 41: History_of_waterfall_append

1985. 日本電信電話 設立

1988. NTTデータ 設立

1990. バブル崩壊

(システム要員の外注化)

Page 42: History_of_waterfall_append

日本ではSIが発達し同時に

開発手法もアメリカから

輸入された

Page 43: History_of_waterfall_append

システム開発の普及

・大規模システム

= ウォーターフォール

・書類が山盛り

・「おかわり」禁止

がデファクトスタンダードに

Page 44: History_of_waterfall_append
Page 45: History_of_waterfall_append

輸入された経緯はわかった

Page 46: History_of_waterfall_append

日本では今でも

ウォーターフォールが

炎上している

Page 47: History_of_waterfall_append

それではアメリカでは

炎上しなかったの?

Page 48: History_of_waterfall_append
Page 49: History_of_waterfall_append

もちろん大炎上したよ

Page 50: History_of_waterfall_append

大炎上する案件が複数発生

Page 51: History_of_waterfall_append

再発防止策が必要だな

Page 52: History_of_waterfall_append

DOD-STD-2167A(1988.2)

MIL-STD-498(1994.12)

(頻繁な顧客レビューの推奨)

DOD 5000.2(2000)

(反復型および

スパイラル型を推奨)

Page 53: History_of_waterfall_append

開発は反復型重視へ

回帰した

Page 54: History_of_waterfall_append

さらに

Page 55: History_of_waterfall_append

XP 白本(1999)

アジャイルマニフェスト(2001.2)

(1993.のJacob Nielsen のUIテスト

あたりをみても業界全体が

反復的開発と頻繁なFBに

傾いている)

Page 56: History_of_waterfall_append

反復型開発の復活

Page 57: History_of_waterfall_append

直列的WF

改善派 反復的WF

アジャイル 革命派

に対する反動!

Page 58: History_of_waterfall_append

つまりダメな

ウォーターフォールに

嵌り込んでいたのは・・

日本だけ!

Page 59: History_of_waterfall_append

嵌っている・・首まで・・

Page 60: History_of_waterfall_append

つまりダメな

ウォーターフォールに

嵌り込んでいたのは・・

日本だけ!

Page 61: History_of_waterfall_append

これを知った時、私は

Page 62: History_of_waterfall_append

こう思いました

Page 63: History_of_waterfall_append

調達標準は反復型重視へ

回帰した

Page 64: History_of_waterfall_append
Page 65: History_of_waterfall_append

ではウォーターフォールは

どうあるべき?

Page 66: History_of_waterfall_append

・プロトタイプを作る

・頻繁な顧客フィードバック

・反復的で機能追加型の開発

にシフトすべき

Page 67: History_of_waterfall_append
Page 68: History_of_waterfall_append

そもそも

ウォーターフォール <<<<(壁)<<アジャイル

なのか?

Page 69: History_of_waterfall_append

(一面の真実)

仕様変更が許容範囲に収まる場合

ウォーターフォールのほうが

アジャイルよりも安いし早い

完全にアジャイルに進めると

対象やドメインモデルが複雑だと

破綻する可能性が高い

Page 70: History_of_waterfall_append

ではどちらを選択すべきか?

Page 71: History_of_waterfall_append

慣れた人に任せるべきだ(Martin Fawler)

Page 72: History_of_waterfall_append
Page 73: History_of_waterfall_append

そもそもの問題として

Page 74: History_of_waterfall_append

ウォーターフォールだと

思われているもの

Page 75: History_of_waterfall_append

・よくある仕様変更

・手戻りしない直列的な工程

・大量の書類

・絶対固定の納期と予算

→そしてデスマーチへ

Page 76: History_of_waterfall_append

問題を突き詰めると

・抜け漏れのない要求仕様

・誤りのない前工程

・納期と費用の精密見積り

は不可能だ!

Page 77: History_of_waterfall_append

こういう人がいる

Page 78: History_of_waterfall_append

日本のウォーターフォール

における開発では

Page 79: History_of_waterfall_append

手強い敵がいる

Page 80: History_of_waterfall_append

無責任な顧客

多重下請け構造

常に過重なタスク

デスマ根絶のため

どげんかせんといかん!

Page 81: History_of_waterfall_append

彼らが立ち上がった!

Page 82: History_of_waterfall_append
Page 83: History_of_waterfall_append

俺達も続くぞ!

Page 84: History_of_waterfall_append

終わりのないデスマを

アジャイルにより根絶する

俺がガンダムになる!

俺達がガンダムだ!

Page 85: History_of_waterfall_append
Page 86: History_of_waterfall_append

そんなにうまくいくか?

Page 87: History_of_waterfall_append

本当にあなたは

ガンダム(アジャイル)に

なれますか?

あなたの隣の同僚は?

あなたの会社の偉い人は?

あなたの顧客は?

Page 88: History_of_waterfall_append

アジャイルは人に

多くを求める

Page 89: History_of_waterfall_append

アジャイルチームに

要求される能力

・自己組織化

・コマンドコントロール不要

・改善する意思

・成果責任

Page 90: History_of_waterfall_append

そしてなにより

・意思決定できるPO

・権限移譲と信頼する経営陣

・お金を交渉できる能力!

が必要になる。

Page 91: History_of_waterfall_append

誰もがこの働き方を

気に入るわけじゃない

Page 92: History_of_waterfall_append

本当にあなたは

ガンダム(アジャイル)に

なれますか?

あなたの隣の同僚は?

あなたの会社の偉い人は?

あなたの顧客は?

Page 93: History_of_waterfall_append

手強い敵がいる

Page 94: History_of_waterfall_append

本当にガンダムが必要か?

Page 95: History_of_waterfall_append

量産機で勝てる戦術も

必要ではないか

Page 96: History_of_waterfall_append

解決したかったもの

Page 97: History_of_waterfall_append

・よくある仕様変更

・手戻りしない直列的な工程

・大量の書類

・絶対固定の納期と予算

→そしてデスマーチへ

Page 98: History_of_waterfall_append

そもそもの問題として

・抜け漏れのない要求仕様

・誤りのない前工程

・納期と費用の精密見積り

は不可能だ!

Page 99: History_of_waterfall_append

解決方法は

アジャイルだけではない

Page 100: History_of_waterfall_append

量産機で勝てる戦術

=反復的ウォーターフォール

Page 101: History_of_waterfall_append

開発を複数のサイクルに分割

→後のサイクルで改善可能

・仕様の抜けに対応しやすい

・小さいサイクルなら制御可

・考慮漏れに対応しやすい

・進捗速度が上がる

Page 102: History_of_waterfall_append

・「強い」POがいなくても

開発可能

・比較的既存の体系を

流用しやすい

・契約形態についても同様

機能の分割納入に近い。

Page 103: History_of_waterfall_append

・偉い人や顧客を

(比較的)説得しやすい

・重量級開発にも

(比較的)耐えられる

Page 104: History_of_waterfall_append
Page 105: History_of_waterfall_append

では日本のソフトウェア開発は

これからどうなる

Page 106: History_of_waterfall_append

・反復型ウォーターフォール

・アジャイル

・そのほか

に分かれると思う

残念なウォーターフォールも残るだろう

Page 107: History_of_waterfall_append
Page 108: History_of_waterfall_append

ご清聴ありがとうございました