プロダクトバックログとは、プロダクトを良くするために必要なものを、取り組む順に上から並べた1本の一覧です。 スクラムガイド2020は「創発的で、順序付けされた一覧」と定義し、スクラムチームが行う作業の唯一の情報源としています。

この記事は、項目を書いたあとの「並べる」「育てる」に絞ります。貼って使える表、架空の会議室予約アプリの記入例20件、優先順位の手法4つの比較、WSJFとRICEを同じ20件で計算したPythonの出力、リファインメントの進め方を順に示します。

確認環境:Ubuntu 24.04、Python 3.11(点数計算と並べ替えを実行)。スクラムの定義はスクラムガイド2020(scrumguides.org)を今回開いて確認しました。

プロダクトバックログの早見表

知りたいこと 答え
何を書くか 機能、改善、不具合の修正、調査など、プロダクトに必要なものすべて
列は何を持つか ID・項目・価値・見積もり・優先順位・受け入れ基準・状態の7つが基本
並び順のルール 上ほど先に着手する。同じ順位は作らず、1本の列にする
細かさ 上位は1スプリントで完成できる大きさ、下位は粗いままでよい
だれが並べるか プロダクトオーナーが順序に責任を持つ(作業を任せることはできる)
だれが見積もるか 作業をする開発者が大きさを決める
目指す先 プロダクトゴール(プロダクトの将来の状態)。バックログの確約にあたる
手入れ リファインメントで分割・詳細化・見積もり・並べ替えを続ける
優先順位の手法 範囲を決めるならMoSCoW、点数で並べるならWSJFかRICE、満足度の種類を見るなら狩野モデル

本記事の内容は、ご自由にお使いください。
ご利用の際は、出典として本ページへのリンクを記載いただけますようお願いします。

(記載例)出典:株式会社RJC「プロダクトバックログの書き方と例|優先順位の付け方とテンプレート」

バックログ表のテンプレート(7列)

列は増やしすぎないほうが続きます。まず次の7列で始めて、足りなくなったら列を足します。

列 書くこと 書き方の目安
ID 変わらない識別子 PB-01 のような連番。並べ替えても振り直さない
項目 何を実現するか 利用者の動作で1行。「〜を〜する」
価値 だれに何がうれしいか 1行。書けない項目は順位を決める材料が足りていない合図
見積もり 相対的な大きさ ストーリーポイント(1・2・3・5・8・13)など。開発者が付ける
優先順位 着手する順 1からの連番。重複なし
受け入れ基準 完成と言える条件 上位の項目ほど具体的に。下位は空欄でもよい
状態 いまの段階 新規/詳細化中/Ready/スプリント中/完成

空のテンプレートです。表計算ソフトのA1セルに貼ると列に分かれます。

順位  ID  項目  価値  見積もり    MoSCoW  受け入れ基準  状態
1                           
2                           
3                           

Markdownで管理する場合はこちらを使います。

| 順位 | ID | 項目 | 価値 | 見積もり | MoSCoW | 受け入れ基準 | 状態 |
|---|---|---|---|---|---|---|---|
| 1 |  |  |  |  |  |  |  |

「状態」のReadyは、スクラムガイド2020の「1スプリント内で完成できる項目は、スプリントプランニングで選択可能な準備完了の状態とみなす」という記述に対応させています。新規・詳細化中といった段階の名前はガイドにはなく、よく使われる分け方です。

記入例:会議室予約アプリのバックログ20件

題材は、社員約300人の会社で使う架空の会議室予約アプリです。プロダクトゴールは「社員が30秒以内に空いている会議室を見つけて予約できる」としました。

順位 ID 項目 価値 見積もり MoSCoW 受け入れ基準(要約) 状態
1 PB-04 社員アカウントでログインする だれの予約かを特定できる 5 Must 社員番号とパスワードで入れる。5回続けて誤ると10分間入れない Ready
2 PB-01 空き状況を日付で検索する 予約の出発点になる 5 Must 日付を選ぶと全会議室の空き枠が30分単位で出る Ready
3 PB-02 会議室を予約する アプリの中心となる機能 8 Must 空き枠を選び件名を入れて確定すると予約一覧に出る Ready
4 PB-06 同じ時間帯の重複予約を防ぐ 二重予約のやり直しをなくす 5 Must 同じ枠に2人が同時に確定しても1件だけ成立する Ready
5 PB-03 予約を取り消す 使わない枠をほかの人に回せる 3 Must 開始前の予約を取り消すと、その枠が空きに戻る Ready
6 PB-05 自分の予約一覧を見る 予定の確認が1画面で済む 3 Must 今日以降の自分の予約が開始時刻の順に並ぶ Ready
7 PB-12 管理者が会議室を登録・変更する 部屋の増減に運用で対応できる 5 Must 名前・定員・設備を登録すると検索結果に出る 詳細化中
8 PB-08 開始10分前に通知を受け取る 予約したまま使わない枠を減らす 3 Should 開始10分前にメールが1通届く。取り消し済みには届かない 詳細化中
9 PB-16 定員と設備で絞り込む 条件に合う部屋をすぐ選べる 3 Could 定員6人以上・モニターありで絞ると該当だけ残る 詳細化中
10 PB-07 予約の時刻を変更する 取り消しと再予約の二度手間を省く 5 Should 空いている枠へ変更でき、埋まっている枠は選べない 詳細化中
11 PB-11 カレンダー表示で空きを見る 1週間の空きをひと目で見られる 8 Should 週表示で部屋×時間のマスが色分けされる 詳細化中
12 PB-09 備品を会議室と一緒に予約する 備品の確保を別の手続きにしない 8 Should プロジェクターを同じ時間帯で同時に確保できる 新規
13 PB-15 スマートフォンの画面幅に対応する 席を離れていても予約できる 8 Should 幅375pxで横スクロールなしに予約を完了できる 新規
14 PB-13 利用開始時にチェックインする 使われていない枠を自動で空ける 5 Could 開始15分後までに操作がなければ枠が空きに戻る 新規
15 PB-10 毎週の定例を繰り返し予約する 定例の予約を1回で済ませる 13 Should 毎週同じ曜日・時刻で12回分をまとめて予約できる 新規
16 PB-17 よく使う部屋をお気に入りにする いつもの部屋を選ぶ手間を減らす 2 Could お気に入りの部屋が検索結果の先頭に並ぶ 新規
17 PB-18 ほかの人の分を代理で予約する 来客対応などを担当者に任せられる 5 Could 予約者と利用者を別々に指定して登録できる 新規
18 PB-14 利用状況を月ごとに集計する 部屋数を見直す材料になる 5 Could 部屋ごとの月間の利用時間をCSVで出せる 新規
19 PB-19 外部カレンダーと連携する 予定表と二重に入力しなくて済む 13 Won't 今回は対象外。連携方式の調査だけを別項目で行う 新規
20 PB-20 表示を英語に切り替える 英語で使いたい利用者に対応する 8 Won't 今回は対象外。文言を1か所に集める設計だけ守る 新規

同じ内容のタブ区切りです。

順位  ID  項目  価値  見積もり    MoSCoW  受け入れ基準  状態
1   PB-04   社員アカウントでログインする  だれの予約かを特定できる    5   Must    社員番号とパスワードで入れる。5回続けて誤ると10分間入れない Ready
2   PB-01   空き状況を日付で検索する    予約の出発点になる   5   Must    日付を選ぶと全会議室の空き枠が30分単位で出る Ready
3   PB-02   会議室を予約する    アプリの中心となる機能 8   Must    空き枠を選び件名を入れて確定すると予約一覧に出る    Ready
4   PB-06   同じ時間帯の重複予約を防ぐ   二重予約のやり直しをなくす   5   Must    同じ枠に2人が同時に確定しても1件だけ成立する Ready
5   PB-03   予約を取り消す 使わない枠をほかの人に回せる  3   Must    開始前の予約を取り消すと、その枠が空きに戻る  Ready
6   PB-05   自分の予約一覧を見る  予定の確認が1画面で済む    3   Must    今日以降の自分の予約が開始時刻の順に並ぶ    Ready
7   PB-12   管理者が会議室を登録・変更する 部屋の増減に運用で対応できる  5   Must    名前・定員・設備を登録すると検索結果に出る   詳細化中
8   PB-08   開始10分前に通知を受け取る  予約したまま使わない枠を減らす 3   Should  開始10分前にメールが1通届く。取り消し済みには届かない    詳細化中
9   PB-16   定員と設備で絞り込む  条件に合う部屋をすぐ選べる   3   Could   定員6人以上・モニターありで絞ると該当だけ残る 詳細化中
10  PB-07   予約の時刻を変更する  取り消しと再予約の二度手間を省く    5   Should  空いている枠へ変更でき、埋まっている枠は選べない    詳細化中
11  PB-11   カレンダー表示で空きを見る   1週間の空きをひと目で見られる 8   Should  週表示で部屋×時間のマスが色分けされる 詳細化中
12  PB-09   備品を会議室と一緒に予約する  備品の確保を別の手続きにしない 8   Should  プロジェクターを同じ時間帯で同時に確保できる  新規
13  PB-15   スマートフォンの画面幅に対応する    席を離れていても予約できる   8   Should  幅375pxで横スクロールなしに予約を完了できる    新規
14  PB-13   利用開始時にチェックインする  使われていない枠を自動で空ける 5   Could   開始15分後までに操作がなければ枠が空きに戻る 新規
15  PB-10   毎週の定例を繰り返し予約する  定例の予約を1回で済ませる   13  Should  毎週同じ曜日・時刻で12回分をまとめて予約できる    新規
16  PB-17   よく使う部屋をお気に入りにする いつもの部屋を選ぶ手間を減らす 2   Could   お気に入りの部屋が検索結果の先頭に並ぶ 新規
17  PB-18   ほかの人の分を代理で予約する  来客対応などを担当者に任せられる    5   Could   予約者と利用者を別々に指定して登録できる    新規
18  PB-14   利用状況を月ごとに集計する   部屋数を見直す材料になる    5   Could   部屋ごとの月間の利用時間をCSVで出せる    新規
19  PB-19   外部カレンダーと連携する    予定表と二重に入力しなくて済む 13  Won't   今回は対象外。連携方式の調査だけを別項目で行う 新規
20  PB-20   表示を英語に切り替える 英語で使いたい利用者に対応する 8   Won't   今回は対象外。文言を1か所に集める設計だけ守る 新規

読み取ってほしい点は3つです。

  • 上位6件はReadyで、受け入れ基準が具体的です。7〜11位は詳細化の途中、12位以下は1行の要約にとどめています。
  • 13ポイントの項目(PB-10、PB-19)は下位にあります。順位が上がってきたら、着手の前に分割します。
  • Won'tの2件も消さずに残しています。「今回は扱わない」と合意した記録になり、同じ議論の繰り返しを防げます。

優先順位の付け方:4つの手法の比較早見表

手法 出てくる結果 入力するもの 向いている場面 気をつける点
MoSCoW Must/Should/Could/Won'tの4分類 項目ごとの分類 リリースの範囲を関係者と合意する 同じ分類の中の順番は決まらない
WSJF 点数(大きいほど先) 事業価値・切迫度・リスク低減・大きさ 遅れると損が大きいものを先に出す 相対値なので、チームをまたいだ比較には向かない
RICE 点数(大きいほど先) Reach・Impact・Confidence・Effort 利用者数のデータがある機能改善を比べる 利用者が少ない土台の機能は低く出る
狩野モデル 当たり前・一元的・魅力的などの分類 利用者への2問1組のアンケート 満足度への効き方を見極める 調査の手間がかかり、順番そのものは出ない

MoSCoW は、提唱元のDSDM(Agile Business Consortium)の手引きで、Mustを「これが欠けると成立しない最小限の集合」、Shouldを「重要だが不可欠ではない」、Couldを「あれば望ましい」、Won'tを「今回の期間では提供しないと合意したもの」としています。同じ手引きは、Mustを全体の工数の60%以内に抑え、Couldを20%ほど持つことを勧めています。Couldが調整しろになるためです。

WSJF(Weighted Shortest Job First)は、SAFeで使われる考え方で、式は次のとおりです。

WSJF = 遅延コスト ÷ ジョブの大きさ
遅延コスト = 利用者・事業にとっての価値 + 時間的な切迫度 + リスク低減・機会創出

RICE は、Intercomが公開している採点方法です。

RICE = Reach × Impact × Confidence ÷ Effort
Reach      : 一定期間に影響を受ける人数
Impact     : 3(非常に大きい)/ 2(大きい)/ 1(中)/ 0.5(小)/ 0.25(ごく小)
Confidence : 100%(高)/ 80%(中)/ 50%(低)
Effort     : 人月

狩野モデル は、機能が「ある場合」と「ない場合」の感じ方を利用者にたずね、当たり前品質(ないと不満)・一元的品質(あるほど満足)・魅力的品質(なくても不満はないが、あるとうれしい)などに分ける方法です。この例では、重複予約の防止が当たり前品質、カレンダー表示が一元的品質、お気に入りが魅力的品質の候補になります。分類は調査で確かめるもので、点数計算はしません。

WSJFとRICEを同じ20件で計算する(Python)

WSJFの3要素は1・2・3・5・8・13の相対値で付け、ジョブの大きさには見積もりのポイントをそのまま使いました。RICEのReachは月あたりの利用者数です。数値はすべてこの例のための仮の値です。

# backlog_score.py  プロダクトバックログ20件を WSJF と RICE で採点して並べ替える
# 列: ID, 項目, 見積もり(ポイント), MoSCoW,
#     事業価値, 時間的な切迫度, リスク低減・機会創出  (WSJF 用。1,2,3,5,8,13 の相対値)
#     Reach(月あたり利用者数), Impact, Confidence, Effort(人月)  (RICE 用)
ITEMS = [
    ("PB-01", "空き状況を日付で検索する",       5, "M", 13, 8,  5, 300, 3,    1.0, 1.5),
    ("PB-02", "会議室を予約する",               8, "M", 13, 8,  8, 300, 3,    1.0, 2.0),
    ("PB-03", "予約を取り消す",                 3, "M",  8, 5,  3, 200, 2,    1.0, 0.5),
    ("PB-04", "社員アカウントでログインする",   5, "M",  8, 8, 13, 300, 2,    1.0, 1.0),
    ("PB-05", "自分の予約一覧を見る",           3, "M",  8, 5,  2, 250, 2,    1.0, 0.5),
    ("PB-06", "同じ時間帯の重複予約を防ぐ",     5, "M", 13, 8, 13, 300, 3,    0.8, 1.0),
    ("PB-07", "予約の時刻を変更する",           5, "S",  5, 3,  2, 150, 1,    0.8, 1.0),
    ("PB-08", "開始10分前に通知を受け取る",     3, "S",  5, 3,  1, 250, 1,    0.8, 0.5),
    ("PB-09", "備品を会議室と一緒に予約する",   8, "S",  8, 3,  3, 120, 2,    0.8, 2.0),
    ("PB-10", "毎週の定例を繰り返し予約する",  13, "S",  8, 5,  3, 100, 2,    0.5, 3.0),
    ("PB-11", "カレンダー表示で空きを見る",     8, "S",  8, 3,  2, 280, 2,    0.8, 2.0),
    ("PB-12", "管理者が会議室を登録・変更する", 5, "M",  5, 8,  8,   5, 3,    1.0, 1.0),
    ("PB-13", "利用開始時にチェックインする",   5, "C",  5, 2,  5, 200, 1,    0.5, 1.5),
    ("PB-14", "利用状況を月ごとに集計する",     5, "C",  3, 2,  2,   5, 2,    0.8, 1.0),
    ("PB-15", "スマートフォンの画面幅に対応する", 8, "S", 8, 3,  1, 180, 2,    0.8, 2.0),
    ("PB-16", "定員と設備で絞り込む",           3, "C",  5, 2,  1, 200, 1,    0.8, 0.5),
    ("PB-17", "よく使う部屋をお気に入りにする", 2, "C",  2, 1,  1,  80, 0.5,  0.5, 0.5),
    ("PB-18", "ほかの人の分を代理で予約する",   5, "C",  3, 2,  2,  30, 1,    0.8, 1.0),
    ("PB-19", "外部カレンダーと連携する",      13, "W",  5, 1,  3, 150, 2,    0.5, 3.0),
    ("PB-20", "表示を英語に切り替える",         8, "W",  2, 1,  1,  20, 1,    0.5, 2.0),
]

rows = []
for id_, name, size, moscow, bv, tc, rr, reach, impact, conf, effort in ITEMS:
    cod = bv + tc + rr                      # 遅延コスト(Cost of Delay)
    wsjf = cod / size                       # WSJF = 遅延コスト ÷ ジョブの大きさ
    rice = reach * impact * conf / effort   # RICE = Reach × Impact × Confidence ÷ Effort
    rows.append(dict(id=id_, name=name, size=size, moscow=moscow,
                     cod=cod, wsjf=wsjf, rice=rice))

by_wsjf = sorted(rows, key=lambda r: (-r["wsjf"], r["id"]))
by_rice = sorted(rows, key=lambda r: (-r["rice"], r["id"]))
for i, r in enumerate(by_wsjf, 1):
    r["wsjf_rank"] = i
for i, r in enumerate(by_rice, 1):
    r["rice_rank"] = i

print("ID     MoSCoW 大きさ 遅延コスト  WSJF 順位 |   RICE 順位 | 順位差  項目")
for r in by_wsjf:
    diff = r["rice_rank"] - r["wsjf_rank"]
    print(f'{r["id"]}  {r["moscow"]}      {r["size"]:>4} {r["cod"]:>8} {r["wsjf"]:>7.2f} {r["wsjf_rank"]:>4} |'
          f' {r["rice"]:>6.0f} {r["rice_rank"]:>4} | {diff:>+5}  {r["name"]}')

print()
print("RICE の上位10件:", " ".join(r["id"] for r in by_rice[:10]))
print("WSJF の上位10件:", " ".join(r["id"] for r in by_wsjf[:10]))
big = [r for r in rows if abs(r["rice_rank"] - r["wsjf_rank"]) >= 5]
print("順位が5以上ずれた項目:", ", ".join(f'{r["id"]}(WSJF {r["wsjf_rank"]}位 / RICE {r["rice_rank"]}位)' for r in big))

total = sum(r["size"] for r in rows)
for key, label in (("M", "Must"), ("S", "Should"), ("C", "Could"), ("W", "Won't")):
    s = sum(r["size"] for r in rows if r["moscow"] == key)
    n = sum(1 for r in rows if r["moscow"] == key)
    print(f"{label:<7}{n:>2}件 {s:>3}ポイント {s / total:6.1%}")
print(f"合計   {len(rows):>2}件 {total:>3}ポイント")

実行結果です。

ID     MoSCoW 大きさ 遅延コスト  WSJF 順位 |   RICE 順位 | 順位差  項目
PB-06  M         5       34    6.80    1 |    720    3 |    +2  同じ時間帯の重複予約を防ぐ
PB-04  M         5       29    5.80    2 |    600    5 |    +3  社員アカウントでログインする
PB-03  M         3       16    5.33    3 |    800    2 |    -1  予約を取り消す
PB-01  M         5       26    5.20    4 |    600    4 |    +0  空き状況を日付で検索する
PB-05  M         3       15    5.00    5 |   1000    1 |    -4  自分の予約一覧を見る
PB-12  M         5       21    4.20    6 |     15   18 |   +12  管理者が会議室を登録・変更する
PB-02  M         8       29    3.62    7 |    450    6 |    -1  会議室を予約する
PB-08  S         3        9    3.00    8 |    400    7 |    -1  開始10分前に通知を受け取る
PB-16  C         3        8    2.67    9 |    320    8 |    -1  定員と設備で絞り込む
PB-13  C         5       12    2.40   10 |     67   13 |    +3  利用開始時にチェックインする
PB-07  S         5       10    2.00   11 |    120   11 |    +0  予約の時刻を変更する
PB-17  C         2        4    2.00   12 |     40   15 |    +3  よく使う部屋をお気に入りにする
PB-09  S         8       14    1.75   13 |     96   12 |    -1  備品を会議室と一緒に予約する
PB-11  S         8       13    1.62   14 |    224    9 |    -5  カレンダー表示で空きを見る
PB-15  S         8       12    1.50   15 |    144   10 |    -5  スマートフォンの画面幅に対応する
PB-14  C         5        7    1.40   16 |      8   19 |    +3  利用状況を月ごとに集計する
PB-18  C         5        7    1.40   17 |     24   17 |    +0  ほかの人の分を代理で予約する
PB-10  S        13       16    1.23   18 |     33   16 |    -2  毎週の定例を繰り返し予約する
PB-19  W        13        9    0.69   19 |     50   14 |    -5  外部カレンダーと連携する
PB-20  W         8        4    0.50   20 |      5   20 |    +0  表示を英語に切り替える

RICE の上位10件: PB-05 PB-03 PB-06 PB-01 PB-04 PB-02 PB-08 PB-16 PB-11 PB-15
WSJF の上位10件: PB-06 PB-04 PB-03 PB-01 PB-05 PB-12 PB-02 PB-08 PB-16 PB-13
順位が5以上ずれた項目: PB-11(WSJF 14位 / RICE 9位), PB-12(WSJF 6位 / RICE 18位), PB-15(WSJF 15位 / RICE 10位), PB-19(WSJF 19位 / RICE 14位)
Must    7件  34ポイント  28.3%
Should  6件  45ポイント  37.5%
Could   5件  20ポイント  16.7%
Won't   2件  21ポイント  17.5%
合計   20件 120ポイント

結果の読み方

  • 上位の顔ぶれはほぼ同じです。上位10件のうち8件が両方に入りました。どちらの手法でも、価値が高く小さい項目が上に来ます。
  • PB-12(管理者が会議室を登録・変更する)はWSJFで6位、RICEで18位と大きく分かれました。使う人は管理者5人だけなのでReachが小さく、RICEでは低く出ます。一方で、部屋を登録できなければ予約そのものが始まらないため、WSJFではリスク低減と切迫度の点が効きます。利用者数が少ない土台の機能は、RICEだけで判断しないのが要点です。
  • PB-11とPB-15はRICEのほうが5つ上です。多くの人が触れる画面の改善はReachで点が伸びます。
  • MoSCoWの配分はMustが28.3%で、60%以内に収まっています。

点数は並べ替えの出発点です。計算結果の1位はPB-06(重複予約の防止)ですが、記入例の表ではログイン・検索・予約を先に置きました。予約の機能がなければ重複の防止は確かめられないためです。点数で並べたあと、依存関係とスプリントゴールとのまとまりで入れ替える、という2段階で決めます。

リファインメントの進め方とアジェンダ

スクラムガイド2020は、リファインメントを「項目をより小さく詳細に分割・定義する活動」とし、説明・並び順・大きさなどを加えていく継続的な活動としています。決まった会議として定めてはいません。次のアジェンダは、週1回60分で行う場合のよく使われる進め方です。

時間 内容 進める人 出てくるもの
0〜5分 今日扱う項目の確認(次の1〜2スプリント分) プロダクトオーナー 対象のIDの一覧
5〜25分 項目の説明と質問。価値と受け入れ基準を確かめる プロダクトオーナー、開発者 更新した受け入れ基準
25〜40分 大きい項目の分割(8ポイント超を目安) 開発者 分割後の項目
40〜52分 見積もり(プランニングポーカーなど) 開発者 各項目のポイント
52〜58分 並び順の見直し プロダクトオーナー 更新した順位
58〜60分 持ち帰りの確認(調査、関係者への質問) 全員 担当と期日

会の前に、プロダクトオーナーが対象項目の価値と受け入れ基準の下書きを入れておくと、説明の時間が短くなります。終了時に次のスプリント1.5〜2回分がReadyになっていれば、スプリントプランニングで選ぶ項目に困りません。

Readyの確認項目

確認すること 例(PB-08 開始10分前の通知)
価値が1行で言える 予約したまま使わない枠を減らす
受け入れ基準がある 開始10分前にメールが1通届く。取り消し済みには届かない
見積もりが付いている 3ポイント
1スプリントで完成できる大きさ 3ポイントで、ベロシティ20前後のチームに収まる
依存する項目が先に並んでいる PB-02(予約する)が上位にある

大きな項目の分割パターン一覧

順位が上がってきた大きな項目は、分けたそれぞれが単独で利用者の役に立つように切ります。画面・API・データベースといった層で切ると、どれか1つが完成しても動かせないため、下の切り口を使います。

パターン 切り口 PB-10(毎週の定例を繰り返し予約する・13ポイント)や他項目での例
操作の手順で分ける 手順の前半と後半 繰り返しの登録/登録済みの繰り返しの一括取り消し
規則の種類で分ける 基本の規則と追加の規則 毎週のみ/隔週・毎月にも対応
正常系と例外で分ける まず通る道、次に例外 すべて空いている場合/一部が埋まっている場合の扱い
データの範囲で分ける 対象を絞って始める 会議室のみ/備品も一緒に(PB-09)
操作の種類で分ける 登録・参照・変更・削除 会議室の登録/変更・削除(PB-12)
画面の広さで分ける 対応する端末 PC幅のみ/スマートフォン幅(PB-15)
手作業から自動へ まず手動で成立させる 管理者がCSVで集計/画面で月次集計(PB-14)
調査を切り出す 不明点を先に明らかにする 外部カレンダーの連携方式の調査/連携の作り込み(PB-19)
性能・品質を後から足す まず動かし、次に速くする 週表示を出す/表示を1秒以内にする(PB-11)

PB-10を上の2つで分けた例です。分割後は見積もりを付け直し、それぞれ別の順位に置きます。

ID 項目 見積もり 順位の置き方
PB-10a 毎週同じ曜日・時刻で繰り返し予約する(すべて空いている場合) 5 元の位置
PB-10b 一部が埋まっているとき、空いている回だけ予約して結果を示す 5 PB-10aの直後
PB-10c 繰り返し予約をまとめて取り消す 3 下位へ

つまずきやすい点と直し方

起きること 直し方
「高・中・低」だけで並べ、高が半分を占める 1からの連番にして、同じ順位を作らない
すべての項目を同じ細かさで書こうとして止まる 上位だけ詳しくし、下位は1行にとどめる
バックログが増え続けて全体が見えなくなる Won'tや長く動かない項目を定期的に別シートへ移す
技術的な作業や不具合が別の一覧に散らばる 同じ1本の列に入れ、同じ基準で順位を付ける
点数の順をそのまま最終の順にする 依存関係とスプリントゴールとのまとまりで入れ替える
見積もりをプロダクトオーナーが決めている 作業をする開発者が大きさを付ける

よくある質問

Q. プロダクトバックログとスプリントバックログの違いは何ですか? A. プロダクトバックログはプロダクト全体の一覧で、プロダクトオーナーが順序に責任を持ちます。スプリントバックログは、そのスプリントで選んだ項目と、スプリントゴール、完成させるための計画を合わせたもので、開発者が持ちます。

Q. 項目は何件くらいあればよいですか? A. 件数の決まりはありません。目安として、Readyの項目が次のスプリント1.5〜2回分あり、その先は粗い項目で数か月分の方向が見えていれば足ります。

Q. WSJFとRICEはどちらを使えばよいですか? A. 利用者数のデータが取れる機能改善が中心ならRICE、期限や土台づくりのように遅れの影響を重く見たいならWSJFが合います。どちらも入力は相対的な見立てなので、1つに決めて続けるほうが比べやすくなります。

Q. 不具合の修正もバックログに入れますか? A. 入れます。別の一覧に分けると、機能追加との順番を比べられなくなります。スプリント中に見つかった、そのスプリントの項目の不具合は、その項目の完成に含めて直します。

まとめ

  • プロダクトバックログは、必要なものを取り組む順に並べた1本の一覧です。
  • 表はID・項目・価値・見積もり・優先順位・受け入れ基準・状態の7列で始めます。
  • 上位は細かく、下位は粗く。全項目を同じ細かさにしません。
  • 範囲の合意にはMoSCoW(Mustは工数の60%以内)、順番づけにはWSJFかRICEを使います。
  • 点数で並べたあと、依存関係とスプリントゴールで入れ替えて最終の順にします。
  • リファインメントで、次のスプリント1.5〜2回分をReadyに保ちます。
  • 大きな項目は、分けたそれぞれが単独で役に立つ切り口で分割します。

参考

  • スクラムガイド2020(Ken Schwaber、Jeff Sutherland): https://scrumguides.org/scrum-guide.html
  • MoSCoW Prioritisation(Agile Business Consortium、DSDM): https://www.agilebusiness.org/dsdm-project-framework/moscow-prioririsation.html
  • WSJF(Scaled Agile Framework): https://framework.scaledagile.com/wsjf
  • RICE: Simple prioritization for product managers(Intercom): https://www.intercom.com/blog/rice-simple-prioritization-for-product-managers/

本記事の内容は、ご自由にお使いください。
ご利用の際は、出典として本ページへのリンクを記載いただけますようお願いします。

(記載例)出典:株式会社RJC「プロダクトバックログの書き方と例|優先順位の付け方とテンプレート」

株式会社RJC ― SI事業・SES事業・AI駆動開発。RJCは一緒に成長を楽しめる会社です。

WE ARE HIRING

RJCで一緒に開発しながら、
成長を楽しみませんか?

RJCは、Web・モバイル・AIを活用した開発プロジェクトで、テックリードやPM・PMOも活躍するシステム開発会社です。会社を知る、待遇を確かめる、話を聞いてみる。気になるところ見てみてください!

  • 127日年間休日
  • 12時間平均残業時間
  • 毎日ガチャ遊びココロも大切にする福利厚生。アマギフなどの賞品ラインナップ!

ほかにも、チケットレストラン、書籍読み放題、2年ごとの慰労報奨(休暇 or 金一封)、11期連続の黒字決算。

ABOUT RJC RJCがどんな会社か知る 考え方、研修、働き方、福利厚生、社員の前職まで。RJCのことが丸わかり! RJC丸わかりページへ JOB DESCRIPTION 仕事内容・待遇を見てみる 仕事内容、給与・待遇、選考の流れ。経験者も未経験も!応募前に知りたいこと、まとめました! 募集要項を見る ENTRY エントリーする エントリーは1〜2分・履歴書不要です。まずは話を聞いてみたい、という方でも歓迎です! エントリーフォームへ

RJCで一緒に開発しながら、 成長を楽しみませんか?