What is the difference between Acceptance Test--Driven Planning and Acceptance Test--Driven Development? Are they the same?

2 Answers 2


Acceptance Test-Driven Planning is an extension of XP Planning. It involves the following steps:

  1. Getting our story straight
  2. Show and tell
  3. Retrospective
  4. (optional) Technical Retrospective
  5. Iteration Planning Workshop
  6. (optional) Big, up-front thinking
  7. Cutting the iteration.

This planning process is supposed to take up about 10% of the time, the development effort 90%.

Acceptance Test-Driven Development is an extension of Test-Driven Development. Note that in the diagram below, traditional Test-Driven Development is referred to as Unit Test-Driven Development (UTDD)

alt text

  • I treat unit test to acceptance test as merely a matter of scale, but +1 for the cool diagram! Commented Jan 3, 2011 at 6:50
  • Why is Test and Driven are usually separated by using two dashes rather one? Shouldn't it be "Acceptance-Test-Driven Planning"? Commented Sep 19, 2011 at 7:15
  • +1 for picture (although not drawn by hand) Commented Mar 21, 2012 at 13:49

Answering my own question (based on some research):

In "The RSpec Book" David Chelimsky et. al. says that Acceptance Test--Driven Planning is one of three core practices of Behavior Driven Development (BDD). They describe Acceptance Test--Driven Planning (ATDP) as an extension of Acceptance Test--Driven Development (ATDD) and say that in ATDP acceptance tests are agreed on during or before an interation planing meeting. This helps the development team to better understand the requirements and estimate the work required for an implementation. In contrast, the general practice of ATDD simply means collaborating with customers on acceptance tests before developers write code and doesn't specify whether tests should be written before or after an iteration planning meeting.

In the paper "Acceptance Test Driven Planning" (published in the book "Extreme Programming and Agile Methods") Richard Watt and David Leigh-Fellows emphasize the importance of "Getting Our Stories Straight" as a key phase of the development process. They describe marathon planning sessions where the full development team sought to clarify requirements from the customer before deciding on a list of implementation tasks and estimating time required. To improve the process, they assigned a developer and QA engineer to work with a customer to write acceptance tests before the full team met for a planning session. Creating acceptance tests at this early stage encourages the customer to express the requirements clearly; it gives the developers a better understanding of the requirements and helps them to know when their work is done; and makes it easier to break down tasks and estimate work effort.

ATDP means the development team considers acceptance tests as well as user stories before implementation tasks are identified and assigned. In practice, ATDP means acceptance tests become the focal point of of all planning and development activities.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.