JiraでWSJFを計算する方法:スプレッドシートから自動化へ
Scaled Agile Framework(SAFe)の世界において、バックログの優先順位付けにおける最も重要な単一の指標が**Weighted Shortest Job First(WSJF)**です。プロダクトマネージャーやリリーストレインエンジニア(RTE)は、WSJFがなぜ重要であるかを理解しています。それは、チームが常に最短時間で最大の経済的価値を提供することを保証するからです。
しかし、実際の開発作業の拠点であるAtlassian Jira内で、どのようにWSJFを計算するかという現実的な問題になると、チームは壁に直面します。Jiraは課題の追跡においては非常に優れていますが、標準機能のままでは、複雑で動的な数式を処理するようには設計されていません。
本ガイドでは、WSJFの計算式を分解し、多くのチームが依存している従来の「スプレッドシートのやり繰り(spreadsheet shuffle)」について考察した上で、Jira内で直接WSJFを計算するための、より優れた自動化手法を明らかにします。
WSJFの計算式を理解する
ツールの話に入る前に、計算式を簡単に復習しておきましょう。WSJFの計算式は非常にシンプルです。
WSJF = Cost of Delay / Job Size
分子である**遅延コスト(Cost of Delay)**を計算するために、SAFeでは3つの異なる相対的な見積もりを組み合わせます。
- ユーザー・ビジネス価値(User-Business Value): 顧客やビジネスの収益にとって、これはどの程度重要か?
- 時間的要件(Time Criticality): このフィーチャーは遅れると価値を失うか? 固定の期限や、市場への早期投入による優位性はあるか?
- リスク軽減 / 機会創出(RR/OE: Risk Reduction / Opportunity Enablement): これは将来のリスクを軽減するか、あるいは新たなビジネス機会をもたらすか?
これらのパラメーターは、ジョブサイズ(Job Size)(多くの場合、ストーリーポイントや相対的な期間で見積もられます)とともに、通常、修正フィボナッチ数列(1、2、3、5、8、13、20)を使用してスコアリングされます。
これらの要素を互いに相対的に見積もることで、最終的なWSJFスコアを計算できます。最も高いスコアを獲得したフィーチャーが、次のプログラムインクリメント(PI)またはスプリントに直ちに組み込まれるべきものとなります。
方法1:手動による「スプレッドシートのやり繰り」
標準のJiraではカスタムフィールド間で計算を行うことができないため、大多数の組織は手動の回避策に頼っています。そのプロセスは通常、以下のようになります。
- カスタムフィールドの作成: Jira管理者が、「ビジネス価値」「時間的要件」「RR/OE」「ジョブサイズ」用の数値型のカスタムフィールドを作成します。
- バックログのエクスポート: プロダクトマネージャーがJQLクエリを使用して、優先順位付けされていないすべてのエピックまたはフィーチャーを検索し、そのリストをCSVまたはExcelファイルにエクスポートします。
- 数値の計算: フィボナッチ数列による見積もりをスプレッドシートに入力します。スプレッドシートにはあらかじめ数式が組み込まれており、遅延コストと最終的なWSJFスコアが計算されます。
- 並べ替えと更新: スプレッドシートをWSJFスコアの高い順に並べ替えます。その後、プロダクトマネージャーはJiraに戻り、スプレッドシートで示された順序と一致するように、アジャイルボード上の課題を手動でドラッグ&ドロップします。
スプレッドシートの問題点
この方法は技術的には機能しますが、深刻な欠陥を抱えています。それは、バックログの切り離された静的なスナップショットを作成してしまうことです。もしエンジニアリングリードが新たな複雑さを発見し、Jira上の「ジョブサイズ」の見積もりを5から13に増やしたとしても、スプレッドシートには反映されません。WSJFスコアは即座に時代遅れとなり、チームはもはや経済的に見合わないフィーチャーを組み込んでしまう可能性があります。
方法2:Jira内で直接WSJFを自動化する
最も成熟したアジャイル組織は、優先順位付けは作業が行われる場所で行われなければならないと認識しています。スプレッドシートのやり繰りを排除するために、チームはJira環境内で直接WSJFの計算を自動化する方法を必要としています。
標準のJiraには計算フィールドや複雑な数式に基づく動的なバックログの並べ替え機能が欠けているため、その解決策はAtlassian Marketplaceにあります。
**WSJF Calculation and Sorting for Jira**のような専用の拡張機能をインストールすることで、SAFeの優先順位付けフレームワークを日々のワークフローにシームレスに統合できます。
Jira内での自動化されたアプローチが、プロセスをどのように変革するかを以下に示します。
- リアルタイム計算: プロダクトマネージャーが「時間的要件」を更新したり、開発者がJiraの課題上で直接「ジョブサイズ」を調整したりした瞬間に、拡張機能が遅延コストと最終的なWSJFスコアを即座に再計算します。
- 動的な並べ替え: ボード上で課題を手動でドラッグ&ドロップする代わりに、JiraのバックログをWSJFスコアの高い順に自動的に並べ替えるよう拡張機能を構成できます。最も価値のある作業が自然に上位に配置されます。
- 信頼できる唯一の情報源(Single Source of Truth): ステークホルダーから開発者まで、全員がリアルタイムで全く同じデータを見るため、オフラインのスプレッドシートに伴うバージョン管理の問題が完全に排除されます。
結論
WSJFの計算に、データ入力の専門知識は必要ありません。SAFeの目標は価値をより早く提供することですが、Excelのエクスポートと格闘し、Jiraボードを手動で並べ替える作業は、チームのスピードを著しく低下させます。
静的なスプレッドシートから脱却し、WSJF Calculation and Sorting for Jiraのような自動化ツールを活用することで、優先順位付けが常に正確で最新の状態に保たれ、エンジニアリングチームが毎日使用しているプラットフォームに完全に統合されることを保証できます。計算作業をやめて、価値の提供を始めましょう。