Iterations are the heartbeat of an XP project. Stories flow in and the team breathes the most valuable ones to life.
By the end of the iteration, you:
(i) have pumped out working (ii) tested software (iii) are ready to begin another cycle
Iteration is a safety mechanism in software development. It helps to prevent the common risk o9d working longer than expected.. Every team, the team stops, looks at what it has achieved, and relates it with stakeholders.
The Iteration Timebox
An Iteration Timebox is a time-frame in which work starts and ends, regardless of how much you have done. It doesn’t prevent problems but it helps t reveal them, and at the same time, the team can avoid delay as a result of such problems. An Iteration Demo marks the end of an iteration.and it should be scheduled at the same time every week.
The Iteration Schedule
Most tam start iteration on Monday morning and end Friday evening. However it is, it should follow a consistent unchanging order.
How to Plan an Iteration
- Measure the velocity of the previous Iteration
- Select the stories to work on in this Iteration
- Break down the story into engineering tasks
- Brainstorm on the task needed to finish the story
- Table the outcome of the brainstorm, discus and fix problems.
- Estimate the task. Pick up each item from the brainstorm and estimate it
- Stop and look at the plan again
- Add up estimates and compare them to the estimates of the previous iterations
- Commit to9 delivering all stories
Tracking the Iteration
Pt your story on a magnetic white board. when you start a task, take it off the board and clip it to the workstation. Mark your initials on the board so that people can know where the task went. As you finish each task, put it back on the white board and circle it with a green marker. Identify whatever is going wrong and fix it.
When Things Go Wrong
Despite your commitment, a problem can com up that you cant work around, and this will threaten iteration commitment. To handle this:
- Se if yo can change your plans and still meet up with your commitment
- consider using Iteration Slack
- Consider engineering tasks that you can simplify or postpone and discus your options with your team
- Explain to customers in case you change plans so that you can re-establish trust
In the middle of an Iteration, a customer can walk in, asking to get a story in. Responsiveness to business needs and changes is a core value in Agile Development. You can change the iteration schedule by removing as much as you add. Moreso, you may only replace only stories that haven’t started yet.. Also, avoid casing chaos, so wait till the next planning meeting before introducing changes to team
Contraindications To Iteration
We may not be able to iterate through our task for some reasons:
- We have to make our task customer-centric
- use simultaneous, simple and incremental design architecture
- your iteration must include slack
- don’t force tam members to commit to a plan they don’t agree with
- Pay close attention to feedback
- React to changes