The Outcomes — Section 07

Measurement & ROI

What we count, why those, and what failure would look like in the numbers

Your Four Outcomes, Made Measurable

Each one needs a number attached or it stays an opinion

Every measure is paired with a guard

Any single metric can be improved by damaging something else. So each primary has a guard. Speed up the dev cycle cycle time, requirement → UAT-ready GUARD: escaped defects speed bought with quality is not speed Improve quality defects escaping to UAT and beyond GUARD: cycle time quality bought by slowing down is not either Prod-ready code generation review iterations per PR GUARD: post-merge defect rate agent-touched code vs hand-written QA readiness suite runtime, coverage, manual hours GUARD: defects the suite should have caught measures whether coverage is real THE RULE An improvement only counts when both move the right way makes the monthly report hard to argue with

The Full Metric Set

All measured from Stage 0, reported monthly against the same definitions

↓
Cycle time, requirement to UAT-ready
↓
Review iterations per pull request
↑
Bus factor per module
↓
Escaped defects per release
MeasureDefinitionGood trajectory
Cycle timeRequirement accepted to UAT-ready, by kind of releaseFalls. The headline number, and the one clients feel
Time per bandThe seven-band split: spec, impact, code, test, review, regression, deployShows where the gain came from, which tells you which agents earned their place
Review iterations per PRRounds of review before a change is mergedFlat or falling. Rising means drafts look right and are not
Drafted lines surviving to mergeHow much generated code is used rather than rewrittenRises as memory improves. Low means a context gap, not a model problem
Review agent catch rateFindings caught before a human opens the PRRises. It should get stricter over time as review comments feed back into it
Escaped defectsFound after UAT sign-off, per releaseFalls. The guard on every speed claim
Post-merge defect rateAgent-touched code vs hand-written codeEqual or better. Worse means generation is not production-ready
Suite runtime and coverageHow long the gate takes, and coverage per zoneCoverage up, runtime bounded. A slow gate gets skipped
Manual regression hoursHuman time spent re-running journeys per releaseFalls sharply. This is the clearest QA readiness signal
Build to UAT timeMerge to a usable UAT environment, manual steps includedFalls, and becomes consistent rather than variable
Bus factor per moduleDistinct engineers who shipped in that module in 12 monthsMoves from one toward two or three
Regulatory lead timeCircular published to UAT-readyFalls, and becomes predictable. Predictability is what compliance conversations need

What We Deliberately Do Not Measure

Measuring these produces exactly the behaviour you do not want

✗

Lines of code generated

Rewards verbosity. Creates an incentive to accept bloated drafts. More generated code is not the goal. Less human effort per delivered change is.

✗

Per-engineer agent usage

Measure adoption per person and people adopt visibly while routing around quietly. The rejection log — your best data — stops being honest.

✗

One org-wide coverage target

Spends the same effort on a settings screen as on a calculation engine, and produces tests written to satisfy a number. Coverage is targeted per zone.

✗

Story points per sprint

Estimates inflate to match whatever the tooling makes possible. Cycle time is in days, which the people being measured cannot re-scale.

Where the Return Comes From

Ranked by expected contribution — and Stage 0 will tell us if this ranking is wrong for you

Expected contribution, largest first
The seven-band baseline in Stage 0 either confirms this ordering or corrects it
1. Drafting across the SDLC
spec, code, tests, release pack
the blank-page time
2. Regression stops scaling with people
manual linear → automated flat
stops QA becoming the bottleneck
3. Review turnaround
mechanical pass done before a human looks
the queue nobody plans for
4. Single-owner bottleneck goes
work can be spread
felt on spike weeks
5. Risk avoided
hard to quantify, possibly largest
a wrong number, a missed alert

Why there are no percentage claims on this page

We could put improvement figures here. Every consultancy does. They are almost always from a different codebase, a different team and a different definition of the metric. Any number we quoted before measuring your Stage 0 baseline would be a guess dressed as a forecast. What we will commit to is procedural: baselines agreed in writing before we start, the same metrics monthly, and an honest verdict at Stage 4 including “this did not work” if that is what the data says.