What Is A Retrospective?
Retrospective (from Latin retrospectare, “look back”) broadly means to take a look back at events that already have taken place. (Yay Wikipedia!)
Retrospective meetings in software development are many team’s answer to this line from the Agile Manifesto:
At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
Unlike post mortems (from the Latin “after death”, yikes), retrospectives should be done regularly, regardless of how things are going. They’re structured and facilitated with the specific goal of the team improving their own process.
Regularly recurring retrospective meetings allow the team to discuss and improve their work and their work processes. They uncover things that went well and opportunities for improvement.
Retros are our most important and beneficial meeting. I’m here to share what we’ve learned after months of iterations and improvements to our retro process.
Why This Process Is Amazing
A great retrospective process can have an amazing impact on your team. Retros done right can build trust among the team, ownership of the process, and a greater sense of purpose in the work being done. The speed and quality of work being done will improve.
To have a great retrospective, you need a few key things:
- Everyone should be speaking in every retro (but not too much). Introverts and extroverts communicate differently. Stereotypically, introverts need time to think before they feel comfortable speaking aloud, and they may not feel super comfortable speaking up in a group. Extroverts can ramble and overwhelm the group, unintentionally dominating the conversation.
- Talk about as many of the most important things possible. Encourage voting to determine what should be talked about in what order. Find ways to wrap up the conversation and drive a conclusion.
- Find improvements before moving on. Keep a written record. Revisit for accountability. This is makes your retros a positive force for change and not just a “bitch fest”.
- (Critical for us.) A remote-friendly process. Our team has a mix of people who work in the office and either full or part time remotely. Our process works well for everyone and provides a full record of what happened for posterity.
An equally great process for in-office and remote people is crucial for us.
Trello helps us do all of that: written record, voting, easy prioritization. The format is open and encouraging, even to introverts. Everyone types first, then also speaks aloud. This distributes the duty of typing, lets folks think before speaking, and lets everyone to speak to their own issue in their own words. (I’ve seen retros where only the facilitator speaks or writes. They paraphrase and to leave stuff out. Their writing duties transform them from a facilitator into a notekeeper. Bummer.)
Our battle-tested process requires:
- If there are remote participants: Google Hangouts (or other)
There are many ways to conduct a retro, but this is the best I’ve seen.
The Nitty Gritty
Over the last two years our retro frequency and participants have changed, but we tend to settle on a meeting every other week with the development team and every other week with a larger, cross-functional group (product, analytics, etc.). We found that making retros part of our standard process (and not necessarily tied to specific releases, sprints or projects) made them the most effective.
Trello Board Setup
We use one Trello board for each retro. The board has four lists:
- Went Well: for positive things we want to celebrate, people we want to thank or recognize, parts of our process we appreciate, etc.
- Needs to Change: for things that people think we should change, improve, stop doing, complaints, etc.
- Questions & Discussion: for anything else people want to talk about that don’t fit well inside the other two.
- Action Items: where cards are moved as they are discussed and action items are decided and assigned.
Facilitator Room Setup
Our conference room has a TV (equipped with browser, camera, mic for the room) and a separate screen for projecting.
The facilitator does some setup in the room before the team arrives:
- joins the Google Hangout from the conference room TV (so local and remote folks can see and hear each other)
- joins the Google Hangout from their own computer, mutes themselves, and shares their screen with the Trello board open (so remote folks can see the Trello board)
- displays the shared screen on a projector (so local folks can see the Trello board on a larger screen)
- pastes links to today’s Trello retro board and the prior retro’s board into chat (so all participants can quickly open the boards)
(Trello’s own “remote first” policy of everyone joining via their own computer would be an even better alternative!)
The Retro Meeting Process: Four Steps
Step 1: Review Last Retro’s Action Items
At the beginning of every retro, we start by revisiting the action items of the previous retro. Hopefully the issue is resolved or at least some progress has been made. This keeps everyone in the loop on what’s going on and over time, builds trust in the process.
Step 2: Add Cards to Discuss
The meeting begins with everyone adding cards to today’s retro board. Topics cover the gamut of our universe:
- Deep and philosophical: “Is xyz the type of business we even want to be in?”
- Process oriented: “XYZ recurring meeting feels like a waste of time.”
- Technical or devops-centric: “XYZ server is having big problems this week. Really slowing me down.”
- How we work with other groups: “Should Analytics be allowed to create tables under working db or have their own sandbox db?”
- Potential disconnect between the team and management: “Does the business know we spent an agonizing amount of time on xyz? Was it worth it?” And many, many more.
Everyone puts their name at the end of cards they add so they can read them aloud in the next phase of the meeting. Card titles actually read like this: “So excited for XYZ’s first day today! Welcome XYZ! — Jess”
After two or three minutes of adding cards a timer goes off and participants reflexively put thumbs up or down to let the facilitator know whether they need more time.
⏲NOTE! I picked up the idea of a timer and thumbs up/down from a Lean Coffee event and it’s been a big hit. Everyone can immediately tell whether what we’re discussing needs more time — very effective, very democratic. When I facilitate, I use the Duck ringtone on my iPhone as the timer. It’s easy, funny, and gets everyone’s attention. We use this process throughout this meeting and it’s spread to many others in the company.
👍Thumbs up: keep going. 👎Thumbs down: let’s move on.
Step 3: Read All Cards Aloud
Next, all cards are read out loud by the person who created the card. If any participants need clarification about what a card means, now is the time. This makes sure everyone gets a chance to speak and everyone understands what cards mean.
Facilitators take note: no discussion beyond explanation of what a card means is done at this point. Be ready to nicely remind the group to vote on cards they care about and leave conversation for later.
Step 4: Vote on Cards to Discuss Today
Our retrospectives are always 50 minutes long. To make the most of our time, we focus on the things the group determines are the highest priority. We prefer to vote on cards by adding ourselves to the Trello cards we want to talk about, but you can also use Trello’s voting powerup. We used to limit the number of votes but one retro months ago, we decided to use unlimited votes and it stuck.
This phase should move quickly, but the trusty duck timer should quack after two minutes to make sure everyone’s ready to move on.
Step 5: Discuss Top Cards + Drive Action Items
Starting with the card with the highest number of votes in either the Needs to Change or Questions and Discussion lists, the facilitator will drag the card into the Action Items list and read it aloud. The person who created the card will speak to it briefly and then the conversation naturally opens up to the room to discuss. Generally, the most important part of this phase is to drive out action items for each card, things that can be done to improve the issue.
Wikipedia says Action Items are “a documented event, task, activity, or action that needs to take place. Action items are discrete units that can be handled by a single person.”
Action items might be things like:
- just doing it, whether that’s work, starting or killing a process, etc.
- meeting with a separate or smaller group to brainstorm solutions
- things that can be done to mitigate issues
- and of course, many more but they they tend to work best when they’re manageable tasks that one person can take the lead on
Action items aren’t always easy and sometimes figuring them out takes a lot of conversation — that’s okay. Keep that duck timer quacking every couple minutes to make sure the majority is still engaged and trust the process. Eventually, one of two things should happen: 1) action items will be clear before the duck quacks and it will be obvious that card is done. 2) the majority will thumbs down and the facilitator will try to quickly get the group to agree to a next step.
However, we do live in an imperfect world. Action items aren’t always possible or necessary. Sometimes issues are tabled and might be brought up again in some future retro. Other times, the group just can’t come up with an action item that makes sense. Or maybe all that was really needed was to vent, discuss or get aligned.
Whatever the end result, the facilitator (or helpers) should document them with a comment in the Trello card.
As soon as you have resolution on the first card, move on to the next and repeat on until you’re out of time.
Voila. Your first retro!
Couple More Things
Adding Cards from Chat
We used to have a really hard time remembering things that had happened throughout the week/month that we wanted to discuss in the next retro. Thankfully, Hubot helped us fix that with a little script. Now whenever we type “retro: …” in Campfire, he automatically creates a card for us so we can quickly add things on the fly, get back to work, and they’ll be waiting for us when the next retro comes around.
Want to hear my voice talking about retros: check out this podcast: Jessica Barnett on Sticking to Your Principles to Overcome Overwhelm.
I also chatted with Zapier about retros here: A Project Postmortem Toolkit: Apps and Approaches that Help You Learn More from Retrospectives