第4章:優先度とスコープ管理(分割/依存/影響度×緊急度)

この章で学ぶこと

  • 大きい Issue を分割し、依存関係を可視化する
  • 影響度×緊急度で優先度を決める
  • リスクと期限を明文化する

成果物(書けるようになるもの)

  • 分割案(子Issue)と依存関係を書ける
  • トリアージ判断表を使える(付録: トリアージ

本文

優先度は「声が大きい順」ではなく、「影響」と「緊急度」で決める。

影響度×緊急度の判断基準(最小)

  • 影響度(何がどれだけ困るか): 利用者影響(件数/割合)、売上/コスト、セキュリティ/法令、運用負荷(当番/問い合わせ)など
  • 緊急度(いつまでに必要か): 期限(リリース/契約/監査)、依存(他タスクのブロック)、時間経過で悪化(再現頻度増加/データ増加)など

判断の根拠は Issue 本文に残す。根拠が未取得の場合は“要確認”とし、収集方法と期限(いつまでに確定するか)を併記する。

Priority と Severity を混同しない

本書の優先度(priority)は「平時タスクの実行順(業務優先度)」を指す。障害対応の Severity(影響度ラベル)とは目的が異なるため、同じ P0/P1 の表記を使う場合でも文脈(平時/障害)を明確にする。

例(最小):

  • 平時の改善タスク: priority:P1(影響×緊急度で判断理由を添える)
  • 障害対応: Severity(影響度ラベル。運用ルールに従う)

分割の観点

  • 価値(利用者が確認できる単位、検証できる単位)
  • 依存(先に必要なもの)
  • リスク(失敗時の影響)
  • 検証(確認方法)
  • ロールバック(戻し方)

分割すると、進捗もレビューも並列化できる。

親 Issue には“目的/受け入れ条件/非スコープ”を残し、子 Issue には個別の受け入れ条件と依存関係を持たせる(親が単なる TODO リストになると、完了判定が崩れる)。

注意点(失敗例)

  • 優先度の理由が残らず、後から“なぜ先にやったか”を説明できない
  • 分割が“層(フロント/バック/DB)”単位だけになり、価値と検証が最後まで先送りされる
  • “対応しない”判断が記録されず、同じ要望が繰り返し起票される

具体例(悪い例→良い例)

悪い例

Issue: ぜんぶ直す(期限: なるはや)
依存: 不明

良い例

親Issue: 入力フォーム改善
子Issue: 1) バリデーション 2) 文言 3) ログ追加
依存: 1→2 の順
優先度: 影響=中、緊急=高(問い合わせ増加)
リスク: 誤判定で保存不可になる可能性

チェックリスト

  • 分割されている
  • 依存関係が明記されている
  • 優先度が影響×緊急で説明できる
  • リスクと検証が書かれている

まとめ

  • 優先度は影響度×緊急度で判断し、根拠を Issue に残す
  • Priority(平時)と Severity(障害)を混同せず、ラベル運用を分離する
  • 分割は価値/依存/リスク/検証/ロールバックの観点で行い、並列化と完了判定を成立させる

次章への接続