Test First Then Code: Understand what is being asked of you in a User Story

Test-First is a built-in quality practice from eXtreme programming (XP) that emphasized building tests before writing code.  After observing software team practicing agile struggle with completing stories consistently and try to incorporate test driven development (TDD) into the development cycle, I knew something was missing.

Allow me to share with you the new paradigm of first test your understanding of what is being asked before writing software. I call it Test-First Then Code.  The practice is very simple but the outcomes are powerful and drive quality.  This five step approach assists teams to obtain greater confidence to complete work successfully.

The team in partnership with the Product Owner (PO) and Scrum Master can use Test-First Then-Code during grooming, sprint planning, or other convenient opportunities to obtain context, clarity, and constraint awareness.  The facilitation is driven by the software teams and not the Scrum Master.  This is a one- to two-hour session that is broken into 15-minute time-box increments.  In a one-hour session you can analyze and evaluate four user stories.  In a two-hours session you get through about eight user stories.  The goal is to ensure each team member understands the context (who, what, and why), clarity of the acceptance criteria, and can identify constraints.  This is an opportunity to Grok each User Story completely.


Copyright 2017 KnolShare

Produced by Dr. Dave Cornelius


  1. Dave Cornelius on January 7, 2018 at 8:26 pm

    Question from the webinar: Do you find that the test cases that come up with in 15 minutes is comprehensive or does a QA engineer need to circle back later and finish up adding test cases to ensure complete test coverage is obtained?

    Answer: The good news is the QA engineer is part of the team and is actively engaged. Within a 15 minute time not all test cases will be identified. However, there will be clarity on what needs to be delivered, which will lead to the appropriate test cases to be defined and executed.

  2. Dave Cornelius on January 7, 2018 at 8:23 pm

    Question from the Webinar: How do break down the User Stories for the Test First Then Code (TFTC) ?
    The activities of the TFTC will inform the team if a user story needs to be broken down by business function, technical dependency, or other categories. The team can share that the story is too big and there is a specific need to break the story into smaller user stories. This information is shared with the product owner and Scrum Master so they know that more work is needed for the sprint.

Leave a Comment