Day 013 — PM-推進: スプリント計画の立て方

2026-08-28 (Fri) 🟢 Junior PM-推進(アジャイル運営・ステークホルダー) 成果物: スプリントプランニング資料

🎬 シナリオ

MOps(Marketing Ops/販促システム)チームは「配送遅延時に自己解決できる問い合わせチャットボット」機能を開発中で、2週間スプリントでアジャイル開発を回っている。これまでエンジニア3名体制だったが、今週から中途入社のジュニアエンジニア1名が新たにチームに加わり、4名体制になった。あなたはこのチームのエンジニアで、新体制で迎える最初のスプリント(Sprint 13)のプランニングMTGのファシリテーションを任された。

直近3スプリント(3名体制時)の実績ベロシティは以下の通り。

スプリント完了ポイント備考
Sprint 1024pt特記事項なし
Sprint 1130pt特記事項なし
Sprint 1215ptメンバー1名がインフルエンザで4日間不在

プロダクトオーナーからは、次スプリントの候補として以下のバックログアイテムが提示されている(見積もりは既にプランニングポーカーで完了済み)。

IDアイテム内容見積もり優先度(PO指定)
S1配送業者API連携タイムアウト時のリトライ処理(先スプリントからの繰越。外部ベンダー側の仕様確認待ちで最終日にブロックされた)5pt最優先(繰越)
S2配送遅延理由の自動判定ロジック(配送状況APIと連携)13pt高
S3誤った追跡番号を表示する本番バグの修正(CSに週5件クレーム発生中)2pt緊急
S4マイページからのチャットボット起動導線追加5pt中
S5チャットボット応答のログ基盤整備(技術負債・PO未評価、エンジニア提案)8ptエンジニア提案
S6新メンバー向け開発環境構築・コードベース理解タスク3pt必須(体制維持のため)
S7チャット履歴画面のUIリニューアル(デザイン部門要望)5pt低
S8配送遅延理由自動判定ロジックの管理画面(S2に依存)5pt高

さらに、次スプリント中に以下の事情があることが分かっている。

  • 新メンバーのオンボーディングのため、エンジニア1名がスプリント中の稼働時間の約20%程度をメンタリングに充てる見込み
  • スプリント中日に全社セキュリティ研修(半日、全員参加必須)がある
💬
エンジニアリード「新体制での最初のスプリントだから、無理な積み込みだけは避けたい。ベロシティの根拠と積み込み判断を、あとでチームに説明できる形にしておいて」

📝 課題

あなたのタスク: 次スプリント(Sprint 13)のプランニング資料を作成してください。以下を含めること。

  1. 次スプリントの目標ベロシティを、直近3スプリントの実績と今回特有の事情(新メンバー加入・メンタリング負荷・全社研修)を踏まえて算出し、その根拠を示す
  2. バックログアイテムのうち、目標ベロシティの範囲内で積み込むタスクの一覧を優先度に沿って決定する(依存関係がある項目、新メンバー向けタスクの扱いにも触れる)
  3. 積み込まなかった項目について、なぜ見送ったかを一言ずつ添える

🔍 ヒント(段階的開示)

取り組む前のヒント
  • ベロシティは単純平均だけで決めない。異常値(インフル欠勤などの特殊要因があったスプリント)をどう扱うかを明示する
  • 新メンバーの加入を「頭数が増えた分、単純にキャパシティが純増する」と捉えない。新メンバー自身の最初のスプリントの生産量はオンボーディングタスクにほぼ吸収されること、既存メンバーのメンタリング時間はその分ほかのタスクに使えなくなることの両方を考慮する
  • 繰越タスク(S1)は必ず最優先で積む
  • 緊急バグ(S3)のように、POの優先度指定にかかわらず事業影響が大きいものは優先して積む判断が必要になる場合がある
  • 依存関係のあるタスク(S8はS2に依存)は、依存元が完了予定でも、容量の限界であれば見送ってよい
  • 新体制・見積もりの不確実性が高い場面では、目標ベロシティを使い切らずに、あえて余白(バッファ)を残す判断もありうる

📚 背景知識・用語解説

ベロシティ(Velocity)とは、スクラムチームが1スプリントあたりに完了できるストーリーポイントの実績値のことです。過去の実績をそのまま次回の目標にするのではなく、次スプリント特有の事情を加味して補正するのが基本的な考え方です。

チーム編成が変わるときのベロシティの考え方は特に注意が必要です。メンバーが増えると直感的には「キャパシティが増える」と考えがちですが、新メンバーの最初のスプリントには次の2つのマイナス要因が同時に発生します。

  1. 新メンバー自身の立ち上がりコスト: 最初のスプリントは、開発環境構築やコードベースの理解に時間の大半を使うため、通常の生産性を出せません。むしろ「オンボーディングタスクそのもの」を1つのバックログアイテムとして明示的に積むほうが実態に近くなります。
  2. 既存メンバーのメンタリング負荷: 新メンバーの質問対応やレビューに時間を割く分、既存メンバーが通常こなせるはずだった作業量が目減りします。
💡
つまり、新メンバー加入直後のスプリントは、チーム人数は増えても目標ベロシティは下がる(少なくとも純増にはならない)というのが実務でよくあるパターンです。

不確実性が高いときのバッファの考え方も重要です。通常のスプリント計画では目標ベロシティにできるだけ近づけて積み込みますが、今回のように「新体制での初回」「見積もり前提が変わりやすい」場面では、目標ベロシティを使い切らずに数ポイントの余白を意図的に残す判断も選択肢になります。バッファを残すことで、メンタリングが想定以上にかかった場合や、新メンバーのオンボーディングが計画より長引いた場合にも、チーム全体の計画が破綻しにくくなります。

✅ 模範解答

📄
Sprint 13 プランニング資料(配送遅延問い合わせチャットボット機能)

目標ベロシティの算出

項目値備考
Sprint 10 実績24pt特記事項なし
Sprint 11 実績30pt特記事項なし
Sprint 12 実績15ptインフル欠勤による異常値として扱う
ベース平均(Sprint 12除く、3名体制)27pt(24+30)/2。異常値を除外した既存3名分の平均

今回特有の事情による補正

事情影響補正
新メンバー1名加入最初のスプリントの生産量はオンボーディングタスク(S6, 3pt)にほぼ吸収される。純粋な追加キャパシティとしては見込まない別枠として+3pt(通常バックログ容量には加算しない)
既存メンバー1名がメンタリングに稼働の約20%を充当1人あたり平均生産量 27pt÷3名=9pt のうち約20%(約2pt)が新メンバー対応に使われるベース平均から−2pt
全社セキュリティ研修(半日・全員参加、10営業日換算)4名×0.5日÷(4名×10日)=2.5%相当の稼働減ベース平均から−1pt(端数切り上げ)
🎯
通常バックログ用の目標ベロシティ = 27pt − 2pt − 1pt = 24pt
新メンバー向け別枠(S6専用) = 3pt
合計の目標ベロシティ = 27pt

積み込みタスク一覧(Sprint 13)

順位IDアイテム内容ポイント積算(通常枠24pt中)積み込み判断
1S1配送業者API連携リトライ処理(繰越)5pt5pt繰越タスクとして最優先で確保
2S3誤追跡番号表示バグの修正2pt7ptPOの優先度は「緊急」表記。CSに週5件クレームが発生している実害を優先し、ポイントの小ささにかかわらず先に積む
3S2配送遅延理由の自動判定ロジック13pt20ptPOの優先度「高」。S8の依存元でもあり、S8を積む場合はS2の完了が前提になる
——通常枠の残り—残り4ptS4(5pt)は残り枠に収まらないため積まない。ここで意図的にバッファとして残す
別枠S6新メンバー向け環境構築・コードベース理解タスク3pt別枠3pt新メンバー専任タスク。通常枠とは別に確保し、通常枠の積算には含めない
📊
今回の積み込み合計 = 通常枠20pt + 別枠3pt = 23pt(目標ベロシティ27ptに対し4ptのバッファを意図的に残す)

依存関係の扱い: S8(自動判定ロジックの管理画面、5pt)はS2に依存しているが、S2完了後でも通常枠の残り4ptには収まらないため、今回は積み込まない。S2自体は完了予定のため、依存関係上はS8を次スプリント冒頭から着手できる状態になる。

見送った項目とその理由

IDアイテム内容ポイント見送り理由
S8自動判定ロジックの管理画面5pt依存元S2は今回完了予定だが、通常枠の残り4ptに収まらない。S2完了後、次スプリント冒頭から着手できるようPOと合意する
S4チャットボット起動導線追加5ptPOの優先度「中」。通常枠の残り4ptにわずかに収まらず、新体制初回スプリントのバッファを優先したため見送り
S5ログ基盤整備(技術負債)8ptエンジニア提案でPO未評価。新体制の立ち上げを優先するため見送るが、無期限の先送りにはせず、次々回以降のスプリントで固定の技術負債対応枠を設けることをチームに提案する
S7チャット履歴画面のUIリニューアル5ptPOの優先度「低」。事業影響も軽微なため、新体制で不確実性が高い今回は真っ先に外す対象

💡 なぜこう作るのか

1
ベロシティの算出でSprint 12(15pt)を単純平均に含めなかったのは、インフル欠勤という今回のスプリントには存在しない特殊要因が影響した実績だからです。異常値を含めたまま平均を取ると、新体制のスプリントの実態に合わない目標になります。
2
新メンバー加入を「4名体制になったから単純にキャパシティが増える」と扱わず、S6(オンボーディングタスク)を別枠で確保したのは、新メンバー最初のスプリントの生産量は、通常業務にはほぼ寄与しないという実態を反映するためです。ここを甘く見積もって通常枠に新メンバー分をそのまま加算すると、初回スプリントから未達になりやすくなります。
3
既存メンバーのメンタリング負荷(−2pt)と全社研修(−1pt)を分けて補正したのは、「今回特有の事情」を要因ごとに切り分けて説明できるようにするためです。後でスプリントが未達になった場合、どの要因がどれだけ影響したかを振り返りやすくなります。
4
S3(バグ修正、2pt)をS2(13pt、POの優先度「高」)より先に積んだのは、ポイントの大小や表面上の優先度ラベルではなく、実際に本番で継続発生している実害を優先したためです。
5
通常枠の残り4ptを埋めずにバッファとして残したのは、新体制での初回スプリントは見積もり前提が崩れやすいためです。メンタリングが想定の20%を超えて増える、新メンバーのオンボーディングが計画より長引く、といった不確実性に対して、目標ベロシティを使い切らない判断を意図的に取っています。これは「積める限り積む」ことが常に正しいわけではない、という判断の一例です。
6
S5(技術負債)を今回は見送りつつ「固定の技術負債対応枠を次々回以降に設ける」提案をセットにしたのは、技術負債はエンジニア側からしか声が上がらないことが多く、毎回の優先度確認任せにすると埋もれ続けてしまうためです。

⚠️ よくある失敗パターン

失敗パターンなぜ問題か改善策
メンバー増加分をそのまま目標ベロシティに加算する 新メンバーの立ち上がりコストとメンタリング負荷を無視すると、初回スプリントから過剰な積み込みになる 新メンバーの生産量は別枠のオンボーディングタスクとして扱い、既存メンバーのメンタリング負荷は既存キャパシティから差し引く
異常値の混ざった実績をそのまま平均する インフル欠勤などの特殊要因を含めた平均は、新体制の実態を反映しない 異常値を要因ごとに切り分け、ベースの平均から除外する
目標ベロシティに達するまで機械的に埋め尽くす 不確実性が高い状況でも余白なく積むと、少しの想定外で即座に未達になる 見積もり前提が崩れやすい状況(体制変更直後など)では、意図的にバッファを残す判断を選択肢に持つ
依存関係のあるタスクの依存先を、容量オーバーを承知で無理に積む 依存元の完了が遅れた場合に依存先も共倒れでブロックされ、未達リスクが二重に積み上がる 容量に収まらない依存タスクは見送り、依存元の完了確認後に次スプリントで着手する計画にする
技術負債を「今回は見送り」で終わらせる POが優先度評価をしないまま放置され続け、いつまでも積まれない 見送る際は次回以降の対応枠(固定スロットやPOへの評価依頼)をセットで合意する

🏆 実務での使いどころ

チーム編成が変わる直後のスプリント計画は、エンジニアがPM/PdM的な判断力を最も試される場面の1つです。「人が増えたから多く積める」という直感的な思い込みを避け、立ち上がりコストとメンタリング負荷を定量的に補正する姿勢は、将来テックリードやEMとしてチームを編成・運営する際に直接活きます。また、不確実性が高い状況で意図的にバッファを残すという判断は、「目標を達成できるかどうか」だけでなく「チームが持続的に成果を出し続けられるか」を考える視点につながります。この判断をエンジニアリードやPOに説明できる形で残しておくことは、未達が発生した際にチームを守る材料にもなります。

🚀 次のステップ

今回は新体制でのベロシティ補正とバッファの持たせ方を扱いましたが、次のPM-推進のテーマ(3-2 進捗可視化)では、このSprint 13が実際に進行した想定でバーンダウンチャートを作成し、「バッファ4ptがどう使われたか」「新メンバーのオンボーディングが計画通りだったか」を可視化する練習に進みます。今回見送ったS8(S2への依存タスク)が次スプリントでスムーズに着手できたかどうかも、振り返りの材料にしておくと次回の演習がスムーズになります。

🎯 自己評価

自分の回答

所要時間・気づき・メモ