# アジャイルな見積りと計画づくり
## 概要
Mike Cohn が 2005 年に著した *Agile Estimating and Planning* の日本語版である。アジャイルであることと計画を立てることは両立しないという当時の通念に反論し、アジャイルチームのほうが従来型のチームより信頼のおける計画を立てられると主張する。(Source: [[wiki/entities/アジャイルな見積りと計画づくり|アジャイルな見積りと計画づくり]] 日本の読者に向けて)
抽象的な理論書ではなく、ストーリーポイント・理想日・プランニングポーカー・ベロシティ・バーンダウンチャートといった具体的な技法を、実行手順のレベルまで降ろして提示する点に特徴がある。
## 書誌情報
- 書名: アジャイルな見積りと計画づくり ― 価値あるソフトウェアを育てる概念と技法
- 原書: *Agile Estimating and Planning*, 1st Edition (Prentice Hall / Pearson Education, 2006), ISBN 0-13-147941-5
- 著者: [[Mike Cohn]]
- 監訳: [[安井力]]、[[角谷信太郎]]
- 出版社: [[マイナビ]](初版発行時は毎日コミュニケーションズ)
- 発行日: 2009-01-28(初版第 1 刷)
- ISBN: 978-4-8399-2402-7
- 構成: 全 7 部 23 章 + イントロダクション
- 原本: `.raw/books/agile-estimating-and-planning-ja/`
## 構成と主要テーマ
各章末に「まとめ」と「話し合ってみよう」を備え、チームでの読書会での利用を想定した構成になっている。金額は特定の通貨に依らない汎用の通貨記号 `¤` で表記される。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Introduction イントロダクション]] — 書名を「アジャイルプロジェクトの見積りと計画づくり」ではなく「アジャイルな見積りと計画づくり」とした理由(プロセス自体がアジャイルでなければならない)と、全 7 部 23 章の見取り図を示す。
### 第 1 部: 問題とゴール(第 1〜3 章)
なぜ計画づくりが重要で、従来型の計画づくりの何が失敗の原因なのか、そしてアジャイル手法が目指すものは何かを提示する。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 1 計画の目的]] — 不確実性コーンで見積りの難しさを示したうえで、よい計画づくりが持つ 5 つの特徴(リスクの軽減・不確実性の低減・意思決定の支援・信頼の確立・情報の伝達)を提示し、成果物としての「計画」ではなく活動としての「計画づくり」を重視する立場を定める。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 2 なぜ計画づくりに失敗するのか]] — 従来型の計画づくりが失敗する 5 つの理由(活動ベースの計画・マルチタスク化・開発都合の実装順序・不確実性の無視・見積りとコミットメントの混同)を検討する。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 3 アジャイル手法]] — アジャイルマニフェストの 4 つの価値から、アジャイルチームに共通する 5 つの振る舞いを整理し、プランニング・オニオンと満足条件という 2 つの枠組みを導入する。
### 第 2 部: 規模を見積もる(第 4〜8 章)
「規模を見積もり、期間は導出する」という本書の中心原理と、そのための単位と技法を扱う。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 4 ストーリーポイントによる規模の見積り]] — 単位を持たない相対値であるストーリーポイントを導入し、ベロシティを介して規模から期間を導出する仕組みを示す。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 5 理想日による見積り]] — 理想時間と現実時間(経過時間)の違いから理想日という単位を定義し、その 3 つの前提を示す。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 6 見積りの技法]] — 見積りの労力と正確さが収益逓減の関係にあることを前提に、専門家の意見・対比・分割を合成した技法としてプランニングポーカーを詳述する。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 7 再見積り]] — 再見積りが必要なのは相対的な規模の判断が変わったときだけであり、実装が想定より長引いたこと自体は理由にならないと論じる。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 8 ストーリーポイントと理想日]] — 両単位の長所を対比し、著者はストーリーポイントを推奨しつつ、慣れないチームには理想日から段階的に移行する現実的な道筋を示す。
### 第 3 部: 価値のための計画づくり(第 9〜12 章)
限られた時間で何を先に作るかを、価値の観点から決める方法を扱う。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 9 テーマの優先順位づけ]] — 個々のストーリーでは価値を測りにくいためテーマにまとめ、金銭価値・コスト・新しい知識・リスクの 4 要素とリスク対価値の四象限で順位を決める枠組みを示す。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 10 金銭価値による優先順位づけ]] — 収益源を 4 分類して見積もり、正味現在価値・内部収益率・回収期間・割引回収期間の 4 指標でテーマを比較する手順を、架空企業 WebPayroll の例題で通しで示す。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 11 「望ましさ」による優先順位づけ]] — 金銭で測りにくい価値を、狩野モデル(ユーザーアンケート)と相対的重み付け(専門家判断)という 2 つの手法で順位づけする。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 12 ユーザーストーリーの分割]] — 大きなストーリー(エピック)を 5 系統の切り口で分割する方法と、タスクへ分解してはならない・関連変更を上乗せしてはならないという 2 つの禁則を示す。
### 第 4 部: スケジュールを立てる(第 13〜18 章)
本書で最も分量の厚い部で、リリース計画とイテレーション計画の立て方、そして不確実性への備えを扱う。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 13 リリース計画づくりの基本]] — 満足条件の決定からリリース日の決定まで 6 ステップからなる標準手順を示し、日付主導とフィーチャ主導の違いを整理する。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 14 イテレーション計画づくり]] — ベロシティ駆動とコミットメント駆動という 2 つの進め方を対比し、著者はコミットメント駆動を好むと述べる。ストーリーポイントと時間を固定的に対応づけることの危うさも論じる。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 15 イテレーションの長さを決める]] — 長さを決める 7 つの要因を挙げ、著者は 2 週間を最も好むと述べる。月末・四半期末に終わりを合わせるべきではないと注意する。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 16 ベロシティの見積り]] — 過去の実績・実イテレーション・予想という 3 手法を示し、いずれの場合もベロシティは単一値ではなく幅で表現すべきだと説く。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 17 不確実性に備えるバッファの計画]] — フィーチャバッファとスケジュールバッファの 2 種類を定義し、後者の大きさを二乗和平方根法で算出する手順を示す。バッファは水増しではなく開示すべき安全余裕だと位置づける。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 18 複数チーム編成プロジェクトの計画づくり]] — 複数チームで追加される 4 つのテクニック(共有できる見積り基準・早期のストーリー詳細化・移動する先読み範囲・合流バッファ)を、必要最小限だけ段階的に導入することを勧める。
### 第 5 部: トラッキングと情報共有(第 19〜21 章)
立てた計画を追跡し、チーム外へ伝える方法を扱う。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 19 リリース計画のモニタリング]] — 推測航法の比喩で進捗トラッキングを位置づけ、リリースバーンダウンチャートとパーキングロットチャートの読み方を示す。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 20 イテレーション計画のモニタリング]] — タスクボードとイテレーションバーンダウンチャートを扱い、投入工数の実績比較には否定的な立場を取り、個人単位のベロシティ測定には明確に反対する。
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 21 計画とコミュニケーション]] — 期日は単一の値ではなく幅や確度を添えて伝えるべきだとし、条件つきのガントチャート・幅を持たせたベロシティ・イテレーション終了報告書という具体的な手段を示す。
### 第 6 部: なぜアジャイルな計画づくりがうまくいくのか(第 22 章)
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 22 なぜアジャイルな計画づくりがうまくいくのか]] — 本編の総括として、アジャイルな計画づくりが機能する理由を整理する。
### 第 7 部: ケーススタディ(第 23 章)
→ [[@2009__Mynavi__アジャイルな見積りと計画づくり - Chapter 23 ケーススタディ ボムシェルタースタジオ]] — 架空のゲーム会社が新作ボードゲーム『ハバナ』のソフトウェア版を作る過程に、本編 22 章の技法を時系列で適用する通し事例。初期見積りの幅(12〜20 週間)をわずかに超える 22 週間で完了する。
## 影響と位置づけ
本書は「アジャイルだから計画しません」という当時よく見られた言い逃れに反論する目的で書かれた。著者は日本語版の序文で、刊行から 3 年を経てその台詞をめったに聞かなくなったことをもって、本書は成功したと述べている。(Source: [[wiki/entities/アジャイルな見積りと計画づくり|アジャイルな見積りと計画づくり]] 日本の読者に向けて)
本書の中心にあるのは「規模を見積もり、期間は導出する」という原理である。規模を単位のない相対値([[ストーリーポイント]])または[[理想日]]で見積もり、実測値である[[ベロシティ]]で割ることで期間を得るため、見積りの系統的な偏りがベロシティを介して自動的に補正される。この分離が、見積りの精度を高めようとする努力([[プランニングポーカー]]で収益逓減の手前に留める)と、不確実性を隠さず幅で伝える姿勢([[計画のコミュニケーション]]・[[プロジェクトバッファ]])を両立させている。
原著は 2005 年の刊行であり、大規模アジャイルの手法群が整備される以前の議論である。[[複数チームのプロジェクト計画]]は少人数チームを複数編成するという前提のもと、必要最小限のテクニックを段階的に導入する立場を取る。
## 関連
- 概念(本書が体系化したもの): [[アジャイルな計画づくり]] / [[活動ベースの計画づくり]] / [[プランニング・オニオン]] / [[満足条件]] / [[不確実性コーン]]
- 概念(規模の見積り): [[ストーリーポイント]] / [[理想日]] / [[プランニングポーカー]] / [[再見積り]] / [[ベロシティ]]
- 概念(価値と優先順位): [[フィーチャの優先順位づけ]] / [[金銭価値による優先順位づけ]] / [[狩野モデル]] / [[相対的重み付け]] / [[ユーザーストーリーの分割]]
- 概念(スケジュール): [[リリース計画づくり]] / [[イテレーション計画づくり]] / [[イテレーションの長さ]] / [[プロジェクトバッファ]] / [[複数チームのプロジェクト計画]]
- 概念(トラッキングと共有): [[バーンダウンチャート]] / [[タスクボード]] / [[計画のコミュニケーション]]
- 実体: [[Mike Cohn]](著者) / [[安井力]]・[[角谷信太郎]](監訳) / [[マイナビ]](出版社) / [[SwimStats]](本書を通じたサンプルプロジェクト) / [[ハバナ (ボードゲーム)]](23 章のケーススタディの題材)
- 本書が引く論者: [[Barry W. Boehm]] / [[Steve McConnell]] / [[Alexander Laufer]] / [[Tom Gilb]] / [[Karl Wiegers]] / [[狩野紀昭]] / [[Kent Beck]] / [[Phillip Armour]] / [[Cyril Northcote Parkinson]] / [[Kim B. Clark]] / [[Steven C. Wheelwright]] / [[Eliyahu M. Goldratt]] / [[Donald G. Reinertsen]] / [[Robert C. Newbold]] / [[Lawrence P. Leach]]
## 出典
- Mike Cohn 著, 安井力・角谷信太郎 監訳, 『アジャイルな見積りと計画づくり ― 価値あるソフトウェアを育てる概念と技法』, マイナビ, 2009. ISBN 978-4-8399-2402-7.
- Mike Cohn, *Agile Estimating and Planning*, 1st Edition, Prentice Hall / Pearson Education, 2006. ISBN 0-13-147941-5.