The next phase is the Speculate phase. The purpose of the phase is to establish a general direction for the project and begin planning, but not getting locked into the plan. Any initial plans are subject to change as the project team members learn new knowledge about the problem domain. However, an initial plan has to be constructed in the beginning to communicate with the customers and help them plan activities based around the project. A release-milestone-iteration plan is the primary deliverable of the Speculate phase.
The plan should be broken down into short, time-boxed iterations based on features. Customers have difficulty understanding technical task breakdowns, but they do understand when the ability to configure the system is complete, for example. To help plan, practices such as a product feature list, feature cards, and performance requirement cards further define the necessary features and the technical constraints. The feature cards and performance requirement cards should be detailed enough to let the technical team create estimates for the features in at least the first iteration.
One practice that Jim highlights is the concept of “iteration zero”. In iteration zero, requirements are gathered in the form of feature cards and performance requirement cards, the development team sets up their work environment (version control, development servers, install the necessary software), gets an automated build going, etc. These activities are usually never scheduled, although it is much easier to start doing them when the project is small rather than waiting until later.
This Blog Hosted On: http://www.DotNetJunkies.com/