Provide a summary of this practice.
What is the overall goal or intention of this practice?
Iteration 0 (‘Iteration Zero’) ensures that the team are fully prepared to begin work on a release. It is designed:
What are the schedule, cost, quality, frequency, performance or other expectations for completing this practice?
Frequency: 1 per release.
There is no fixed duration for Iteration 0. It will depend on:
An experienced product team working in a well-established area may often complete Iteration 0 in a week.
What must have happened or been delivered for this practice to be considered complete?
What pre-conditions must be met before this practice can be used?
This view shows a simplified version of this process. For full details, explanation and advice, click on the ‘Detailed process’ tab. For background such as entry and exit conditions, click on the ‘Context’ tab.
|2||Set up management environment.|
|3||Agree design approach.|
|4||Agree technical approach.|
|5||Agree test strategy.|
|6||Implement foundational stories.|
|1||Organise team||Iteration Lead.|
|Team in place.|
|2||Set up management environment.||Iteration Lead.|
Populated management controls.
|3||Agree design approach.||Iteration Lead.|
|Agreed iteration design goals & standards.|
|4||Agree technical approach.||Iteration Lead.|
|Populated technical environment.|
Operational technical tools.
|5||Agree test strategy.||Iteration Lead.|
|Documented & agreed Test Strategy.|| An Agile test strategy will generally include:|
|6||Implement foundational stories.||Iteration Lead.|
|Operational team and technical environment.|
|7||Train team.||Iteration Lead.|
|Fully skilled & experienced team.|
|8||Test drive.||Iteration Lead.|
Issues and risks
What are the key concerns in making a success of this practice?
- There is no standard for Iteration 0.
- The tasks outlined here are only examples of what may be required to achieve the exit conditions.
- The team must identify for itself what it needs to achieve success.
- There may be no distinct end-point to Iteration 0.
- As each task is completed, the team members involved may be freed to start on stories, test preparation, etc.
- Conversely, some team members may continue to work on foundational stories for a long time after the rest of the team have begun to implement stories.
- Although Iteration 0 is formally a release-level process, the needs of different iteration teams are likely to be different, and likely to be met by those individual teams, possibly without much coordination with other iteration teams.
- In a complex release or with a relatively new team, it may be desirable to perform a second Iteration 0 later in the release:
- To reinforce the new foundations.
- To correct major mistakes and omissions.