The Process
The 3×3 Diagnostic is a systems analysis that makes delivery risk visible, clarifies
ownership, and turns existing tests into decision-grade release signal.
The work runs in three stages. Each stage is fixed in scope and time-boxed. You choose
whether to continue after each stage.
Inside the 3×3 Diagnostic
1. Baseline
Fixed scope. Time-boxed. Journey-led.
This stage establishes reality and sets a baseline for what “good” looks like today.
We identify high-risk journeys, surface assumptions, and clarify ownership. The goal
is simple clarity: “this works today” versus “we assume it does”.
No automation obligation.
2. Systemic Analysis
Boundary-led. Seam-focused. System-level.
We trace failure paths across boundaries and seams, identify where signal is lost, and
assess whether automation is economically viable.
This stage produces a clear decision: what must change, what can be governed, and what
should be accepted or deferred.
3. Automation (optional)
Optional. Targeted. High-signal only.
This is not a test suite expansion programme.
If you choose to proceed, we implement only what creates trustworthy signal for the
risks identified.
No theatre, no vanity coverage, no noisy duplication.
What you leave with at each stage
After Stage 1: Baseline
- Three high-consequence journeys, chosen for risk
- Intent, assumptions, and ownership made explicit
- Known points of silent failure, and how you would detect them
- A shared definition of what “good” looks like today
After Stage 2: Systemic Analysis
- A boundary and seam map showing where signal is lost
- Failure paths traced, including detection gaps
- A view on economic testability: viable vs not, and why
- A clear decision: fix, govern, accept, or defer, with owners
After Stage 3: Automation (optional)
- A small set of high-signal checks aligned to real risk
- Automation only where it produces trustworthy signal
- Reduced noise: less duplication, less flake
- A structure your team can extend without degrading signal
Where BDD fits
We use a light-touch BDD style to keep intent explicit and prevent automation becoming
ambiguous. Each scenario is extended with:
- And if this fails, the upshot is ___
- And the owner is ___
This ensures failures map to consequence, and ownership stays unambiguous.
We do not replace existing automation.
We classify genuine release signal, reduce noise, and protect what matters. Where
automation is not economically viable, we make that visible and outline what would need to
change for trustworthy signal to exist.