ap.Abhishek Patel

Search

Search notes, essays, projects, and the library. Use arrow keys to choose and Enter to open.

← Notes

Definition of Ready: The Checklist That Decides Whether a Story Can Enter a Sprint

Created · Updated · 5 min read

Why this matters: most of our sprint failures were decided before the sprint started, at the moment we pulled in a Story nobody fully understood. This is the gate that prevents that, and we currently do not have one. See Why We Miss Deadlines.

What it is

The Definition of Ready is a short checklist a Story must pass before it is allowed into a sprint.

It answers one question:

Do we understand this well enough to responsibly start building it?

That is all. It is not a quality standard for finished work, that is Definition of Done. It is a filter on the way in.

One honest disclaimer

Definition of Ready is not an official Scrum artifact. The Scrum Guide defines Definition of Done as a commitment, but for readiness it only says that backlog items which are sufficiently transparent and can be completed within a sprint are considered ready for Sprint Planning. The Agile Alliance describes DoR as a practice many teams adopt: criteria an item should satisfy before entering an iteration.

So this is a team practice, not a law, and that matters for how you use it. It is a conversation tool, not a bureaucratic weapon. If a Story misses one checklist item but everybody genuinely understands it, take it. If a Story ticks every box and the team still feels uneasy, do not take it, and find out why the checklist missed something.

The failure mode to avoid is DoR becoming a mini waterfall where a Story needs six documents and three signatures to start. That is worse than having no DoR at all.

A starter checklist

Keep it short. Seven items maximum. Mine would be:

  1. The business reason is clear. We can say why this matters, not just what it does.
  2. The Story is written as a small user or business outcome, at the right level per Work Breakdown Hierarchy.
  3. Acceptance Criteria are written, including the main error cases.
  4. Dependencies are identified. Other teams, external APIs, data migrations, third party approvals.
  5. Designs or mockups exist if the Story has a meaningful UI.
  6. The big unknowns have been investigated, or a spike has been done. If nobody can estimate it, it is not ready.
  7. The team has estimated it, and the size fits comfortably inside one sprint. See Estimation and Story Points.

If several of these are missing, the Story does not enter the sprint. It goes into refinement. That is not obstruction, it is the only thing that stops the team from committing to work it cannot possibly size.

How to use it without becoming a bureaucracy

Apply it during refinement, not at Sprint Planning. By the time you are in planning, discovering that a Story is not ready is already a small disaster, because now you either take it anyway (and fail) or you have a half empty sprint. Refinement is where readiness gets built. See Sprint Planning and Refinement.

Make it visible. In Azure DevOps this is simply a “Ready” tag or a board column, so anyone can see at a glance how much ready work exists. The mechanics are in Azure DevOps Setup.

Keep two sprints of ready work. Not more, not less. Less, and Sprint Planning becomes a scramble where you take whatever exists. More, and you are writing detailed criteria for work whose priority will change before you build it, which is pure waste.

Treat repeated misses as data. If half the backlog keeps failing DoR, the problem is not the checklist. It is that refinement is not happening, or that requirements are arriving from stakeholders as one line requests with nobody translating them.

The exception, and how to handle it honestly

Something urgent will always arrive that is not ready. A production issue, a regulator deadline, a demo for a large customer next Tuesday.

The correct response is not to pretend the checklist does not exist and not to refuse the work. It is to take it consciously and say out loud what you are accepting: “This has no acceptance criteria and we have not sized it. We are taking it anyway because of X. It might not finish, and if it grows we will drop Y from this sprint.”

That sentence costs nothing and it changes everything, because now the risk is shared rather than quietly transferred to the developers. The trade off mechanics are in Feedback and Scope Control and Velocity and Capacity.

The ready funnel

A healthy backlog is not uniformly detailed. It has a gradient:

flowchart TD
    A["Next sprint<br/>small, clear, criteria written, estimated, READY"]
    B["Sprint + 1<br/>mostly clear, criteria drafted, roughly sized"]
    C["Sprint + 2<br/>understood at Story level, not detailed yet"]
    D["Further out<br/>still Features and Epics, deliberately not analysed"]

    A --> B
    B --> C
    C --> D

Spending a week writing acceptance criteria for something you may build in six months is waste, and worse, it produces a false sense of certainty. The Scrum Guide describes refinement as progressively adding detail: description, order, size. Progressively is the operative word.

What DoR does for your delivery

Look at the loop in Why We Miss Deadlines. Stories that were not ready are the ones that grow mid sprint, because everything that was never discussed arrives later as “feedback”. DoR does not eliminate that, but it moves most of the discovery from during the sprint, where it destroys the plan, to before the sprint, where it costs a conversation.

One number worth tracking: percentage of Stories that entered the sprint without acceptance criteria. If that number is high, no amount of better estimating will save your predictability.

This connects to

Why Startups Keep Missing Deadlines: The Real Cause Behind Sprint Delays, Missing Test Cases and Forgotten Features

Sit in any startup review meeting and the same questions come back every month:

Note

Definition of Done: How to Stop Calling Work Finished When Testing Is Still Pending

The Definition of Done is a single shared checklist that applies to all work, describing what must be true before anything can be called complete.

Note

Epic vs Feature vs User Story vs Task: How to Break Work Down and Decide Which Is Which

Four levels, and each one answers a different question:

Note

How to Write Acceptance Criteria: Defining Expected Behaviour Before Development Starts

Acceptance criteria are the specific, checkable conditions a single [[How to Write a User Story That Fits in One Sprint|User Story]] must satisfy to be accepted. They belong to that one Story and nothing else.

Note

Story Points Explained: What They Measure, Why Fibonacci, and How to Run Planning Poker

If you write "1 point = 4 hours" on a whiteboard, you have not adopted story points. You have invented a complicated way of writing hours, and you have kept every problem hours had while adding a translation step.

Note

The Sprint Cycle Explained: Backlog Refinement, Sprint Planning, Daily, Review and Retrospective

If you take one thing from this note: the quality of your sprint was decided before it started.

Note

How to Set Up Azure DevOps for Agile Delivery: Work Items, Fields, Tags, Queries and Test Plans

A warning first: the tool does not create the discipline. A perfect Azure DevOps configuration with no [[How to Write Acceptance Criteria|Acceptance Criteria]] and no [[Definition of Done, The Gate Out of a Sprint|Definition of Done]] produces a beautifully organised record o

Note

Scope Creep in Sprints: How to Classify Stakeholder Feedback Instead of Absorbing It

A Story was agreed: export invoice as PDF, 5 points, acceptance criteria written.

Note

Velocity and Capacity: How to Forecast Delivery Dates With Evidence Instead of Optimism

People mix these up constantly, so start here:

Note

Referenced by

Agile and Azure DevOps Terminology Cheat Sheet: Every Term Explained in One Line

Acceptance criteria are per Story and change constantly. Definition of Done applies to everything and changes rarely. Definition of Ready is a team practice, not an official Scrum artifact, while Definition of Done is.

Note

Product Delivery Playbook: Planning, Estimating and Maintaining Software as It Grows

These are my notes on why software teams keep missing deadlines, keep losing track of what their own product does, and keep ending up with a hundred features and almost no test cases. I wrote them for myself first, after watching the same failure repeat sprint after sprint and re

Note

Ready to Use Templates for Epics, Features, Stories, Bugs, Test Cases and Sprint Goals

Written as a business objective, per [[Epic vs Feature vs User Story vs Task|Work Breakdown Hierarchy]].

Note

Why Features End Up With No Test Cases, and How to Make That Structurally Impossible

That is the part worth understanding. There was never a meeting where we chose to ship untested features. What happened is that testing sat outside the definition of finished, so under pressure it was the thing that quietly did not happen, two hundred separate times.

Note

How to Roll Out an Agile Delivery Process in 90 Days, One Change at a Time

One change at a time. A team can absorb roughly one new habit per two weeks. Introduce six at once and you get six half followed rituals and a team that concludes "process does not work here", which then blocks the next attempt for a year.

Note

How to Write a User Story That Fits in One Sprint: INVEST, Splitting Patterns and Examples

The most useful thing I ever read about User Stories is Ron Jeffries' idea of the three Cs: the Card (the short sentence), the Conversation (the discussion it triggers), and the Confirmation (the acceptance criteria you agree on). The written sentence is not a specifi

Note