Iteration retrospectives are the structured reflective practice to learn and improve based on what has already been done. The purpose of retrospection is to build team commitment and to collectively find ways to improve the team’s ways of working.
Retrospectives are usually done at the end of every iteration (but be pragmatic about this!).
Usually, the team lead is the facilitator for the meeting. A facilitator helps the team stay focused and learn together.
Why to Do This Practice
Retrospectives are a conversation between team members, and the job of the facilitator is to help the team identify opportunities for improving their ways of working and to plan how to implement those improvements.
Facilitation is a skill. Facilitation is an activity of helping a team to improve their effectiveness, addressing impediments and conflicts, creating a safe environment to identify and address issues as a group, and assisting with the decision-making process.
The facilitator’s job is to do things like:
- Drawing out ideas and opinions
- Writing and communicating on behalf of the team
- Acting as an occasional referee
- Helping the team to keep to its process and helping them to revise it when needed
- Helping to achieve consensus
Who Does This Practice
Here are roles involved in this practice:
- Team lead has ideas or concerns that should be highlighted based on knowledge of the issues of the team as well as experience in the iteration. Team lead is usually the facilitator for the retrospective, but this responsibility can also be circulated within the team.
- Product owner and other team members actively participate and share their ideas.
What to Do
Inputs to retrospectives include:
- Everyone who was involved in the iteration be available. The reason is that everyone has some viewpoint about what happened. If someone is missing, an insight will be lost.
- Goals and objectives for the iteration.
- Understanding what the team committed to for the iteration.
- Concerns and impediments.
At the end of each iteration, the whole team conducts a retrospection, facilitated by the team lead. The key question is, “If we could do it again, what would we keep doing and what would we improve?”
The approach to facilitation requires:
- Understanding the goals and objectives of the iteration
- Handling the logistics for room and materials
- Scheduling participants
- Identifying possible problems. Develop a good facilitation plan and review the facilitation tools that will be used
- Gathering and making visible in handouts or charts the data needed for the meeting
- Keeping the meeting running and focused and managing the clock
- Capturing notes and insights and distribute to members after the meeting
The iteration retrospective is the opportunity for the team to learn together. Each team member is expected to speak and speaks to the whole team. In this session, everyone should consider themselves to be peers.
The team lead facilitates the conversation but does not lead the session.
Here are important objectives for facilitating a retrospective:
- This is a blame free environment.
- The goal is process improvement, not blame. Be honest about what happened. Critiques are allowed without recrimination.
- Use the normal rules for brainstorming.
- Seek to uncover the unvarnished truth, what actually went on.
- We want to identify a few vital things to change.
- While a team may generate a lot of ideas, have the team pick a “vital few” that offer the greatest opportunity for near-term improvement. For each one, create a story and assign it to an iteration.
- A retrospection is successful if it generates two or three -3 stories focused on process improvement.
- Everyone participates.
- Everyone who was involved in the iteration should be present at the retrospection.
- Everyone speaks because everyone has an insight that may help foster understanding.
Here are useful notes about facilitating a retrospective:
- At the beginning, ask people to introduce themselves and their role or some other activity that makes everyone feel they are involved
- Begin by reviewing the objectives for the iteration (described above)
- Create an atmosphere of openness and don’t be afraid to ask the unasked questions
- Clarify the distinction between facts and opinions
- Ensure a blame-free environment
- In a big meeting, ask someone to take detailed notes
Challenges to Consider
- Growing stale. At some point in a team’s life, retrospections become rote, stale. It ceases to be seen as useful to the team. Whenever you sense this, it is your responsibility to point it out. The team must consider together how to shake things up, to see how they can make it relevant again.
- Too many suggestions. Focus on the vital few. Track these as stories for the next iteration so that the team can see value being produced.
- Too few suggestions. Teams often think too small. They are constrained by assumptions about what they are allowed to do.
- Complaining. It is common for improvement events to devolve into whining sessions, complaining without an intention to do better. The facilitator can allow a little time for this but then must take strong action to head this off.
Retrospectives are intended for the team itself, and they must provide a safe environment for participants. This is an important part of the facilitator’s job.
Outsiders usually don’t participate in retrospectives, and in order to maintain the safe environment aspect of the meeting the team should be restrictive as to inviting other people to participate in the meeting. Deciding whether or not to involve outsiders in the retrospective, following this rule: Will the additional person contribute to learning among the team and within the organization?
Should the product owner come to the retrospective? Yes, if…
- The team feels comfortable with the product owner being there
- The product owner has perspectives about the iteration that need to be shared
- It will help to build relationship between the product owner and the team
- The product owner is not involved in evaluating team members
The iteration retrospective should result in one to three stories for the next iteration reflecting a “vital few” improvements to the team’s ways of working.
While the meeting is primarily intended for the team itself, and “what happens in the retrospective stays in the retrospective”, from a transparency point of view, the team should share the improvement stories they have committed to implementing.
When to Do This Practice
Iteration retrospectives should be done at the end of the iteration, while the experience from the iteration is fresh in everybody’s mind.
Planning for facilitation should be done at least a few days before the retrospective.
Here are some of the compelling reasons for this practice:
- Effective communication between all parties
- Creation of a safe environment for listening and sharing
- Good relationship with team members
- Concerns are addressed effectively
Team Lead Overview
Practices for the Team Lead
- Coaching inception
- Components of a good team board
- Controlling work-in-process (WIP)
- Daily coordination
- Decomposing a feature into a user story
- Definition of ready
- Facilitating remote teams
- Handling external interruptions
- Iteration demonstration and review (Facilitate)
- Iteration demonstration and review (Plan)
- Iteration planning meeting (Facilitation)
- Iteration retrospective (Facilitate)
- Operational metrics
- Scrum of scrums
- Unfinished work
- Visual controls