The Continuous Retrospective
Posted at 07:00 on 08 June 2016
The sprint retrospective is one of the most important ceremonies in Scrum. At the end of every sprint, the team meets together to discuss what went well, what went badly, and how you can improve your processes and working practices.
Effective as it may be, the end-of-sprint retrospective isn’t perfect. It’s very common to encounter problems during the sprint, only to get to the retrospective and find that you’ve forgotten what they were. On the other hand, you can end up wasting a lot of time complaining about things that you aren’t able to do anything about.
To resolve these problems, we have recently implemented a “continuous retrospective” within our team. Instead of waiting until the end of the sprint, we can highlight problems as and when they arise, and action them accordingly.
Besides the fact that issues are less likely to be forgotten, there are several other advantages to this approach. It is less formal, and a better use of people’s time. It improves communication. It can also improve visibility and transparency, allowing people to see that you are aware of, and addressing, issues that you are encountering.
A different approach.
This is a different approach from your traditional, end-of-sprint retrospective. For starters, it is less meeting-oriented. You simply set up a kanban-style board in your team's working area, where you can add Post-It notes for things that are going well, things that need action, and things that need further discussion, perhaps to reach a team consensus.
Write things down as soon as you think of them -- don't wait until the end of the sprint, or even until the daily stand-up meeting. You should aim to discuss them with the rest of the team as soon as possible, and reach a consensus on what action to take. Actions may be, for example:
- Creating backlog tasks for the items you bring up
- Updating documentation
- Communicating problems or findings with other teams or the wider software development community as appropriate (e.g. through email, Twitter, blogs, or forums)
- Flagging issues to raise with senior management.
Don't just limit items to things that are within your team's remit. Anything that needs attention or can be improved is fair game -- the appropriate action may be to raise it with other teams or senior management, for example.
Do you still need an end of sprint retrospective?
Maybe, or maybe not. It depends on your team.
Some teams may find that a continuous retrospective renders the end of sprint retrospective mostly superfluous. Others may find that the end of sprint retrospective still provides value -- for example, by allowing you to check your progress, or to prioritise issues that have proven to be more complex to address.
But regardless of whether we retain the end of sprint retrospective or not, our goal is to make the continuous retrospective, as the sprint is in progress, the main driver of our team's improvement. Agility is all about keeping your feedback loops as tight as possible, and like continuous integration and continuous delivery, continuous retrospectives are another way to achieve that end.
Thanks to Steven Wade, Vinitha Devadas and Dan Barrett for their contributions to this post.