Iteration Planning of Software Development Projects

A release plan is an excellent high-level view of how aspreadsheet or a set of note cards with one task
team intends to deliver the most valuable product theyhandwritten on each card. In either case, tasks and
can. However, a release plan provides only thestories should be organized so that it's possible to tell
high-level view of the product being built. It does notwhich tasks go with which stories.
provide the short-term, more detailed view that teamsAs an alternative to a spreadsheet, note cards can be
use to drive the work that occurs within an iteration.used for step-by-step planning. The cards can be
With an iteration plan, a team takes a more focused,arranged on a table or by taping them to a wall. For
detailed look at what will be necessary to implementcollocated teams, my preference is to do planning with
completely only those user stories selected for thenote cards. The team may walk out of the planning
new iteration.meeting and immediately type the cards into their
An iteration plan is created in a planning meeting. Thissoftware system.
meeting should be attended by the product owner,One of the most significant advantages to using note
analysts, programmers, testers, database engineers,cards during iteration planning is that it allows everyone
user iteration designers, and so on. Anyone involved into participate in the process. If tasks are being typed in
taking a raw idea and turning it into a functional producta system during the meetings, someone has his fingers
should be present.on a keyboard which causes distractions and a single
Tangibly, the results of this plan can be as simple as apoint of failure.