A decision discipline that converts ambiguous technology priorities into explicit, owned, and measurable choices. For engineering leaders and CTOs. Produces a Decision Record, quantified risk exposure, leading and lagging KPIs, and a fixed governance cadence.

## Decision Context & Trigger

Define the decision before scoring risks. A trigger forces the choice now. Constraints bound the options. Success is a single measurable outcome at 90 days.

Trigger Examples

- Incident Post-Mortem : Three P0 outages in 60 days traced to a legacy component.

- Budget Cycle : Q3 allocation must choose between platform refactor and revenue features.

- Vendor EOL : Critical library reaches end-of-life in 90 days; migration or support contract required.

- Capacity Crunch : Hiring freeze limits engineering headcount to current roster for two quarters.

Constraints (document all that apply)

- Budget ceiling (e.g., $400k discretionary Q3 spend).

- Headcount availability (e.g., 6 engineers max for initiative).

- Compliance deadline (e.g., SOC2 Type II audit in 90 days).

- Technical debt ceiling (e.g., no new critical debt without CTO sign-off).

- Strategic OKRs (e.g., "Ship Enterprise SSO by Q4" vs. "Reduce MTTR 50%").

Success Definition (one sentence, measurable at 90 days)

<div class="my-stack-md p-6 bg-surface-container-low border-l-4 border-primary rounded-r-lg">
"Reduce auth-related P1 incidents by 60% while delivering the Enterprise SSO feature, validated by incident metrics and feature flag adoption at Day 90."

</div>

## Stakeholder Map & Ownership (RACI/DACI)

Assign a single Decision Owner. Committees do not decide. Use the table below to lock decision rights and risk accountability.

<div class="my-stack-md overflow-x-auto">
<table class="w-full border-collapse text-left" style="min-width:48rem;">
<thead><tr><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Role</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Name/Title</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Decision Right</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Risk Accountability</th></tr></thead>
<tbody><tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision Owner</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">CTO</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decide</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Total portfolio risk exposure</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk Owner</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Platform Tech Lead</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Own Risk</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Legacy auth service risk score</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Input Provider</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">VP Engineering</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Input</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Delivery capacity risk</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Input Provider</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Product Director</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Input</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Revenue feature delay risk</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Approver</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Security Lead</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Approve</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Compliance and breach risk</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Input Provider</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">SRE Lead</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Input</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Operational stability risk</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Informed</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Engineering Managers</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Inform</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Team-level execution risk</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Informed</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">CEO</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Inform</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Strategic and financial risk</td></tr></tbody>
</table>
</div>
Rule : Only the Decision Owner (CTO) can change the decision after the Decision Record is published. All escalations route to the Decision Owner within 48 hours.

## Risk Matrix Construction (The "How-To")

Build a 5x5 matrix with defined probability and impact scales. Calculate Risk Exposure = Probability × Impact. Draw a risk appetite threshold line: Tolerate ≤6, Mitigate 7–15, Escalate >15.

### Probability Scale (1–5)

<div class="my-stack-md overflow-x-auto">
<table class="w-full border-collapse text-left" style="min-width:42rem;">
<thead><tr><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Score</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Label</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Definition</th></tr></thead>
<tbody><tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">1</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Rare</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">&lt;10% likelihood in the planning horizon</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">2</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Unlikely</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">10–30% likelihood</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">3</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Possible</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">30–60% likelihood</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">4</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Likely</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">60–90% likelihood</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">5</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Almost Certain</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">&gt;90% likelihood</td></tr></tbody>
</table>
</div>

### Impact Scale (1–5)

<div class="my-stack-md overflow-x-auto">
<table class="w-full border-collapse text-left" style="min-width:48rem;">
<thead><tr><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Score</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Label</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Financial Definition</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Time Definition</th></tr></thead>
<tbody><tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">1</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Insignificant</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">&lt;$10k</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">&lt;1 day</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">2</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Minor</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">$10k–$50k</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">1 week</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">3</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Moderate</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">$50k–$250k</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">1 month</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">4</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Major</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">$250k–$1M</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">1 quarter</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">5</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Catastrophic</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">&gt;$1M</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">&gt;1 quarter</td></tr></tbody>
</table>
</div>

### 5x5 Heat Map (Alt-Text Description)

A 5×5 grid with Probability (1–5) on the Y-axis and Impact (1–5) on the X-axis. Cells colored green (1–6), yellow (7–15), red (>15). A thick black diagonal line separates Tolerate (green) from Mitigate (yellow) at Exposure 6, and Mitigate from Escalate (red) at Exposure 15. Each cell shows the Exposure score (Probability × Impact). Risks plotted as numbered markers referencing the risk register.

### Risk Register Example (Case Study Scoring)

<div class="my-stack-md overflow-x-auto">
<table class="w-full border-collapse text-left" style="min-width:72rem;">
<thead><tr><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Risk ID</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Risk Description</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Probability</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Impact</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Exposure</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Appetite Zone</th></tr></thead>
<tbody><tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">R1</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Legacy auth service breach</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">4 (Likely)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">5 (Catastrophic)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">20</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Escalate</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">R2</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Feature delay (Enterprise SSO)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">3 (Possible)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">4 (Major)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">12</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Mitigate</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">R3</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Refactor overrun &gt;12 weeks</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">3 (Possible)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">3 (Moderate)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">9</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Mitigate</td></tr></tbody>
</table>
</div>

## Options Analysis & Quantified Trade-offs

Evaluate a minimum of three options: Status Quo, Incremental, Transformative. Score each dimension. Use the table below to compare.

<div class="my-stack-md overflow-x-auto">
<table class="w-full border-collapse text-left" style="min-width:84rem;">
<thead><tr><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Option</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Estimated Cost</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Delivery Time</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Residual Risk Exposure</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Opportunity Cost</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Technical Debt Delta</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Strategic Alignment (1–5)</th></tr></thead>
<tbody><tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Status Quo</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">$0</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">0 weeks</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">20 (R1)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">$600k ARR</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">+High</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">2</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Incremental (Wrapper API)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">$150k</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">6 weeks</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">12 (R2, R3)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">$200k ARR</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">+Medium</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">3</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Full Refactor</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">$400k</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">12 weeks</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">4 (R3 only)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">$600k ARR</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">-High</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">5</td></tr></tbody>
</table>
</div>
Interpretation : Status Quo leaves catastrophic breach risk (Exposure 20) unaddressed. Full Refactor eliminates breach risk but delays revenue features 12 weeks, costing $600k ARR. Incremental Wrapper reduces breach risk to Exposure 12 in 6 weeks at $150k, preserving optionality for Full Refactor in Q4.

## KPIs & Measurement Plan

Define leading indicators (weekly) and lagging indicators (monthly/quarterly). Assign a Dashboard Owner and update frequency.

### Leading Indicators (Weekly)

<div class="my-stack-md overflow-x-auto">
<table class="w-full border-collapse text-left" style="min-width:60rem;">
<thead><tr><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">KPI</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Numerator / Denominator</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Target</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Dashboard Owner</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Frequency</th></tr></thead>
<tbody><tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk Mitigation Action Closure Rate</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Actions closed / Actions due</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">≥80%</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk Owner (Platform TL)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Weekly</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision Cycle Time</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Days from trigger to Decision Record publish</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">≤14 days</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision Owner (CTO)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Weekly</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Stakeholder Confidence Pulse</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Avg. score (1–5) across RACI roles</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">≥4.0</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision Owner (CTO)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Weekly</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Wrapper Test Coverage</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Covered lines / Total lines (auth wrapper)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">≥85%</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk Owner (Platform TL)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Weekly</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Incident MTTR (Auth)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Mean time to resolve auth incidents</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">&lt;30 min</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">SRE Lead</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Weekly</td></tr></tbody>
</table>
</div>

### Lagging Indicators (Monthly/Quarterly)

<div class="my-stack-md overflow-x-auto">
<table class="w-full border-collapse text-left" style="min-width:60rem;">
<thead><tr><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">KPI</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Numerator / Denominator</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Target</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Dashboard Owner</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Frequency</th></tr></thead>
<tbody><tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Actual vs. Planned Risk Events</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Count of risk events / Planned risk events</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">≤1.0</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk Owner (Platform TL)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Monthly</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Cost Variance</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Actual spend / Budgeted spend</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">±10%</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">VP Engineering</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Monthly</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Delivery Predictability</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Features delivered on date / Features committed</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">≥90%</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Product Director</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Monthly</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Customer Impact Incidents</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">P1/P2 incidents affecting customers</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">0 P1, ≤2 P2/qtr</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">SRE Lead</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Monthly</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Portfolio Risk Balance Shift</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">% risks in Escalate zone vs. prior quarter</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decreasing</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision Owner (CTO)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Quarterly</td></tr></tbody>
</table>
</div>

## Governance Cadence & Escalation Path

Fixed cadence prevents drift. Each gate has a defined purpose, attendees, and output.

<div class="my-stack-md overflow-x-auto">
<table class="w-full border-collapse text-left" style="min-width:72rem;">
<thead><tr><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Cadence</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Meeting</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Duration</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Attendees</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Purpose</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Output</th></tr></thead>
<tbody><tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Weekly</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk Owner Standup</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">15 min</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk Owner, SRE Lead, Platform TL</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Action status, new risks, blocker escalation</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Updated action tracker, new risk log entries</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Monthly</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision Owner Review</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">60 min</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision Owner, Risk Owner, VP Eng, Product Dir</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">KPI dashboard review, go/no-go on mitigation funding</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Funding decision, Decision Record amendment if needed</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Quarterly</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Leadership Portfolio Review</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">90 min</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">CTO, VP Eng, Security Lead, CEO</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk appetite recalibration, strategic pivot check</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Updated appetite thresholds, portfolio rebalancing</td></tr></tbody>
</table>
</div>

### Escalation Path

- Trigger : Any risk Exposure >15 (Escalate zone) or leading KPI misses target for two consecutive weeks.

- Action : 48-hour Decision Owner call with Risk Owner and relevant Input Providers.

- Documentation : Decision Record amended with new context, revised decision, or additional mitigation funding.

- Communication : Updated Decision Record distributed to all RACI roles within 24 hours of call.

## Implementation Roadmap (30/60/90 Days)

<div class="my-stack-md overflow-x-auto">
<table class="w-full border-collapse text-left" style="min-width:60rem;">
<thead><tr><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Phase</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Days</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Activities</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Owner</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Exit Criteria</th></tr></thead>
<tbody><tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant"><strong>Build</strong></td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">1–30</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Align probability/impact scales; run first scoring workshop with RACI roles; populate risk register; publish Decision Record v1; set dashboard baseline.</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk Owner (Platform TL)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision Record v1 signed by Decision Owner; dashboard live with Week 1 data.</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant"><strong>Execute</strong></td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">31–60</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Execute top 3 mitigations (Wrapper API development, auth monitoring hardening, test coverage push); instrument leading KPIs; conduct first Monthly Decision Owner Review.</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk Owner (Platform TL), VP Eng</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Wrapper API shipped to staging; leading KPIs green for 2 consecutive weeks; Monthly Review minutes published.</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant"><strong>Calibrate</strong></td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">61–90</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Quarterly Leadership Portfolio Review; recalibrate probability/impact scales based on actuals; document lessons learned; update Decision Record v2; greenlight/refactor Q4 plan.</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision Owner (CTO)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Q4 refactor go/no-go decision recorded; lessons learned doc published; Decision Record v2 signed.</td></tr></tbody>
</table>
</div>

## Decision & Governance Checklist (Refined)

Print this table. Assign each item. Track status weekly.

<div class="my-stack-md overflow-x-auto">
<table class="w-full border-collapse text-left" style="min-width:60rem;">
<thead><tr><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Check Item</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Owner</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Due</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Status</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Evidence Link</th></tr></thead>
<tbody><tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision trigger documented</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision Owner (CTO)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Day 1</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Done</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Incident post-mortem #2024-07-15</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Probability/impact scales agreed</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk Owner (Platform TL)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Day 5</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Done</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Workshop Miro board v1</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk register populated (min 5 risks)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk Owner (Platform TL)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Day 10</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Done</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk register v1.2</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision Record v1 published</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision Owner (CTO)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Day 14</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Done</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Confluence page #DEC-2024-042</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">RACI confirmed with all roles</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision Owner (CTO)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Day 14</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Done</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Email thread 2024-07-18</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Dashboard live with leading KPIs</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk Owner (Platform TL)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Day 21</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">In Progress</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Grafana dashboard #risk-auth</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Top 3 mitigations scoped &amp; staffed</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">VP Engineering</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Day 30</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Not Started</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">—</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">First Monthly Review completed</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision Owner (CTO)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Day 45</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Not Started</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">—</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Quarterly Portfolio Review scheduled</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision Owner (CTO)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Day 75</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Not Started</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Calendar invite sent</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Lessons learned documented</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk Owner (Platform TL)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Day 90</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Not Started</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">—</td></tr></tbody>
</table>
</div>

## Concrete Technology-Organization Case Study: Platform Refactor vs. Feature Velocity at Mid-Series B SaaS Co (120 Engineers, $18M ARR)

### Trigger

Three P0 incidents in 60 days linked to legacy authentication service. CTO must decide Q3 budget allocation before August 1 planning freeze.

### Decision Context

- Refactor Budget : $400k available in Q3 discretionary fund.

- Revenue Risk : Two delayed features carry $600k ARR risk if not shipped by Q4.

- Capacity Constraint : Maximum 6 engineers can be allocated without delaying other commitments.

- Compliance Deadline : SOC2 Type II audit window opens in 90 days; auth service is in scope.

### Stakeholder Map (Populated)

<div class="my-stack-md overflow-x-auto">
<table class="w-full border-collapse text-left" style="min-width:48rem;">
<thead><tr><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Role</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Name/Title</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Decision Right</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Risk Accountability</th></tr></thead>
<tbody><tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision Owner</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">CTO (A. Chen)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decide</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Total portfolio risk exposure</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk Owner</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Platform Tech Lead (M. Rodriguez)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Own Risk</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Legacy auth service risk score</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Input Provider</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">VP Engineering (S. Patel)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Input</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Delivery capacity risk</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Input Provider</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Product Director (J. Kim)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Input</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Revenue feature delay risk</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Approver</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Security Lead (R. Okonkwo)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Approve</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Compliance and breach risk</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Input Provider</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">SRE Lead (L. Nguyen)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Input</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Operational stability risk</td></tr></tbody>
</table>
</div>

### Risk Matrix Scoring (Populated)

<div class="my-stack-md overflow-x-auto">
<table class="w-full border-collapse text-left" style="min-width:72rem;">
<thead><tr><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Risk ID</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Risk Description</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Probability</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Impact</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Exposure</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Appetite Zone</th></tr></thead>
<tbody><tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">R1</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Legacy auth breach</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">4 (Likely)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">5 (Catastrophic)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">20</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Escalate</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">R2</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Feature delay (Enterprise SSO)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">3 (Possible)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">4 (Major)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">12</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Mitigate</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">R3</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Refactor overrun &gt;12 weeks</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">3 (Possible)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">3 (Moderate)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">9</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Mitigate</td></tr></tbody>
</table>
</div>

### Options Table (Populated)

<div class="my-stack-md overflow-x-auto">
<table class="w-full border-collapse text-left" style="min-width:84rem;">
<thead><tr><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Option</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Estimated Cost</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Delivery Time</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Residual Risk Exposure</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Opportunity Cost</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Technical Debt Delta</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Strategic Alignment (1–5)</th></tr></thead>
<tbody><tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Status Quo</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">$0</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">0 weeks</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">20 (R1)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">$600k ARR</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">+High</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">2</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Incremental (Wrapper API)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">$150k</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">6 weeks</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">12 (R2, R3)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">$200k ARR</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">+Medium</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">3</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Full Refactor</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">$400k</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">12 weeks</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">4 (R3 only)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">$600k ARR</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">-High</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">5</td></tr></tbody>
</table>
</div>

### Decision

Incremental Wrapper (Phase 1) + Full Refactor approved for Q4 contingent on Phase 1 risk reduction ≥50%.

Rationale: Wrapper API reduces breach exposure from 20 to 12 in 6 weeks at $150k, buying data for Q4 go/no-go. Full Refactor remains funded in Q4 budget ($350k) if wrapper achieves ≥50% reduction in auth-related P1 incidents.

### KPIs (Case Study Specific)

<div class="my-stack-md overflow-x-auto">
<table class="w-full border-collapse text-left" style="min-width:60rem;">
<thead><tr><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">KPI</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Type</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Target</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Owner</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Frequency</th></tr></thead>
<tbody><tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Wrapper test coverage %</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Leading</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">≥85%</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Platform TL</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Weekly</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Auth incident MTTR</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Leading</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">&lt;30 min</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">SRE Lead</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Weekly</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Auth-related P1 count</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Lagging</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">60% reduction vs. baseline</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Platform TL</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Monthly</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Feature delivery % (Enterprise SSO)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Lagging</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">100% by Q4</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Product Dir</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Monthly</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Refactor go/no-go gate</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Lagging</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision by Day 90</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">CTO</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Quarterly</td></tr></tbody>
</table>
</div>

### 90-Day Outcome (Documented)

- Week 7 : Wrapper API shipped to production behind feature flag.

- Week 8–12 : Auth-related P1 incidents dropped 60% (from 3 in prior 60 days to 0 in 30 days post-launch).

- Day 90 : Quarterly Portfolio Review — Full Refactor greenlit for Q4 with $350k budget and 8-engineer allocation. Decision Record v2 published.

## Decision Record Template (Filled for Case Study)

<div class="my-stack-md overflow-x-auto">
<table class="w-full border-collapse text-left" style="min-width:42rem;">
<thead><tr><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Field</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Entry</th></tr></thead>
<tbody><tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant"><strong>Context</strong></td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Three P0 incidents in 60 days caused by legacy auth service. SOC2 audit in 90 days. $400k Q3 budget. 6-engineer capacity cap. Two revenue features ($600k ARR) competing for same capacity.</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant"><strong>Options</strong></td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">1) Status Quo — accept breach risk. 2) Incremental Wrapper API — $150k, 6 weeks, reduces breach exposure to 12. 3) Full Refactor — $400k, 12 weeks, reduces breach exposure to 4 but delays revenue features.</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant"><strong>Decision</strong></td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Approve Incremental Wrapper (Phase 1) for immediate execution. Approve Full Refactor for Q4 contingent on Phase 1 achieving ≥50% reduction in auth-related P1 incidents by Day 90.</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant"><strong>Owner</strong></td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">CTO (A. Chen)</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant"><strong>Review Date</strong></td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Day 90 (Quarterly Portfolio Review) — October 15, 2024</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant"><strong>Success Metrics</strong></td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Wrapper test coverage ≥85%; auth P1 count 60% reduction; Enterprise SSO on track for Q4; refactor go/no-go gate passed.</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant"><strong>Escalation Path</strong></td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk Exposure &gt;15 → 48-hour CTO call → Decision Record amendment → distribute to RACI within 24 hours.</td></tr></tbody>
</table>
</div>

## Printable Decision & Governance Checklist (Populated for Case Study)

<div class="my-stack-md overflow-x-auto">
<table class="w-full border-collapse text-left" style="min-width:60rem;">
<thead><tr><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Check Item</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Owner</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Due</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Status</th><th scope="col" class="border border-outline-variant bg-surface-container-low px-4 py-3 text-left font-label-md font-semibold text-on-surface">Evidence Link</th></tr></thead>
<tbody><tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision trigger documented (3 P0s)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">CTO (A. Chen)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">2024-07-15</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Done</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Post-mortem #2024-07-15</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Probability/impact scales agreed</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Platform TL (M. Rodriguez)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">2024-07-20</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Done</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Workshop notes v1</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk register populated (R1–R3)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Platform TL (M. Rodriguez)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">2024-07-25</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Done</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Risk register v1.2</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision Record v1 published</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">CTO (A. Chen)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">2024-07-29</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Done</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Confluence #DEC-2024-042</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">RACI confirmed with all 6 roles</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">CTO (A. Chen)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">2024-07-29</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Done</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Email 2024-07-29 14:32</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Dashboard live (5 leading KPIs)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Platform TL (M. Rodriguez)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">2024-08-05</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Done</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Grafana #risk-auth</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Wrapper API scoped &amp; staffed (4 eng)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">VP Eng (S. Patel)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">2024-08-12</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Done</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Jira Epic #PLAT-882</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">First Monthly Review completed</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">CTO (A. Chen)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">2024-08-26</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Done</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Meeting notes 2024-08-26</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Quarterly Portfolio Review held</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">CTO (A. Chen)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">2024-10-15</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Done</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Meeting notes 2024-10-15</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Lessons learned documented</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Platform TL (M. Rodriguez)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">2024-10-15</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Done</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Confluence #LL-2024-042</td></tr>
<tr><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Refactor greenlit for Q4 ($350k)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">CTO (A. Chen)</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">2024-10-15</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Done</td><td class="border border-outline-variant px-4 py-3 align-top text-body-md text-on-surface-variant">Decision Record v2</td></tr></tbody>
</table>
</div>

## Conclusion

Run the Risk Matrix Decision Framework on one live initiative this week. Define the trigger, constrain the options, assign a single Decision Owner, score risks with the 5×5 matrix, publish a Decision Record, and set the first review date. The framework makes disagreement visible early, shows why a choice was made, and creates a governed path to adjust when evidence changes. Revisit at the next planning cycle to confirm the decision still holds given new incidents, shifted priorities, or changed constraints.