【T式相対推定】新しい見積もり手法について考えてみた
新しいストーリーポイントの見積もり手法について考えてみました。
私はこれを「T式相対推定」と呼んでいます。
内容としてはプランニングポーカーとアフィニティ見積もりの良いところを組み合わせた手法です。
以下は私が実際に使用しているスプレッドシートの画像です。
見積もり画面
集計結果画面
見た目からも想像できるように、アフィニティ見積もりにとても似ていますね。
きっかけは、私の会社ではJIRAを使用して課題を管理しているのですが、プランニングポーカーではリモートの人がいるとやりづらいと感じました。また、アフィニティ見積もりではJIRAの課題を転記するのが手間だと感じました。
そこで、より使いやすいシステムを作ることを考え、想像を膨らませた結果、「T式相対推定」が生まれました。
以下では、「T式相対推定」について具体的に説明していきます。
メリット・デメリット
「T式相対推定」のメリットは以下の通りです。
- プランニングポーカーと同様に、最後の調整で認識のズレを発見しやすい。
- プランニングポーカーと違って、相対的な見積もりを意識しやすいので、スプリントごとのポイントのブレが少ない。
- アフィニティ見積もりと同等の速さで見積もれる。
- アフィニティ見積もりと違って、アンカリング効果が起こらない。
- Tシャツサイジングと違って、直感的な見積もりができる。
- システム化が前提の見積もり手法なので、面倒な事前事後の準備作業が一切不要。
- 見積もり自体はシンプルなので、進行役以外は簡単に理解でき、すぐに使える。
そして、「T式相対推定」にはただ1つ、最大のデメリットがあります。それは「システム化のコストがかかる」ということです。
コストの目安として、GoogleスプレッドシートとGASを使用した場合、JIRAのAPIの調査なども含めて、開発に16時間ほどかかりました。
ただし、このデメリットを乗り越えれば、非常に優れた手法だと考えています。
やり方
見積手順は以下のようになります。
- 人数分の課題を用意する
- それぞれ無言で一人で全課題を見積もる
- 全員の課題を集計して、各課題の平均値を出す
- 集計結果から、認識が大きくずれている課題について話し合う
- フィボナッチ数列に変換する
1.人数分の課題を用意する
- 見積もりたい課題が10個ある場合
- 見積もるメンバーが5人いる場合
上記の場合、10個 * 5人 で合計50の課題が必要です。これは手作業で用意するのは大変な作業です。
そこで、私はGoogleスプレッドシートとGASを使って、JIRAから課題を取得して各メンバーのシートに配置するシステムを作りました。
2.それぞれ無言で一人で全課題を見積もる
アフィニティ見積もりでは全員で課題を分け合って見積もりますが、「T式相対推定」では分け合わずに各メンバーがすべて見積もります。
アフィニティ見積もりと同様に無言で見積もります。アンカリング効果を防ぐために他の人の見積もりを見ることも禁止です。
直接フィボナッチ数列で見積もると、経験上3回目のスプリントぐらいから比較して見積もることを意識しなくなります。
なので下記のように変換して画面に表示しています。
- 1 → x0.1
- 2 → x0.3
- 3 → x0.6
- 5 → ★
- 8 → x1.5
- 13 → x2
- 21 → x4
- 34 → x6
- 50 → x10
- 100 → x20
- 250 → ?
基準(★)と倍率だけで表示することで必ず比較して見積もるようになります。
「S, M, L」などのTシャツサイジングも考えましたが、人間は直感的に大きさを説明する時に「あいつは俺の2倍はあった」「豆粒ほどの大きさだ」などのように基準か倍率で表現することが多いです。
なので、イメージしやすい基準と倍率を採用しました。
3.全員の課題を集計して、各課題の平均値を出す
全員が見積もりを終えたら、各課題ごとに集計し、平均値を算出します。
平均値を出す際には、倍率をフィボナッチ数列に変換して計算します。
その際、中途半端な数字の場合は、小さい数字と大きい数字のどちらに寄せるかを決める必要があります。
私は大きい数字がやや有利になるようにして寄せています。
例えば以下のように、8が少し有利になるようにしています。
- 平均値が6以下なら5に寄せる
- 平均値が6.1以上なら8に寄せる
この計算もアナログだととても大変ですので、GASを使用してワンクリックで集計できるようにしました。
4.集計結果から、認識が大きくずれている課題について話し合う
集計結果を全員で確認し、以下のような話し合いを行います。
「ここはもう少し小さいと感じていたのですが、なぜ4倍なのでしょうか?」
「私は4倍にしました。ここは〇〇が必要で、APIが多くなるため、〇〇課題の4倍と判断しました。」
「確かに、その点を考慮していませんでしたね。4倍が妥当だと思います。」
そして、話し合いの結果に基づいて、見積もりを微調整します。
5.フィボナッチ数列に変換する
各メンバーが見積もった倍率をフィボナッチ数列に変換し、課題に記入して完了します。
この作業も一つひとつ手作業で行うと手間がかかるため、GASを使ってワンボタンでJIRAへ反映するようにしました。
実際に使ってみた感想
この見積もり手法はシンプルで使いやすく、開発者と進行役の両方が簡単に学べると思います。さらに、GASを使ってワンボタンで反映する機能を導入することで、作業の効率も向上することができました。
この手法は、開発プロセスをより効率的かつ正確にするための最適な解決策になるかもしれません。今後のプロジェクトに是非ご活用いただければ幸いです。
Discussion