History of WaterFall
by
https://speakerdeck.com/semiyashin
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
最近アジャイル界隈で よく聞く話
Slide 2
Slide 2 text
「自分の現場がウォーター フォールで全然ダメで それをアジャイルなら 変えられないかと思って」
Slide 3
Slide 3 text
いったい誰と戦って いるんだ・・・・・
Slide 4
Slide 4 text
ちょっと待て
Slide 5
Slide 5 text
「自分の現場がウォーター フォールで全然ダメで それをアジャイルなら 変えられないかと思って」
Slide 6
Slide 6 text
そもそも
Slide 7
Slide 7 text
ウォーターフォールって だめなの?
Slide 8
Slide 8 text
なんでそんなものを みんな使っているの?
Slide 9
Slide 9 text
というか ウォーターフォールって なに?
Slide 10
Slide 10 text
いつどこで 生まれたものなの?
Slide 11
Slide 11 text
ということで我々は ウォーターフォールの 起源に迫ってみることにした
Slide 12
Slide 12 text
No content
Slide 13
Slide 13 text
History of WaterFall 瀬宮 新
Slide 14
Slide 14 text
ウォーターフォールだと 思われているもの
Slide 15
Slide 15 text
・よくある仕様変更 ・手戻りしない直列的な工程 ・大量の書類 ・絶対固定の納期と予算 →そしてデスマーチへ
Slide 16
Slide 16 text
本当の ウォーターフォール ってそもそもなに?
Slide 17
Slide 17 text
ウォーターフォールの起源 Winston.W.Royce Managing the Development of Large Software Systems という論文(5ページくらい)
Slide 18
Slide 18 text
分析 実装
Slide 19
Slide 19 text
要求 分析 設計 実装 運用 試験
Slide 20
Slide 20 text
2回実施せよ (プロトタイプ) テストを計画せよ (設計よりも前に) 顧客をまきこめ (反復的なチェック) Royceは言った(1)
Slide 21
Slide 21 text
当初のRoyce案では ウォーターフォールを 反復型開発として して提案していた
Slide 22
Slide 22 text
仕様変更があったら 費用/納期を追加しろ 仕様変更があったら もう一回やりなおせ Royceは言った(2)
Slide 23
Slide 23 text
つまり
Slide 24
Slide 24 text
ここさぁなんかイメージと 違うんだよね
Slide 25
Slide 25 text
すると
Slide 26
Slide 26 text
おかわり=反復的な開発
Slide 27
Slide 27 text
なるほどなるほど
Slide 28
Slide 28 text
それでは
Slide 29
Slide 29 text
どうしてこうなった
Slide 30
Slide 30 text
No content
Slide 31
Slide 31 text
時は1980年代
Slide 32
Slide 32 text
・システム開発は大規模化 ・税金による予算化に 「おかわり」は不向き ・予算と納期の追加が続発 →「おかわり」しすぎ!
Slide 33
Slide 33 text
再発防止策が必要だな
Slide 34
Slide 34 text
ということで
Slide 35
Slide 35 text
DOD-STD-2167(1985.6) (文書をいっぱい作ろう!) DOD-STD-2167A(1988.2) (工程の反復の否定 ウォーターフォールは 「おかわり」禁止!)
Slide 36
Slide 36 text
反復型開発が否定され 直列的ウォーターフォール が生まれた
Slide 37
Slide 37 text
DOD-STD-2167A(1988.2) を真に受けると ・ウォーターフォール (絶対に「おかわり」禁止) ・ほかの開発手法 (大規模開発に不向き) の二択
Slide 38
Slide 38 text
そして滝は詰まり始めた
Slide 39
Slide 39 text
No content
Slide 40
Slide 40 text
一方、日本では
Slide 41
Slide 41 text
1985. 日本電信電話 設立 1988. NTTデータ 設立 1990. バブル崩壊 (システム要員の外注化)
Slide 42
Slide 42 text
日本ではSIが発達し同時に 開発手法もアメリカから 輸入された
Slide 43
Slide 43 text
システム開発の普及 ・大規模システム = ウォーターフォール ・書類が山盛り ・「おかわり」禁止 がデファクトスタンダードに
Slide 44
Slide 44 text
No content
Slide 45
Slide 45 text
輸入された経緯はわかった
Slide 46
Slide 46 text
日本では今でも ウォーターフォールが 炎上している
Slide 47
Slide 47 text
それではアメリカでは 炎上しなかったの?
Slide 48
Slide 48 text
No content
Slide 49
Slide 49 text
もちろん大炎上したよ
Slide 50
Slide 50 text
大炎上する案件が複数発生
Slide 51
Slide 51 text
再発防止策が必要だな
Slide 52
Slide 52 text
DOD-STD-2167A(1988.2) ↓ MIL-STD-498(1994.12) (頻繁な顧客レビューの推奨) DOD 5000.2(2000) (反復型および スパイラル型を推奨)
Slide 53
Slide 53 text
開発は反復型重視へ 回帰した
Slide 54
Slide 54 text
さらに
Slide 55
Slide 55 text
XP 白本(1999) アジャイルマニフェスト (2001.2) (1993.のJacob Nielsen のUIテスト あたりをみても業界全体が 反復的開発と頻繁なFBに 傾いている)
Slide 56
Slide 56 text
反復型開発の復活
Slide 57
Slide 57 text
つまりダメな ウォーターフォールに 嵌り込んでいたのは・・ 日本だけ!
Slide 58
Slide 58 text
嵌っている・・首まで・・
Slide 59
Slide 59 text
つまりダメな ウォーターフォールに 嵌り込んでいたのは・・ 日本だけ!
Slide 60
Slide 60 text
これを知った時、私は
Slide 61
Slide 61 text
こう思いました
Slide 62
Slide 62 text
調達標準は反復型重視へ 回帰した
Slide 63
Slide 63 text
No content
Slide 64
Slide 64 text
ではウォーターフォールは どうあるべき?
Slide 65
Slide 65 text
・プロトタイプを作る ・頻繁な顧客フィードバック ・反復的で機能追加型の開発 にシフトすべき
Slide 66
Slide 66 text
No content
Slide 67
Slide 67 text
そもそも ウォーターフォール <<< <(壁)<<アジャイル なのか?
Slide 68
Slide 68 text
(一面の真実) 仕様変更が許容範囲に収まる場合 ウォーターフォールのほうが アジャイルよりも安いし早い 完全にアジャイルに進めると 対象やドメインモデルが複雑だと 破綻する可能性が高い
Slide 69
Slide 69 text
ではどちらを選択すべきか?
Slide 70
Slide 70 text
慣れた人に任せるべきだ (Martin Fawler)
Slide 71
Slide 71 text
No content
Slide 72
Slide 72 text
では日本のソフトウェア開発は これからどうなる
Slide 73
Slide 73 text
・反復型ウォーターフォール ・アジャイル ・そのほか に分かれると思う 残念なウォーターフォールも残るだろう
Slide 74
Slide 74 text
No content
Slide 75
Slide 75 text
ご清聴ありがとうございました