Meridian: a definition of done that stops at code merge
At insurer Meridian a ten-person Scrum team defines done as code merged and unit tests pass. A sprint is ten working days; the two testers typically receive their first build on day 7 and have about 2.5 days for system testing before the review. Regression is a 340-step manual script set that consumes roughly 38% of tester capacity every sprint. Developers read only the first line of each acceptance criterion and regard defect triage as a tester task. The defect-escape rate is 0.9 per 10 story points, and the release manager now demands a QA sign-off slide before every release. Last quarter the Scrum Master responded by inserting a two-week hardening sprint before the quarterly release; escapes were unchanged, and the hardening sprint produced 60 fixes, of which 14 broke something else.
1. Diagnose the situation using agile testing principles. Explain the causal chain from the definition of done to the escape rate.
Read the worked answer
The definition of done is the root cause. Declaring a story complete when code merges and unit tests pass means the queue of unverified work grows all sprint and lands on two people on day 7.
- Testing is not a phase: 2.5 days of system testing at the end of a 10-day sprint is a phase in everything but name, and a first build on day 7 leaves no room to fix a design-level defect once it is found.
- Early testing and defect prevention: acceptance criteria that developers read only the first line of are decorative. Because nobody turns them into examples before coding, ambiguity is resolved by guessing, and the guess is only examined at the end.
- Whole-team quality: assigning triage to testers and requiring a QA sign-off slide both state that quality is a department, not a property of the increment. The chain is: weak done criteria, so large batches of unverified work, so compressed end-of-sprint testing, so tests written under time pressure that cover the happy path, so risky behaviour such as error handling, permissions and concurrency is never explored, so escapes. The 38% manual regression load compounds it by eating the little capacity that exists. The hardening sprint treated the symptom and, with 14 of 60 fixes causing new breakage, added a second batch-and-repair cycle; it institutionalised the delay rather than removing it.
2. Draft a replacement Definition of Done of five to seven items, explain which failure mode each item addresses, and say which you would introduce first and why.
Read the worked answer
Proposed Definition of Done, per story:
- Acceptance criteria agreed at refinement and expressed as concrete examples, including at least one negative or error example. Attacks the ambiguity defect class behind the misread criteria.
- Automated checks written or updated at the lowest sensible level, unit, component or API, and green in CI. Attacks the unverified batch and reduces the manual regression load.
- Change demonstrated to the product owner against the examples, not merely code merged. Attacks the end-of-sprint discovery of missing behaviour.
- One timeboxed, chartered exploratory session on the riskiest behaviour the story touches, debriefed and logged as risks. Covers what automation cannot judge: error handling, concurrency, awkward sequences.
- No new manual regression script; either automate the check or record an explicit risk acceptance with a named owner. Stops the 340-step set growing.
- Non-functional impact assessed where the story changes a path on the risk list: performance, security, accessibility.
- Operational or user documentation updated where the change alters it. I would introduce items 1 and 3 first. They need no tooling spend, they attack the defect class that produces the escapes, and they give immediate visible evidence that the change is real. Starting with items 2 and 5 invites the fair objection that the team cannot afford the new definition of done, and a definition of done that is waived in sprint one is dead. Starting with item 4 would please testers but keeps quality work as a tester-only habit.