主:この判断モデルは思想,判断モデルを元に作成したフレームワークの一例であり、絶対の正ではない。
Model(判断ロジック+契約)を実装し、現場で即運用可能にする規範と既定値。
役割(この文書の目的)
- 運用規範と既定値の提供。Model の契約(Policy/Artifacts)に従って実装。
- 正典の判断ロジック(タイブレーク順・不変条件)は Model を参照し、ここでは重複記載しない。
1) Policy(既定値)
1-1. DoR(Definition of Ready)
- 解像度スコア(0–3×3軸): 目的明確度 / 経路明確度 / 文脈安定度
- 調整: 可逆性 Two‑way +1、被害半径 Large −1、依存強 −1
- 下限: 補正後であっても各軸の最低点は1以上(極端な片寄りでReadyにしない)
- 判定: 合計 ≥7 → Ready。未達 → Hypothesis(仮説=マイクロ課題)に昇格し Explore で扱う
1-2. ROI(序数 1–5)
- ROI_Explore: 失敗確率低減幅 × 失敗時損失 ÷ 探査コスト(概念)
- ROI_Deliver: 期待価値 ÷ 実行コスト − 機会費用(概念)
- 序数化手順(正規化)
- 各ロールが Low/Med/High で入力 → 加重平均 → 1–5に写像
- 負方向は1へ、突出は5へクリップ
- スコアには1行のナラティブ根拠を付す
- 差分の判定とタイブレーク順は Model §5 を正典として参照
1-3. JDI(Just Do It:直線内で残余不確実性を内製処理)
- しきい値(全て必須): 時間 ≤ 2h、Two‑way、Small、前提≤1、逸脱検知あり
- 禁止領域: セキュリティ影響、規制遵守領域、PII/機微データ、本番構成変更、決済・金銭処理
- 運用: JDIはADR/Consent不要。JDIログのみ(自動記録推奨)
- 補足: Policy.JDIは上記の禁止領域チェックと軽量なConstraintチェックを内包して判定する
1-4. Cost of Delay(CoD)分類
- High: 1週遅延で価値≥20%低下 or 法規/契約期限/大口機会逸失
- Medium: 1週遅延で価値5–20%低下
- Low: 1週遅延で価値<5%低下
(相対運用で開始し、月次で見直し可)
1-5. WIP/ボトルネック/切替コスト
- チーム人数 n
- Explore WIP 初期: ceil(n/3)
- 共有ボトルネック能力 W(例: レビュー可能PR/日)
- Deliver WIP 上限: min(n, max(2W, ceil(n/2))) // W未成熟時の下限ガード
- Wの初期標準: 不明な場合は 0.7 × レビューア人数/日 を仮置き
- cost_switch=High は同一ドメインでバッチ化、または実効WIPを−1扱い
1-6. 再評価トリガー(自動)
- KPI乖離 > 30% / 主要前提変更 ≥ 2件 / 重大欠陥・規制事象 / 外部ショック
- 適用: 週中/週末のミニバッチで一括。緊急は即時(緊急イベントは即再評価フローへ)
1-7. Consent(意思決定スタイル)
- 重大反対がなければ進める(Consent)を標準
- 重大反対は Explore に戻す具体理由を伴う
- ADR一行に署名者/反対なし(None)を記載
1-8. Rollback 必須条件
- One‑way × Large / 本番影響 / ユーザー影響 > 5%
1-9. Constraint Gate
- Policy.ConstraintCheck(item, ctx) をDecide前段で必須実行
- NG時の処理: Reject(破棄)または Explore‑Legal(リーガル/セキュリティ検証として扱う)
1-10. Aging Rescue(飢餓救済)ポリシー
- Policy.IsAgingRescue(item, ctx) = (Policy.CoD(item, ctx) == High) AND (AgeWeeks(item) ≥ 2) を既定とする
- 実装: ラベル sla:rescue を自動付与し、候補生成と優先度計算の双方で考慮
2) アーティファクト(最小テンプレ)
ExperimentPlan(Hypothesis専用)
hypothesis_id: H-____
method: 調査 / プロト / インタビュー / 小実験(A/B等)
timebox: __h/日
exit_criteria: (例)失敗確率 50→25%に低下を示す/Top3障壁の特定
cost: __ 人時/日
risk_ethics_check: Yes/No(規制/安全/ブランド)
notes:
DeliverPackage(直線実行)
scope: タスク #__, #__, #__
DoR_ref: Ready(解像度__ /9) # 各軸最低1点確認済
quality_checks: レビュー( ) / テスト( ) / 計測( )
release_steps: 手順__
rollback_plan: 方法__ / トグル__ / カナリア__
telemetry: 逸脱検知指標__
ADR(1行OK)
decision: Explore / Deliver / Pivot / Reject
reasons: ROI_E=__, ROI_D=__, tie-break=(可逆/被害/CoD/依存/TTK/REWORK)
assumptions: 前提__
revisit_triggers: KPI乖離>__% / 前提変更≥__件 / ____
signers: PM, TechLead, Design, Compliance / None
JDIログ(任意)
what: __
duration: __h
reversibility: Two‑way
blast_radius: Small
notes: __
StructurePlan(Sub‑Problem専用:短時間の構造化セッション用)
sub_problem_id: SP-____
cuts: 分割案(時間軸 / 構成要素 / 関係者 / 不確実性)
deps_graph: 主要依存(in/out)
prioritization: 優先案(Blocking Frontier / CoD / 依存クリティカリティ)
exploration_bundle: 探索エピック候補(束ねる仮説の一覧)
timebox: __ 分
exit_criteria: 子Hypothesis/TaskがReady(DoR基準適用)
notes:
3) ボード/ビュー(GitHub推奨)
レーン(Projects)
- Backlog → Ready (Explore) → In Explore → Ready (Deliver) → In Deliver → Review/QA → Release/Monitor → Done
ラベル
- type:hypothesis / type:task / type:sub-problem
- action:explore / action:deliver
- flag:blocking-frontier
- risk:one-way / risk:large
- cod:high / cod:med / cod:low
- sla:rescue # 飢餓救済対象
- status:aging-1w / status:aging-2w+ # 滞留指標
カスタムフィールド
- DoR_score(0–9)、ROI_E(1–5)、ROI_D(1–5)、Reversibility(Two/One)、BlastRadius(S/M/L)、CoD(H/M/L)、WIP_slot、CostSwitch(L/M/H)、AgeWeeks(int)、TTK(h/d)、ReworkCost(L/M/H)
ガード(Actions等で自動化可)
- Hypothesis と Task の混在禁止(型で分離)
- ADR未記録のPRマージ禁止
- One‑way×Large は Rollback/段階コミット/逸脱検知の記載必須
- ConstraintCheck未通過のアイテムは着手不可
- CoD=High かつ AgeWeeks≥2 のアイテムに sla:rescue を自動付与
ビュー例
- Blocking Frontier: label:”flag:blocking-frontier” is:open
- Explore進行: label:”action:explore” is:open
- One‑way×Large: label:”risk:one-way” label:”risk:large”
- SLA救済対象: label:”sla:rescue” is:open sort:updated-asc
4) ワークフロー/儀式
デイリー(15分)
- Blocking Frontier の確認、WIP健全性チェック
- 小さな未定義はJDI基準内なら即処理(ADR不要)。超えたらHypothesisに昇格
- 高CoDアイテムのaging確認(sla:rescueの新規付与)
ミニバッチ(週中/週末 30–45分)
1) PM棚卸し(T/H/X)
2) 候補生成ガード(JDI直行の除外、DoR未達のTask昇格、Readyかつ非JDIのTask候補化、ブロックH/サブ課題抽出、One‑way×Large/依存クリティカル常時候補化、CoD=High/aging救済の候補化)
3) Blocking Frontier抽出(必須DU)
4) ROI_E/D採点(1–5、正規化/クリップ)→タイブレーク(Model §5)
5) WIP/ボトルネック/切替コスト/aging/CoD救済を考慮して割当(必須→任意、cost_switch=Highはバッチ化)
6) 実行パッケージ準備(ExperimentPlan/DeliverPackage/StructurePlan)
7) ADR一行を記録
8) ポートフォリオ健全性の確認(CoD高滞留/SLA逸脱)、PM更新とトリガー評価
レトロ(隔週 45分)
- 手戻り・JDI誤用・ボトルネック・指標レビュー
- 改善を“Task or Hypothesis”として登録
ゲート(One‑way×Large)
- Rollback/段階コミット/逸脱検知の設計、Consent署名、ADRが必須
- ConstraintCheck(法務/セキュリティ/ブランド)を通過するまでDeliver不可
緊急イベント
- 重大障害/外部ショック発生時は、即時に再評価ループへ遷移(通常ミニバッチを待たない)
5) 導入90分オンボーディング(台本)
- 0–10分:思想/モデルの要点(語彙、ROI序数、Blocking Frontier、Constraint Gate)
- 10–25分:JDI/DoR/CoD/WIP 初期値を決める(Policy記入、Wの仮置き標準も設定)
- 25–45分:Backlog10件をDoR判定→Hypothesis昇格→候補生成(One‑way×Largeの抽出)
- 45–65分:ROI採点→タイブレーク→必須DU確定(aging/救済ルール確認)
- 65–80分:ボード反映(レーン/ラベル/フィールド)、割当・WIP充足
- 80–90分:ADR記録練習(2件)、ミニバッチ曜日設定
6) チェックリスト(運用安全柵)
候補生成ガード
- [ ] DoR未満のTask→Hypothesisへ昇格
- [ ] Readyかつ非JDIのTaskを候補化(Deliver側DUとして)
- [ ] 依存でブロック中のH/サブ課題を候補化
- [ ] One‑way×Large/依存クリティカルを常時候補化
- [ ] CoD=High または sla:rescue(aging≥2バッチ)のH/サブ課題を候補化(飢餓回避)
- [ ] JDI適合Taskは候補化せず直行(禁止領域チェック含む)
Blocking Frontier フィルタ
- [ ] “今の前進を止める最小DU”を1〜数件に絞った
- [ ] 強結合の核は探索エピックとして束ねる判断を検討
並列化基準
- [ ] 依存グラフで独立な成分のみ並列
- [ ] ExploreはWIPを絞る、Deliverはボトルネック能力に従う
ウォーターフォール点検(全YesでGo)
- [ ] 要件凍結 / 利害整合 / 外部制約の変動低
- [ ] 主要依存の不確実性は燃焼済
- [ ] 可逆化(段階ゲート/フラグ/ロールバック)と最小逸脱検知を併設
安全柵
- [ ] HypothesisとTaskの混在禁止
- [ ] One‑way×Largeは可逆化・段階コミット・逸脱検知を強制
- [ ] ADRなしの変更禁止
- [ ] ConstraintCheck未通過の着手禁止
- [ ] CoD=Highの連続2バッチ滞留は次バッチで必ず救済(sla:rescueで可視化)
7) 現場向け一枚サマリ
- 決め方: 次の一手 = argmax{ ROI_E, ROI_D }(1–5)。差≥2→即断、差≤1→可逆性→被害→CoD→依存→TTK→REWORKで決める(Model §5)
- DoR: 各軸≥1かつ合計≥7でTask、未達はHypothesis(Explore)
- JDI: ≤2h・Two‑way・Small・前提≤1・逸脱検知(禁止: セキュ/規制/PII/本番/決済、ADR/Consent不要)
- WIP: Explore=ceil(n/3)、Deliver=min(n, max(2W, ceil(n/2)))(W=共通ボトルネック能力、cost_switch=Highはバッチ化)
- Blocking Frontier: 最小阻害単位にExplore、他はDeliver。One‑way×Large/依存クリティカルは前倒し燃焼
- 飢餓回避: CoD高が2バッチ滞留したら次バッチで必ず割当


コメント