SlideShare a Scribd company logo
16
Most read
17
Most read
24
Most read
ウォーターフォールとアジャイルの
フェアな比較
kawasima
アジャイルとは何か?
アジャイルマニフェスト
プロセスやツールよりも個人と対話を、
包括的なドキュメントよりも動くソフトウェアを、
契約交渉よりも顧客との協調を、
計画に従うことよりも変化への対応を、
価値とする。すなわち、左記のことがらに価値があることを
認めながらも、私たちは右記のことがらにより価値をおく。
http://www.agilemanifesto.org/iso/ja/
分かりやすい喩え
ウォーターフォール アジャイル
ホールケーキとして作る 必要に応じてカットケーキを作る
アジャイル開発の
実際の進め方
(rascal-scheme)
https://github.com/kawasima/rascal-scheme
体制
プロダクトマネージャ
●
要求を実装可能なストーリーに変換する。
●
チームがスムーズに実装できるレベルまで、ストーリーを理解させる。
チーム
●
スプリント(2〜4週間)で実装するストーリーをコミットし完遂する。
●
スプリント期間は、外部からの開発進捗の妨げを排除する。
(スクラムマスターの仕事)
●
タスクの見積りはチームで行い、各タスクの完了責任はチームで持つ。
(クライアント)
●
要求をとりまとめ、開発サイドに伝達する。
※ストーリーとは、実装可能な仕様の塊。通常、機能一覧の1行に該当する。
権限の7つのレベル
マネージャとして意思決定するTell
意思決定について説得するSell
意思決定する前にチームに相談するConsult
チームと一緒に意思決定するAgree
チームが意思決定する前にアドバイスするAdvice
チームが意思決定した後にフィードバックを求めるInquire
チームの意思決定に何も影響を与えないDelegate
権限レベルを決める
ストーリーの内容
Tell Sell Consult Agree Advice Inquire Delegate
ストーリーの中の
内部仕様 PM Team
Client PM
スプリントに含める
ストーリー
PM Team PM Client
…
ストーリー全体計画 Client PM
全体スプリント計画
Sprint1(8/16〜8/29)
Sprint2(8/30〜9/12)
Sprint N(mm/dd〜mm/dd)
●
顧客の検索ができるようにする
●
顧客のデータを登録できるようにする
●
…
プロダクトバックログ
スプリントバックログ
システムに要求される機能を分解し、ストーリーとしてプロダクトバックログに積む。
ストーリーの優先順位をつけ、だいたいの見積りをし、スプリントバックログに割り振る。
スプリント計画MTG
プロダクトマネージャ チーム
Sprint N(mm/dd〜mm/dd)
●
スプリントでの総開発量の決定
●
ストーリーの見積り
●
ストーリーのタスク分解
●
ストーリーの内容説明
●
ストーリーの詳細なスコープ決定
スプリントレビュー
チーム
●
スプリントの成果をデモ
プロダクトマネージャ
(クライアント)
●
指摘をバックログに反映する
QCDに沿ってアジャイル開発の
メリデメを考える
コスト
●
結果として無駄なものを作らなくて済む可能性があ
り、当初の概算よりコストを抑えることができるかも
しれない
Pros
Cons
●
タイムボックス分割の分のオーバーヘッドがかかる。
●
大量生産可能なものに適用してもオーバーヘッドが上
乗せされるだけである。
品質
●
タイムボックスごとにテストがされるので、必然的に
品質は高くなる傾向にある。
Pros
Cons
●
デグレを防ぐために、回帰テストが必要になる。
(コストへのインパクト)
納期
●
フィジビリティを確認しながら、開発を進められるの
で、実現が難しい機能がクリティカルパスになって、
設計・プログラミング工程で遅延が発生するという
事態を防ぐことができる。
Pros
Cons
●
基本的にはコスト・品質を固定して、納期とスコープト
レードオフをコントロールしていくプロセスなので、ス
コープの調整が前提になっていないと、納期は守れな
い。
マネジメントの違い
ウォーターフォール アジャイ
ル
Quality
Cost
Delivery
Scope
固定
コントローラブル
固定 コントローラブル
固定 コントローラブル
(大量に積んだバッファでやりくり)
(納期とスコープのトレードオフを
やりくりする)
固定
固定
体制
ウォーターフォール アジャイル
時間
人数
時間
人数
体制
●
最初から同じメンバーなので、立ち上げのコストが
少ない。
●
同じプロジェクトに継続してたずさわるので、学習
効果が期待できる
Pros
Cons
●
特になし
FAQ
Q. スキルの高い人でチーム組まないとできないの?
A. そういうことはない。
しかし、タイムボックス分割のオーバーヘッドを最小化する
ためにはプロダクトマネージャには高いスキルが要求される。
Q. ドキュメント書かないので、保守フェーズで苦労するって聞いた。
A. ドキュメント書く、書かないの話はアジャイルとは関係ない。
設計書などは、コードを書いた後で作ることができるので、
手戻りがなくドキュメンテーションの効率がよくなる効果はある。
Q. ミッションクリティカルなシステムなので品質が心配だが…
A. スタートアップ起業文化で成長してきたのメソッドなので、
品質に対する意識が低そうな印象があるのは事実だが、
品質保証プロセスに何の違いもない。
デグレのリスク増など、留意
すべき点を間違えなければ、
ミッションクリティカルで使え
ないということはない。
まとめ
●
同じものを同じメンバーで作るのであれば、ウォー
ターフォール、アジャイルに大きな違いはない。
最終的に出来上がるものが違うから、プロセスを選び分ける
●
プロジェクトの特性による向き不向きがある。
– 向いているものは…
●
ビジネスの成功に必要な機能を誰も明言できないもの
●
技術的に実現可能性が見えていないもの
●
納期の制約がないもの

More Related Content

PDF
ブルックスのいう銀の弾丸とは何か?
PDF
インフラエンジニアの綺麗で優しい手順書の書き方
PDF
ソフトウェア設計における 意思決定とそのレビューの秘訣
PDF
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
PDF
ドメイン駆動設計のための Spring の上手な使い方
PDF
テスト文字列に「うんこ」と入れるな
PDF
DDDオンライン勉強会#2 「集約・境界付けられたコンテキスト」
PDF
イミュータブルデータモデルの極意
ブルックスのいう銀の弾丸とは何か?
インフラエンジニアの綺麗で優しい手順書の書き方
ソフトウェア設計における 意思決定とそのレビューの秘訣
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
ドメイン駆動設計のための Spring の上手な使い方
テスト文字列に「うんこ」と入れるな
DDDオンライン勉強会#2 「集約・境界付けられたコンテキスト」
イミュータブルデータモデルの極意

What's hot (20)

PPTX
分散システムについて語らせてくれ
PPTX
チャットコミュニケーションの問題と心理的安全性の課題 #EOF2019
PDF
ドメイン駆動設計 ( DDD ) をやってみよう
PDF
PostgreSQLアンチパターン
PDF
日本語テストメソッドについて
PDF
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
PDF
見やすいプレゼン資料の作り方 - リニューアル増量版
PDF
データベース設計徹底指南
PDF
ドメイン駆動設計 本格入門
PDF
Where狙いのキー、order by狙いのキー
PPTX
WayOfNoTrouble.pptx
PDF
3週連続DDDその2 深いモデルの探求(ドメイン駆動設計 第3部)
PDF
シリコンバレーの「何が」凄いのか
PPTX
Dockerからcontainerdへの移行
PDF
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
PDF
MagicOnion~C#でゲームサーバを開発しよう~
PDF
Tackling Complexity
PDF
Test Yourself - テストを書くと何がどう変わるか
PDF
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
PDF
ドメイン駆動設計 基本を理解する
分散システムについて語らせてくれ
チャットコミュニケーションの問題と心理的安全性の課題 #EOF2019
ドメイン駆動設計 ( DDD ) をやってみよう
PostgreSQLアンチパターン
日本語テストメソッドについて
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
見やすいプレゼン資料の作り方 - リニューアル増量版
データベース設計徹底指南
ドメイン駆動設計 本格入門
Where狙いのキー、order by狙いのキー
WayOfNoTrouble.pptx
3週連続DDDその2 深いモデルの探求(ドメイン駆動設計 第3部)
シリコンバレーの「何が」凄いのか
Dockerからcontainerdへの移行
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
MagicOnion~C#でゲームサーバを開発しよう~
Tackling Complexity
Test Yourself - テストを書くと何がどう変わるか
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
ドメイン駆動設計 基本を理解する
Ad

Similar to ウォーターフォールとアジャイルのフェアな比較 (20)

PDF
Agile japan 2019 受託開発でのアジャイル奮闘記
PDF
プロエンジニアになるための「アジャイル開発」再入門
PDF
ビジネスとソフトウェア開発現場の架け橋 〜 なぜアジャイル? #AgileJapanOsaka
PDF
[Cloud OnAir] Cloud Run & Firestore で、実践アジャイル開発 2020年6月25日 放送
PDF
請負型システム開発とプログラマの価値
PDF
これからのプロダクトについて
PDF
「納品のない受託開発」にみるソフトウェア受託開発の未来
PDF
つまらない仕事も劇的改善!カスタムアプリを使った業務改革事例
PPTX
Hello Scrum!
PDF
アジャイルの障害
PDF
夏サミ 2012 [B-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方
PPTX
ニフティクラウドC4SA_ご紹介資料ver.1.1
PDF
2019年9月18日開催AWS Japan × Atlassianセミナー_セッション2「AmazonカルチャーとDevOps」
PDF
JAWS re:Mote 2015 Nagoya
PDF
デブサミ関西2012[A-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方
PDF
クラウドがもたらすパラダイムシフト
PDF
[Cloud OnAir] #01 徹底解剖 GCP のここがすごい
PDF
Force.com開発基礎
PDF
Red Hat Forum 2014 IBM session
PDF
クラウドを積極活用した サービスの開発のために
Agile japan 2019 受託開発でのアジャイル奮闘記
プロエンジニアになるための「アジャイル開発」再入門
ビジネスとソフトウェア開発現場の架け橋 〜 なぜアジャイル? #AgileJapanOsaka
[Cloud OnAir] Cloud Run & Firestore で、実践アジャイル開発 2020年6月25日 放送
請負型システム開発とプログラマの価値
これからのプロダクトについて
「納品のない受託開発」にみるソフトウェア受託開発の未来
つまらない仕事も劇的改善!カスタムアプリを使った業務改革事例
Hello Scrum!
アジャイルの障害
夏サミ 2012 [B-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方
ニフティクラウドC4SA_ご紹介資料ver.1.1
2019年9月18日開催AWS Japan × Atlassianセミナー_セッション2「AmazonカルチャーとDevOps」
JAWS re:Mote 2015 Nagoya
デブサミ関西2012[A-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方
クラウドがもたらすパラダイムシフト
[Cloud OnAir] #01 徹底解剖 GCP のここがすごい
Force.com開発基礎
Red Hat Forum 2014 IBM session
クラウドを積極活用した サービスの開発のために
Ad

More from Yoshitaka Kawashima (20)

PDF
Grokking Simplicity探訪
PDF
Are Design Patterns Dead?
PDF
強いて言えば「集約どう実装するのかな、を考える」な話
PDF
ソフトウェアにおける 複雑さとは何なのか?
PDF
ソフトウェア開発における『知の高速道路』
PDF
本番障害に至る病
PDF
システムダウンのひみつ
PDF
Mavenの真実とウソ
PDF
アンチフラジャイルの世界
PDF
Atomic Architecture
PDF
それはYAGNIか? それとも思考停止か?
PDF
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
PDF
How to find tech books
PDF
Antifragile Java - Java Day Tokyo 2017 D1-E1
PDF
たとえ日本人同士でも必要な異文化理解力
PDF
SIerにとっての越境 @ DevLOVE 199
PDF
なぜデータモデリングが重要なのか?
PDF
Antifragile Clojure
PDF
Boilerplate vs Magic
PDF
既婚プログラマの時間捻出術
Grokking Simplicity探訪
Are Design Patterns Dead?
強いて言えば「集約どう実装するのかな、を考える」な話
ソフトウェアにおける 複雑さとは何なのか?
ソフトウェア開発における『知の高速道路』
本番障害に至る病
システムダウンのひみつ
Mavenの真実とウソ
アンチフラジャイルの世界
Atomic Architecture
それはYAGNIか? それとも思考停止か?
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
How to find tech books
Antifragile Java - Java Day Tokyo 2017 D1-E1
たとえ日本人同士でも必要な異文化理解力
SIerにとっての越境 @ DevLOVE 199
なぜデータモデリングが重要なのか?
Antifragile Clojure
Boilerplate vs Magic
既婚プログラマの時間捻出術

ウォーターフォールとアジャイルのフェアな比較