The Definition of Ready – Agile Software Development


Hi, my name is Chris Gagne, and I’m an agile coach and today. I’m going to talk about the definition of ready The definition of ready is a documented team agreement. It defines the conditions that must be met for a product backlog item to be considered ready to work on by the team It’s not a formal contract or approval gate, but rather a set of guidelines that will help your team make a good trade-off between minimizing risks and getting started. Creating and following the definition of ready, diligently, can easily double the speed in the agile team because the team can stay focused on shipping working software, not chasing down requirements. For a real-world example, think of the “Mise en place” or everything in this place concept used by chefs and cooking shows. Before they begin preparing the recipe, they carefully organize and measure the various ingredients so they’re immediately at hand while cooking. A little careful preparation goes a long way! A good starting point is the I.N.V.E.S.T mnemonic, to which I like to add a “U”, for “you” invest. “U” stands for “user experience”, which includes research, wireframes, mocks, written content, and even visual design. Now, mature scrum teams with dedicated designers can research, design, code, tests, and even ship within a single two-week sprint. If you can’t, consider making user experience a prerequisite for development work beginning. “I” means “Independent”. The backlog item should be self-contained in a way that there’s no in-sprint dependency on another backlog item. “N” means “Negotiable”. Until the sprint formally starts, the development team and product owner can negotiate on the nature and scope of the item. The corollary: once the sprint starts, the product owner should _not_ materially change the acceptance criteria. “V” means “Valuable”. An item must deliver value to your stakeholders. If you can’t clearly articulate the value for the work, you probably shouldn’t be doing it. “E” means “Estimable”. The team must be able to estimate the size of the backlog item, ideally using story points. Otherwise, you won’t be able to effectively manage your flow of work. “S” means “Small”. Ideally the backlog item should not take the team more than half a sprint to complete. “T” means “Testable”. The backlog item and acceptance criteria should contain enough information to make test development possible, for instance, “The coffee should be between 120 and 130 degrees Fahrenheit”. It’s much clearer Acceptance Criteria, then “The coffee should be hot”. Create your definition of ready, as a team, based on your unique needs. Review it at each backlog refinement and sprint planning meeting. You can update your definition of ready at any time, so long as your team agrees to change.

3 Comments

Add a Comment

Your email address will not be published. Required fields are marked *