At the end of each Sprint/Iteration, team members (developers, customers, managers) get together and analyse how to become more effective.
What is a Retrospective?
Retrospections are the time when processes are inspected in order to be improved, successes shared, real numbers are collected to be used for future projects and successful actions are reinforced in next iterations. The result of a Retrospective should highlight a small number of changes to be done.
For best results, retrospectives should be conducted by a neutral facilitator, and have an established positive goal. The purpose of Retrospectives is not to seek blame, but to learn from mistakes.
What did we do well, that if we don’t discuss we might forget?
What did we learn?
What should we do differently next time?
What still puzzles us?
"Regardless of what we discover, we must understand and truly believe that everyone did the best job he or she could, given what was known at the time, his or her skills an abilities, the resources available, and the situation at hand." – Norman L. Kerth, Project Retrospectives: A Handbook for Team Reviews.