Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

プランニングポーカー(プランニングポーカー)とは | 意味や読み方など丁寧でわかりやすい用語解説

プランニングポーカー(プランニングポーカー)の意味や読み方など、初心者にもわかりやすいように丁寧に解説しています。

作成日: 更新日:

読み方

日本語表記

プランニングポーカー (プランニングポーカー)

英語表記

Planning Poker (プランニングポーカー)

用語解説

プランニングポーカーは、アジャイル開発プロセス、特にスクラムフレームワークにおいて、開発チームがタスクやユーザー機能(ストーリー)の作業量や複雑性を見積もるために用いられる合意形成型のゲーム感覚の手法である。従来のシステム開発における見積もりは、個人の経験や勘に頼りがちで、しばしば不正確さや認識のずれを引き起こすことがあった。プランニングポーカーは、こうした課題を解決し、チーム全体で共通認識を持ちながら、より信頼性の高い見積もりを得ることを目的としている。

この手法は、アジャイル開発で重視される「自己組織化されたチーム」と「継続的な改善」の原則に基づいている。チームメンバー全員が議論に参加し、それぞれの知見や経験を出し合うことで、見積もり精度を高めるとともに、タスクに対する理解を深める機会を提供する。単に数値を見積もるだけでなく、その過程で潜在的なリスクや課題を発見し、解決策を検討することにも繋がるため、開発プロジェクトの初期段階における重要なコミュニケーションツールとしても機能する。

詳細な手順について説明する。プランニングポーカーを行う際には、プロダクトオーナー(または顧客)、スクラムマスター、開発チームの全メンバーが参加することが一般的だ。まず、見積もり対象となるタスクやユーザー機能(ストーリー)が明確に定義され、開発チームがそれらを十分に理解している状態である必要がある。多くの場合、これらのタスクは「ユーザーがどのような価値を得るか」という視点で記述されたユーザー機能として準備される。

実際の進行は以下のステップで行われる。

第一に、ファシリテーター(多くはスクラムマスター)が、今回見積もる対象のタスク(ユーザー機能)をチームに説明する。プロダクトオーナーは、そのタスクの目的、要求事項、受け入れ基準などを詳しく解説し、チームからの質問に答える。この段階で、タスクの内容についてチームメンバー全員が同じレベルで理解できるよう、疑問点はすべて解消されるべきである。

第二に、タスクの説明が終わると、各チームメンバーは、そのタスクの作業量や複雑性、不確実性などを考慮し、それぞれが持つ専用のポーカーカードから適切な数値を選び、裏向きにして手元に置く。このカードには、一般的にフィボナッチ数列(例:0, 1, 2, 3, 5, 8, 13, 21, 34, ...)が記されている。フィボナッチ数列を用いるのは、作業量が大きくなるにつれて見積もりの不確実性が増すため、より大きな数値ではざっくりとした見積もりを許容するという意図がある。全員が同時にカードを出すことで、他のメンバーの意見に影響されることなく、各自の純粋な見積もりを表明できる。

第三に、ファシリテーターの合図で、全員が手元のカードを一斉に表向きにする。これにより、チームメンバー全員の見積もり値が明らかになる。

第四に、公開されたカードの数値が全員一致した場合、その値がそのタスクの見積もりとして採用される。しかし、多くの場合、数値は一致しない。特に、最も高い値をつけたメンバーと最も低い値をつけたメンバーがいる場合、ファシリテーターはこれらのメンバーに対し、なぜその値を選んだのか、その理由を説明するように求める。高い値をつけたメンバーは、タスクに潜むリスクや見落とされがちな複雑性を指摘するかもしれない。一方、低い値をつけたメンバーは、効率的な実装方法や既に存在する類似機能を活用するアイデアを提案するかもしれない。

この議論を通じて、チームメンバー間の認識齟齬が明らかになり、タスクに対する共通理解が深まる。見落とされていた要件、技術的な課題、潜在的な依存関係などがこの段階で発見され、共有されることで、より現実的な見積もりに近づけることができる。議論が終わると、チームは再度各自でタスクを見積もり、カードを出すというプロセスを繰り返す。この繰り返しによって、チームは徐々に合意された見積もり値に収束していく。もし、何度か繰り返しても合意に至らない場合、そのタスクはまだ情報が不足しているか、あまりにも規模が大きいか、あるいは複雑すぎる可能性があると判断し、タスクの分割や要件の再検討が必要となる場合もある。

見積もりの単位としては、「ストーリーポイント」が広く用いられる。ストーリーポイントは時間(人日や人月)ではなく、タスクの相対的な大きさや複雑性、不確実性、リスクなどを総合的に評価する抽象的な指標である。時間見積もりではなくストーリーポイントを用いることで、特定のメンバーのスキル差や休日などの影響を受けにくく、チーム全体の生産性(ベロシティ)を測定しやすくなるという利点がある。

プランニングポーカーの最大のメリットは、チーム全体の知識と経験を結集し、見積もりの精度と透明性を高められる点にある。また、見積もりプロセス自体がチーム内の学習とコミュニケーションを促進し、タスクに対する深い理解と共通認識を育む。特定の個人に過度な責任が集中することなく、チーム全体でタスクの責任と見積もりを共有できるため、チームの一体感を醸成する効果も期待できる。一方で、参加者のスキルレベルに大きな差がある場合や、ファシリテーションが不十分だと議論が長引き、時間がかかりすぎる可能性もある。しかし、適切に実施されれば、システム開発プロジェクトにおける見積もりの質を大幅に向上させ、予期せぬ問題の発生を減らす上で非常に有効な手法と言える。

関連コンテンツ