How to Run a Successful Project Retrospective

Product Management
Vishal Chandnani
Senior Software Engineer

How to Run a Successful Project Retrospective


"Strive for continuous improvement, instead of perfection." - Kim Collins


A retrospective provides a way to reflect on the software development work done in the past sprint cycle or cycles. It helps the team learn from past mistakes and improve their development process in the next iteration of work. We encourage regular retrospectives at the end of each development cycle.


In its simplest form, a retrospective should discuss the following items:

  1. What are our goals?
  2. What are the risks?
  3. What worked well this time?
  4. What did not work well this time?
  5. What should we do differently next time?

The Sailboat Retrospective

Retrospectives may introduce more difficult (but productive) conversations, which can be challenging for some people. At Def Method, we like to have fun retrospectives and keep the exercise light-hearted in nature. In our view, creating a more lively environment for retrospectives is likely to increase team participation and overall efficiency. The sailboat exercise is one of our favorite themes. We find it very effective and have used this theme at several client project retrospectives.

Introduction

  • Select a moderator.
  • Set a day/time that works for the team.
  • Reserve a large conference room -OR- hang out in the open space.
  • Arrange for a large whiteboard, dry-erase markers and colored square post-it notes.
  • (Optional) Order guac and chips. We like Chipotle!

Event Preparation

On the day of the event, the moderator heads to the room/space ahead of time and draws the sailboat exercise theme on the whiteboard. The diagram consists of the following components:

  1. Island: Represents the team goals and vision

Example: Develop an application to solve the Rubik’s Cube

  1. Rocks: Represent risks they may face while working towards their vision

Example: The ‘rotate-piece’ gem/library is not yet stable

  1. Wind: Represents everything that is helping the team reach reach their goals

Example: Daily exercises with a physical Rubik’s Cube

  1. Anchors: Represent obstacles that may slow them down during their journey

Example: Developer automated tests take more than fifteen minutes

Team Discussion

Discuss team goals/vision and write them on the whiteboard. Hand out post-it notes to everyone and give them ten to fifteen minutes to write down their thoughts on the different topics. You could use different colored post-it notes for the different areas. As an example: green for positive thoughts, red for not-so-positive thoughts, etc. Once that is done, give about five minutes to each person to read and talk about their ideas. Collect everyone's post-it notes and organize them on the whiteboard.


Take a short break. Enjoy some chips and guac!


When you resume, discuss all post-it notes ideas and thoughts on the whiteboard. In addition to providing an endless supply of guac, the main responsibility of the moderator is to listen to everyone. Give people time to voice their opinions and take notes to capture important thoughts.



Sample Whiteboard Picture 1


As you discuss the different categories of notes, e.g. "wind/helpers", "anchors/obstacles", etc. group them and capture the following key takeaways:

1. What worked well this time?

2. What did not work well this time?

3. What should we do differently next time?

Sample Whiteboard Picture 2

Conclusion

Make the appropriate issues/stories in your project tracking software of choice. Give everyone a round of applause for their efforts and participation. Remember to add an element of fun to your retrospectives and remember to capture key takeaways for the next development cycle.


We hope you enjoyed this article. Please feel free to send us your comments.

References

https://luis-goncalves.com/sailboat-exercise-sailboat-retrospective/

"Getting Value out of Agile Retrospectives" by Ben Linders and Luis Gonçalves


Read Next Article -->