Iteration 0
Iteration 0 refers to the work done before incremental development begins. This includes early product planning, getting the development team started up, setting up their physical and tooling environment, and making an initial architectural definition. All of this work is preliminary and most of it is expected to evolve over time as the project proceeds.
Purpose
The purpose of iteration 0 is to pave the way for the successful launch and, ultimately, the completion of the product.
Inputs and preconditions
The only inputs are the initial product and project concepts.
Outputs and post conditions
By the end of iteration 0, initial plans are in place and all that they imply for the product vision, the product roadmap, the release plan, and the risk management plan. This means that there is an initial product backlog developed by the end of iteration 0, at least enough that the next few iterations are scoped out. Iterations further out may be more loosely...