プランニングポーカーとは?アジャイル見積もりの進め方
プランニングポーカーとは
プランニングポーカーは、アジャイル開発チームがユーザーストーリーの見積もりを行うための合意形成手法です。チームメンバー全員が同時にカードを出すことで、特定の人の意見に引きずられることなく、独立した判断を集約できます。
2002年にJames Grenning氏が考案し、Mike Cohn氏の著書「Agile Estimating and Planning」で広く知られるようになりました。
なぜ「ポーカー」なのか
通常の会議で見積もりを行うと、最初に発言した人やチーム内の上級者の意見に他のメンバーが引きずられる「アンカリング効果」が発生します。プランニングポーカーでは、カードを伏せた状態で同時に公開することで、この認知バイアスを排除します。
基本ルール
カードの数列
プランニングポーカーで使用するカードは、修正フィボナッチ数列が一般的です。
| カード | 意味 |
|---|---|
| 0 | 作業不要(すでに完了している等) |
| 1 | 最小の作業 |
| 2 | 小さな作業 |
| 3 | やや小さい作業 |
| 5 | 中程度の作業 |
| 8 | やや大きな作業 |
| 13 | 大きな作業(分割を検討) |
| 21 | 非常に大きな作業(分割が必要) |
| ? | 判断できない(情報不足) |
| ☕ | 休憩が必要 |
数列の間隔が広がっていく理由は、大きなタスクほど見積もりの精度が下がるためです。「13か14か」を議論するのは時間の無駄であり、「13か21か」という粒度で十分です。
参加者の役割
| 役割 | 参加 | 責務 |
|---|---|---|
| プロダクトオーナー(PO) | ストーリーの説明 | ストーリーの背景と受け入れ条件を説明する |
| スクラムマスター(SM) | 進行役 | 議論のファシリテーション、時間管理 |
| 開発チーム | カードを出す | 見積もりと根拠の説明 |
| ステークホルダー | オブザーバー | 質問への回答(カードは出さない) |
見積もりのカードを出すのは実際に作業を行う開発チームのみです。POやマネージャーが見積もりに参加すると、暗黙のプレッシャーが生じるため避けるべきです。
進行手順
ステップ1: ストーリーの説明(2〜3分)
プロダクトオーナーがユーザーストーリーを読み上げ、背景と受け入れ条件を説明します。
ユーザーストーリー:
「ユーザーとして、注文履歴をCSVでダウンロードしたい。
過去の購入を家計簿アプリに取り込むためだ。」
受け入れ条件:
- 過去1年間の注文を対象とする
- CSV形式で日付・商品名・金額・ステータスを含む
- ダウンロードボタンは注文履歴ページに配置する
ステップ2: 質問と議論(3〜5分)
開発チームがストーリーに関する質問を行います。ここでの目的は、ストーリーの不明点を解消することであり、実装方法の詳細を決めることではありません。
よくある質問の例:
- 「注文数が1万件を超える場合のパフォーマンス要件はありますか?」
- 「CSVのエンコーディングはUTF-8固定ですか?」
- 「フィルター(期間指定等)は必要ですか?」
ステップ3: カードを同時に出す
質問が終わったら、各メンバーがカードを選び、スクラムマスターの合図で同時に公開します。
Aさん: 5
Bさん: 5
Cさん: 8
Dさん: 13
ステップ4: 差異がある場合の議論(2〜5分)
カードの値が大きく異なる場合(通常、最高値と最低値の差が2段階以上)、最高値と最低値を出した人がそれぞれ理由を説明します。
Dさん(13): 「大量データのCSV生成は非同期処理が必要で、
ジョブキューの実装が追加で必要になると思います」
Aさん(5): 「既存のレポート機能のCSV生成を流用すれば、
新規実装は最小限で済むと思います」
この議論を通じて、チーム全体がストーリーの複雑さを共有し、見落としていた考慮点が明らかになります。
ステップ5: 再投票と合意
議論後に再度カードを出します。2回目で合意に至らない場合は、以下のいずれかを選択します。
- 多数決で決める: 5が2人、8が2人なら、間を取って8にする
- ストーリーを分割する: 合意できないのはストーリーが大きすぎる兆候
- スパイク(調査タスク)を設定する: 技術的な不確実性が高い場合
オンラインでの実施
リモートチームでは、オンラインツールを使ってプランニングポーカーを実施します。
オンラインツールの利点
- カードの同時公開が確実にできる(画面越しだとタイミングが合わない問題を解消)
- 結果の自動記録と集計
- タイマー機能による時間管理
- 非同期での実施も可能
オンラインで注意すべき点
対面と比べてコミュニケーションの情報量が減るため、以下を意識します。
- カメラをオンにする: 表情やリアクションが議論の質を高める
- チャットを活用する: 口頭での議論と並行してチャットで補足する
- タイムボックスを厳守する: オンラインは議論が長引きやすい
- ファシリテーターの役割が重要: 発言の偏りを意識的に調整する
効果的な議論のコツ
タイムボックスを設定する
1つのストーリーに費やす時間を制限します。推奨は最大5分です。5分で合意できない場合は、ストーリーの定義自体に問題がある可能性が高いです。
「?」カードを活用する
情報不足で判断できない場合は、無理に数値を出さず「?」カードを使います。「?」が出たら、まず不足している情報を特定し、その場で解消するか、後日調査する旨を記録します。
基準ストーリーを常に参照する
議論が発散しそうになったら、基準ストーリーに立ち返ります。
「基準ストーリー(ユーザープロフィールの電話番号追加 = 3ポイント)
と比べて、このストーリーはどのくらいですか?」
全員の意見を引き出す
声の大きい人だけが議論をリードしないよう、スクラムマスターは意識的に発言の少ないメンバーに意見を求めます。特に新しいメンバーの視点は、チームが当たり前だと思っている前提を見直すきっかけになります。
よくある課題と解決策
課題1: 見積もりセッションが長すぎる
症状: 2時間のセッションで10ストーリーしか見積もれない。
解決策:
- 1ストーリーの制限時間を設ける(5分)
- 事前にストーリーを共有し、質問を事前に集めておく
- 小さなストーリー(明らかに1〜2ポイント)はまとめて見積もる
- 1回のセッションは最大90分に制限する
課題2: いつも同じ人が最高値・最低値を出す
症状: 慎重なAさんがいつも最高値、楽観的なBさんがいつも最低値。
解決策:
- 過去の見積もりと実績を振り返り、どちらが実態に近いかをデータで示す
- 見積もり後に「何が含まれていて何が含まれていないか」を確認する
- 基準ストーリーとの比較を徹底する
課題3: POが見積もりに介入する
症状: 「それ、5ポイントもかかるの?3で終わらない?」
解決策:
- POの役割はストーリーの説明と質問への回答であることを明確にする
- 見積もりはチームの判断であり、POが変更すべきものではないことを合意する
- 見積もりが高い場合は、スコープの調整(受け入れ条件の削減)で対応する
レトロスペクティブとの連携
スプリント終了後のレトロスペクティブで、見積もりの振り返りを行うことで精度が向上します。
振り返りのポイント
- 完了したストーリーの見積もりと実際の複雑さを比較する
- 大きくズレたストーリーについて原因を分析する
- 見積もりの前提が間違っていなかったかを確認する
- 次回の見積もりに活かすべき学びを共有する
ただし、「見積もりが外れた」ことを責める場にしてはいけません。見積もりは予測であり、外れることは自然です。目的はチームの学習であり、個人の評価ではありません。
まとめ
プランニングポーカーは、チーム全員の知見を引き出し、見積もりの精度と共通理解を同時に高める手法です。同時にカードを出すことでアンカリング効果を排除し、最高値と最低値の議論を通じてストーリーの理解を深めます。タイムボックスの設定、基準ストーリーの活用、レトロスペクティブでの振り返りを組み合わせることで、チームの見積もり力は着実に向上していきます。
