Prepare for iteration assessment
Towards the end of the iteration, the team jointly assesses whether the objectives and evaluation criteria established
in the Iteration Plan were met, and whether the team adhered to the plan and completed all
of the work items committed to the iteration. The team makes use of objective measures to the greatest
extent possible. To assess that a given work item is completed, the team ensures that the corresponding test cases were
successfully run against it.
The team prepares a demonstration of the features implemented at that point, so that during the iteration assessment stakeholders can
have a real sense of progress made. The team decides whether each developer should demonstrate the features that they
implemented, or if the project manager or senior developer demonstrates it all, with other team members present to answer
questions. The project manager prepares reports that show project status, such as work burndown and
test case reports.
These activities happen in preparation for the iteration assessment meeting with stakeholders that occurs on the last
day of the iteration.
Demonstrate value and gather feedback
The team demonstrates the product to customers, end-users, and other stakeholders to collect their feedback or, better
yet, have end users use the product themselves. This can be done throughout the iteration, but at least during
the iteration assessment that occurs at the end of the iteration (see Guideline: Iteration Assessment). Work that is not completed should not be
Resulting knowledge (such as new functionality, requested changes, and defects) are recorded in the Work Items List, so that project priorities, scope, and duration can be refined in the
next iteration planning.
Perform a retrospective
Review with the team the approach taken to development and collaboration, the effectiveness of the development
environment, the suitability of the working environment, and other factors. Discuss what things went well, what could
have gone better, and how things could be changed to deliver better results. Capture in the current Iteration Plan the assessment results, stakeholder feedback, and actions
to be taken to improve the development approach for the next iteration. Record lessons learned in this iteration
with a collection of lessons learned for the entire project.
Perform a retrospective (end of phase)
When the assessment period coincides with the end of a phase, the corresponding
milestone review takes place. These are informal reviews of the work accomplished
where the team and stakeholders agree on moving the project on to the next phase,
spanning a set of iterations with a new common goal in accordance with the emphasis
of the following phase. For more information, see Concept: Phase Milestones.
This step must be performed only when the iteration review coincides with the end of the project. Involve the team and
stakeholders in a final assessment for project acceptance which, if successful, marks the point when the customer
accepts ownership of the software product. Complete the close-out of the project by disposing of the remaining assets
and reassigning the remaining staff.