
An iteration planning meeting is called at the beginning of each
iteration to produce that iteration's plan of programming tasks. Each iteration is 1 to 3 weeks long.
User stories are chosen for this iteration by the customer from the
release plan in order of the most valuable to the customer first. Failed
acceptance tests to be fixed are also selected. The customer selects user stories with estimates that total up to the
project velocity from the last iteration.

The user stories and failed tests are broken down into the programming tasks that will support them. Tasks are written down on index cards like user stories. While user stories are in the customer's language, tasks are in the developer's language. Duplicate tasks can be removed. These task cards will be the detailed plan for the iteration.

Developers sign up to do the tasks and then estimate how long their own tasks will take to complete. It is important for the developer who accepts a task to also be the one who estimates how long it will take to finish. People are not interchangeable and the person who is going to do the task must estimate how long it will take.

Each task should be estimated as 1, 2, or