🎬 シナリオ
MOps チームは 「お歳暮ギフト対応(ラッピング・のし)」 を開発している。ギフト受付の開始は 11/2(月)10:00。カタログとメルマガで告知済みで、動かせない。リリース前の凍結は 10/28(水)。残りのスプリントは2回しかない。
- Sprint 19: 9/28(月)〜10/9(金)稼働10日 ← 今回計画するスプリント
- Sprint 20: 10/12(月・スポーツの日)〜10/23(金)稼働9日
体制はエンジニア4名(A・B: バックエンド、C: フロントエンド、D: フルスタック)と QA 1名(E)。2週間スプリント。
困っているのは、この4スプリント、毎回「計画の6割前後しか終わらない」こと。毎回、最終日に「ほぼ終わっている」項目が4〜6件残り、持ち越される。単発の障害や欠員ではない。
あなたはプランニングのファシリテーターを任された。
過去4スプリントの実績 実測
| スプリント | 期間 | 稼働日 | 計画pt | 完了pt | 最終日に進行中 | うちQA待ち | 割り込み対応 | QA作業見積もり / QA作業可能時間 |
|---|---|---|---|---|---|---|---|---|
| S15 | 8/3–8/14 | 9(8/11 山の日) | 34 | 21 | 5 | 3 | 38h | 52h / 49.5h |
| S16 | 8/17–8/28 | 10 | 32 | 23 | 4 | 3 | 31h | 58h / 55h |
| S17 | 8/31–9/11 | 10 | 35 | 19 | 6 | 4 | 52h | 61h / 55h |
| S18 | 9/14–9/25 | 7(9/21–23 連休) | 30 | 15 | 5 | 3 | 41h | 44h / 38.5h |
その他の実測値
| 項目 | 値 | 出所 |
|---|---|---|
| 4スプリントで完了した件数 | 19件(稼働36日) | 実測 課題管理ツール |
| スプリント中の同時進行件数(日次平均) | 6.5件 | 実測 ボードの日次スナップショット |
| 着手から完了までの平均日数(サイクルタイム) | 11.8稼働日 | 実測 課題管理ツール |
| 会議を除いた1人1日の作業可能時間 | 5.5h | 実測 カレンダー集計 |
| 時間見積もりに対する実績の比 | エンジニア 1.5倍 / QA 1.2倍 | 実測 直近4スプリントのタスク |
| 前年のギフト受注の山 | 11/20〜12/10 | 実測 社内の受注データ |
Sprint 19 の在席予定: A・B・D は10日、C は 10/8–9 休暇(8日)。QA の E は 10/1 社外研修(9日)。
Sprint 19 の候補(PO の並び順・プランニングポーカー済み)
| ID | 項目 | pt | PO の優先度 | 備考 |
|---|---|---|---|---|
| G1 | 【繰越】のし種別マスタ(御歳暮・御礼・内祝など6種)と注文明細への保存 | 5 | 最優先 | 実装完了。QA待ちのまま S18 終了 |
| G2 | 【繰越】ラッピング料金(1個口 330円・税込)を注文金額の計算に反映 | 5 | 最優先 | 実装約7割。金額計算の既存テストが薄く、レビューで差し戻し |
| G3 | カート画面のラッピング・のし選択 UI(有無・のし種別・表書き) | 5 | 高 | |
| G4 | のしの名入れ(贈り主名、全角10文字まで)の入力とチェック | 5 | 高 | |
| G5 | 倉庫のピッキングリスト(CSV)にラッピング・のしの指示列を追加 | 3 | 高 | 物流部: 10/19 から倉庫スタッフ研修。実物の CSV サンプルが要る |
| G6 | 1注文で複数の届け先(最大10件)を指定 | 13 | 高(マーケ強く要望) | 送料計算・在庫引当・配送伝票の分割に影響 |
| G7 | ギフト用の納品書(金額を表示しない)の出力 | 3 | 中 | |
| G8 | ラッピング見本画像のプレビュー | 3 | 低 | デザイン部の要望 |
| G9 | 注文金額計算の単体テスト整備(エンジニア提案) | 3 | 提案 | G2 の差し戻しの原因 |
| PO 案: G1 + G2 + G3 + G4 + G6 | 33 |
📝 課題
あなたのタスク: 月曜のプランニングで使う Sprint 19 の計画書 を作ってください。次の5点を含めること。
- 持ち越しが続く原因の診断(表のデータから。「頑張りが足りない」「見積もりが甘い」で止めない)
- 今回の予測量(pt)とその計算。「連休のせい」という PO の主張に数字で答える
- スプリントゴール(1〜2文)と、それに対するスプリントバックログ(何を入れ、何を入れないか、理由)
- QA の作業時間での検算と、同時進行の上限(WIP 上限)などの進め方のルール
- 途中の見直し条件(何日目に何を見て、どうなっていたら何を削るか)
加えて、検討した計画案(採らなかった案)を2つ以上、理由と「判断が変わる条件」つきで残してください。
🔍 ヒント(段階的開示)
ヒント1: 稼働日で割る
ヒント2: どこで詰まっているか
ヒント3: リトルの法則
ヒント4: 約束は何か
ヒント5: 13pt の項目とギフトの常識
📚 背景知識・用語解説
- スプリントプランニングで扱う3つの問い: なぜ価値があるか(Why)/何を完成させられるか(What)/どうやって完成させるか(How)
- Why の答えがスプリントゴール。ガイドはこれを「スプリントの唯一の目的」とし、スプリントバックログに対する約束(コミットメント)と位置づける
- 予測の精度を上げる材料として「過去の実績、今後のキャパシティ、完成の定義」を挙げる
- スプリント中は「ゴールを危うくする変更はしない」「品質を下げない」「学んだことに応じて PO とスコープを明確化・再交渉する」
- 完成の定義を満たさない項目はレビューで見せることもできず、プロダクトバックログに戻る。「9割終わった」は0と同じ
次のスプリントで終わる量の最良の予測は、直近で実際に終わった量。Jeff Sutherland らのパターン集にある考え方。「計画した量」ではなく「完了した量」を見る。
ベロシティ駆動=過去の平均 pt まで積む。キャパシティ駆動=1項目ずつタスクに分けて時間を見積もり、満杯で止める。Cohn はベロシティが短期では±20%程度ぶれるとしてスプリント単位にはキャパシティ駆動を好み、ベロシティは長期の見通しに使うとする。今回は pt で総量を決め、時間で QA の詰まりを検算するという形で両方を使う。
平均の仕掛かり数 = 1単位時間あたりの処理数 × 平均の滞在時間。同時にたくさん着手するほど、1件が終わるまでの日数は長くなる。処理能力が同じなら、着手を絞るだけで1件が早く終わる。
ボトルネック(制約): 流れ全体の速さは、いちばん詰まっている工程で決まる。エンジニア4人・QA 1人なら、QA を通った分しか「完成」にならない。ボトルネックでない人の空き時間は、ボトルネックを助けるのに使う。
✅ 模範解答
1. 持ち越しの原因の診断
(1) 連休の影響を除いても、完了量は計画の約3分の2で安定している
| スプリント | 稼働日 | 計画pt | 完了pt | 完了pt / 稼働日 | 計画に対する完了率 |
|---|---|---|---|---|---|
| S15 | 9 | 34 | 21 | 2.33 | 62% |
| S16 | 10 | 32 | 23 | 2.30 | 72% |
| S17 | 10 | 35 | 19 | 1.90 | 54% |
| S18 | 7 | 30 | 15 | 2.14 | 50% |
| 平均 | 32.8 | 19.5 | 2.17 | 60% |
出所: 導出(実測値から計算)
PO の言うとおり、S18 の15ptは稼働日が7日しかなかったためで、1日あたりに直すと 2.14pt で、ふだんと変わらない。ただしそれは「このチームのふだんのペースは10日で約22pt」ということでもある。33ptは、この4回で一度も達成されていない量。連休は S18 の説明にはなるが、S15〜S17 の持ち越しの説明にはならない。
(2) 詰まっているのは QA
- 最終日に進行中だった 5・4・6・5件のうち、QA 待ちが 3・3・4・3件(毎回半分以上)
- QA 作業の見積もりは4回とも QA の作業可能時間を超えていた。しかも QA の見積もりは実績で1.2倍に膨らむ
- エンジニアの実装量に合わせて計画し、QA の時間を見ていなかった。pt では1人しかいない QA の詰まりは見えない
(3) 同時に着手しすぎて、1件が終わるまでにスプリントより長くかかっている
平均サイクルタイム = 同時進行 6.5件 ÷ 0.53件/日 ≒ 12.3日 導出・リトルの法則
実測のサイクルタイム = 11.8日 実測(計算とほぼ一致)
1件が終わるまで平均約12日、スプリントは10日。2日目以降に着手した項目は、平均的にはスプリント内に終わらない。これが「毎回9割で持ち越す」の正体。
2. Sprint 19 の予測量
予測 = 1日あたり完了pt × 稼働日10日 × 在席率95%
中央: 2.17 × 10 × 0.95 ≒ 20.6pt
低め: 1.90 × 10 × 0.95 ≒ 18.1pt(過去4回で最も遅いペース)
高め: 2.33 × 10 × 0.95 ≒ 22.2pt(過去4回で最も速いペース)
→ 予測の幅 18〜22pt 導出
ゴールに必要な項目は、幅の下限 18pt 以内に収める。下限なら、過去4回のどのペースでもゴールには届く。
3. スプリントゴール
- 11/2 に最低限必要なのは、画面・金額・倉庫がつながっていること。部品が別々に9割できていても、つながっていなければ受付は始められない
- 物流部は 10/19 からの研修に実物の CSV が要る。S19 で G5 を終えれば 10/9 に渡せて10日の余裕ができる
- 金額計算(G2)は、誤りが出ると受付開始後に止めるしかない部分。先に通しで確認する
4. スプリントバックログ
| 順 | ID | 項目 | pt | 区分 | 理由 |
|---|---|---|---|---|---|
| 1 | G1 | 【繰越】のし種別マスタ | 5 | ゴール | 実装済みで QA だけ。初日に QA に流す |
| 2 | G2 | 【繰越】ラッピング料金の金額計算 + ラッピング料金に関わる境界テスト(G9 のうち G2 に関係する部分) | 5 | ゴール | 差し戻しの原因だったテスト不足を G2 の完成の定義に含める。G9 を別項目にすると、また後回しになる |
| 3 | G3 | カート画面の選択 UI(有無・のし種別・表書き) | 5 | ゴール | 一本道の入口 |
| 4 | G5 | ピッキングリストの指示列 | 3 | ゴール | 一本道の出口。物流部の研修に間に合わせる |
| ゴールの合計 | 18 | 予測の下限 18.1pt に収まる | |||
| 5 | G4 | のし名入れ | 5 | 余力枠 | 着手条件は「見直し条件」参照。約束に含めない |
| 6 | G7 | 金額非表示の納品書 | 3 | 余力枠 | 同上 |
| — | G6 | 複数届け先 | 13 | 入れない | 分割の話し合いだけ行う(PO・A・D で1時間×2回) |
| — | G8 | 見本画像のプレビュー | 3 | 入れない | ゴールに関係しない |
| — | G9 | 金額計算テストの残り(ラッピング以外) | 2相当 | 入れない | G2 に必要な部分だけ取り込んだ。残りはプロダクトバックログへ |
5. QA の作業時間での検算
| ID | エンジニア見積もり | QA 見積もり |
|---|---|---|
| G1 | 2h | 6h |
| G2(境界テスト込み) | 14h | 10h |
| G3 | 30h | 10h |
| G5 | 10h | 4h |
| 通しの確認(注文→倉庫 CSV) | 4h | 8h |
| 合計(見積もり) | 60h | 38h |
| 実績比で補正(エンジニア×1.5、QA×1.2) | 90h | 45.6h |
見積もり: タスク分解の結果 / 補正比 実測 / 合計 導出
割り込み予約 47h: 1稼働日あたりの割り込み(4.2・3.1・5.2・5.9h)の中央値 4.7h × 10日 導出。PO 案の QA = (6+10+10+8+20)×1.2 ≒ 65h、エンジニア = (2+14+30+16+40)×1.5 ≒ 153h(G4・G6 の時間見積もりはタスク分解の概算)。
- G2 の金額計算の回帰テストを自動化(B、QA の手作業を約5h減)
- G5 の CSV は D が期待値ファイルとの差分チェックを作り、物流部に実物サンプルで確認してもらう(QA 約3h減)
6. 進め方のルール(このスプリントで試す)
| ルール | 内容 | 理由 |
|---|---|---|
| 同時進行の上限 | 「実装中」と「QA 中」を合わせて 3件まで | 完了ペースが同じでもサイクルタイムは 3 ÷ 0.53 ≒ 約5.7日 仮定: 完了ペース不変 |
| 上限に達したら | 新しい項目に着手せず、QA 待ちの項目のテスト・レビュー・修正を手伝う | 手が空いたエンジニアが新規着手すると、また QA 待ちが増える |
| 着手順 | G1 → G2 → G3 → G5。G1 は初日に QA へ | 繰越を最初に片付け、QA の手を初日から止めない |
| 完成の定義 | QA 完了・ステージングで確認済み・金額に関わる変更は境界テストつき | 「9割」は完成ではない |
7. 途中の見直し条件
| 時点 | 見るもの | こうなっていたら | 対応 |
|---|---|---|---|
| 3日目(9/30) | G2 が QA に入ったか | 入っていない | D が B とペアで G2 に入る。G3 は C だけで続ける |
| 6日目(10/5) | ゴール4件のうち QA 完了数/QA の残り時間 | QA 完了2件以上、かつ QA の残り作業が残り時間の半分以下 | G4(名入れ)に着手してよい |
| 6日目(10/5) | 同上 | QA 完了が1件以下 | G4・G7 には着手しない。エンジニアは QA 支援へ |
| 8日目(10/7) | G3 が QA に入ったか | 入っていない | PO と G3 の範囲を話し合う(例: 表書きの自由入力をやめ選択肢だけに)。一本道は守り、中身を削る |
| 随時 | 割り込み対応の累計 | 予約47h を超えそう | PO に報告。余力枠を諦めるか、割り込みを止めるかを PO が決める |
8. PO への説明(プランニングの冒頭で5分)
- 「連休のせい、は S18 については正しいです。ただ1日あたりにすると S18 はふだんどおりで、ふだんのペースが10日で約22ptなんです。33ptはこの4回で一度も終わっていません」
- 「持ち越しの半分以上は QA 待ちです。QA の作業は4回とも QA の時間を超えていました。PO 案だと QA 作業は約65h、QA の時間は約50hです」
- 「今回は 18pt でゴールを約束します。過去いちばん遅いペースでも終わる量です。余力が出たら G4・G7 に進みます」
- 「G6 は入れないのではなく、今回のスプリント中に分割して、10/9 のレビューで『11/2 に何件の届け先まで出すか』を決められる材料を出します」
9. リリースまでの見通し(10/9 のレビューで PO が決めること)
S20 の予測: 2.17 × 9日 ≒ 19.5pt(幅 17〜21pt)導出。余力枠に着手できなかった場合、S20 に残るのは G4 5 + G7 3 + G6 13 + G8 3 = 24pt で予測を超える。
| 項目 | ギフトとしての必要度 | S20 の扱い(案) |
|---|---|---|
| G7 金額非表示の納品書 | 贈り物に代金入りの納品書が同梱されると贈り主が困る。受付開始時に必要 | PO の優先度「中」→「高」を提案 |
| G4 のし名入れ | お歳暮ののしは贈り主名を入れるのが一般的。受付開始時に必要 | S20 で必ず入れる |
| G6 複数届け先 | 無くても1件ずつ注文すれば贈れる(手間は増える) | 分割の結果しだい。受注の山は 11/20〜12/10 なので 11/16 までの追加リリースでも間に合う |
| G8 見本画像 | 無くても注文できる | S20 では入れない |
🧭 なぜこう作るのか
⚖️ 検討した計画案と採らなかった理由
| 案 | 内容 | 判断 | 理由 | 判断が変わる条件 |
|---|---|---|---|---|
| A. PO 案 | 計画の平均どおり 33pt(G6 含む) | 不採用 | 33pt は4回とも未達。QA 作業は約65h で QA の時間の約1.3倍。G6 が9割で持ち越す可能性が高い | QA が1名増えるなど、QA の時間が約65h 以上確保できる場合 |
| B. 完了 pt の単純平均 | 19.5pt まで積む | 手法として不採用 | 今回はたまたま近いが、稼働7日の S18 が混ざる。S20(稼働9日)では日数で直さないとずれる | 全スプリントの稼働日が同じなら単純平均で十分 |
| C. 時間だけで積む | エンジニアの162h が埋まるまで(G4・G6 まで入る) | 不採用(検算にだけ使う) | 詰まっているのは QA。エンジニアの時間で積むと QA があふれ、これまでと同じ結果になる | QA の作業の大半が自動テストで済むようになった場合 |
| D. G6 をゴールにする | マーケが一番欲しい複数届け先をゴールに | 不採用 | サイクルタイム約12日のチームで13pt の1項目は収まりにくい。持ち越すと 11/2 に一本道も無い | G6 を5pt以下に分割でき、その一部が 11/2 に必須と PO・マーケが判断した場合 |
| E. 採用案 | 稼働日で直した完了ペースで 18〜22pt、ゴールは下限18pt、QA 時間で検算、同時進行3件まで | 採用 | PO の主張の正しい部分を認めたうえで、持ち越しの原因(QA・同時着手)に手を打てる | WIP 上限を2スプリント試して、1日あたり完了が 1.9pt を下回り続けたら上限値を見直す |
⚠️ よくある失敗パターン
| 失敗パターン | なぜ問題か | 改善策 |
|---|---|---|
| 「計画した pt」の平均で積む | 毎回持ち越すチームでは、計画の平均は達成されたことのない数字 | 完了した pt を見る(昨日の天気) |
| 稼働日数が違うスプリントをそのまま平均する | 連休のスプリントが混ざると低く出て「連休のせい」論争になる | 1稼働日あたりに直してから比べる |
| pt だけで計画する | 1人しかいない役割(QA・デザイナー等)の詰まりが見えない | 詰まりやすい役割だけでも時間で検算する |
| 項目の羅列をスプリントゴールにする | 途中で何を削ってよいか判断できない。全部できないと失敗になる | 「何ができる状態にするか」を1文で書く |
| 手が空いたら次の項目に着手する | 同時進行が増え、1件が終わるまでの日数が延びる | 上限を決め、上限に達したら QA・レビューを手伝う |
| 技術的な改善を別項目にする | 機能の優先度に負けて毎回後回しになる | 機能の完成の定義に、その機能に必要な分だけ含める |
🏢 実務での使いどころ
「毎回持ち越す」チームは多いが、原因を見積もりの甘さや頑張りに求めると次も同じことが起きる。このシナリオの診断は、課題管理ツールとボードから取れる数字(完了 pt・稼働日・QA 待ち件数・同時進行件数・サイクルタイム)だけでできる。ファシリテーターがプランニング前に集計しておけば、「PO の希望」と「チームの感覚」の言い合いを、同じ表を見ながらの話し合いに変えられる。
- PO: 「約束はゴール、量は予測」と整理すると、「確実に届くもの」と「最大でどこまで行くか」を分けてステークホルダーに説明できる
- QA: ボトルネックの人の不足を計画の場で数字で示すと、エンジニアがテストを手伝う話を始めやすい
- 物流部・マーケ: 他部署の日付(研修 10/19、受付 11/2)を、ゴールの順番を決める根拠に使う
転用できるテンプレート
診断: スプリント | 稼働日 | 計画pt | 完了pt | 完了pt/稼働日 | 最終日の進行中(うち○○待ち)
予測: 1日あたり完了pt × 稼働日 × 在席率 → 下限〜上限
ゴール: [何が] [どこまで] できる状態にする(1文)
バックログ: 順 | ID | pt | 区分(ゴール/余力枠/入れない) | 理由
検算: 詰まりやすい役割の 見積もり×実績比 / 作業可能時間
ルール: 同時進行の上限・上限に達したときの動き・完成の定義
見直し: 何日目 | 見るもの | こうなっていたら | 対応
➡️ 次のステップ
- Sprint 19 のレトロで、ゴール達成の有無・最終日の進行中件数・平均サイクルタイムを今回の数字(進行中5件前後・11.8日)と比べる(テーマ3-3 レトロの題材)
- バーンアップチャート(テーマ3-2)で「ゴールの18pt」と「余力枠込みの26pt」の2本の線を引くと、6日目の見直し判断にそのまま使える
- 自分への問い: 10/5 時点で割り込みが既に40h、G3 がまだ実装中だったら、何を PO に提案するか。ゴールの文をどこまで削ってよいか
🚧 扱わなかった範囲(この演習の限界)
- 在席率はエンジニアの休暇だけで補正し、QA の研修は QA の時間の検算に入れた。デザイナーはバックログに作業が無い前提で除外
- 割り込み予約47h は過去4回の1日あたり中央値から出した。割り込みそのものを減らす方法(当番制・CS への一次対応移管など)は扱っていない
- WIP 上限3件でサイクルタイム約5.7日は、完了ペースが変わらないという仮定つき。切り替えが減って上がることも、ペア作業で下がることもある。2スプリント試して実測で確かめる
- G6 の具体的な分割案は、PdM-要求のユーザーストーリー分割(テーマ4-2)の題材として残した
- 「実測」ラベルの数値はすべて演習シナリオ上の設定値で、実在企業のデータではない。外部の一次資料はスクラムガイド2020・Scrum Inc.・Mountain Goat Software・Little(1961)の4点
- Sprint 20 は予測量とリリースの見通しだけで、計画の中身は作っていない