At WyeWorks, we are passionate about improving on what we do. Indeed, our software development process emphasizes continuous improvement. To implement this, we use Scrum’s proposed framework. This article intends to explain our experience conducting Sprint Retrospectives with teams located across different parts of the world, in this particular case members working in Spain, Germany, and Uruguay.
On several occasions, we have done retrospectives with remote team members, trying several techniques such as paper and post-its and some digital solutions. This year, however, we performed an experiment from June up to the current day that we found we preferred to the previous ones. That’s why we want to share it with you.
There are several challenges to overcome in order to successfully execute an efficient retrospective with remote teams. Here, we will mention the most relevant ones for us:
- The shared understanding of all team members
- Equal participation, regardless of whether they are located in different places
In addition to the above, we always try to apply principles from the Agile Manifesto. Hence, we seek out simple processes, especially as the greater complexity is the actual work of building the software that adds value to our client’s business.
Out of respect to these principles, we decided to use Trello to assemble a digital board on which the retrospective is executed. Trello is a very accessible, simple, and extremely versatile digital tool.
Next, we will describe how we allocate time, the structure of the Trello board, and how we develop the activity of the retrospective, all while respecting the fundamental stages in order to inspect and adapt the engineering process and teamwork. Our primary goal is to satisfy our clients’ business time needs by delivering quality software every two weeks.
Agenda, structure and execution
Phase | Time (minutes) |
---|---|
1) Check-in | 5 |
2) Gather data (post items and explain) | 6+12 |
3) Grouping and prioritization | 10 |
4) Discussions | 50 |
5) Action plan | 7 |
Timebox |
90 |
Generally, our sprints last two weeks. Therefore, the total duration of a retrospective is ninety minutes. The whole team is aware of this timeframe and each member respects it. One of the keys to the functioning of self-organization is that the team self-imposes discipline.
Next, we will demonstrate the structure of the Trello board and, at the same time, explain how we execute each phase of the retrospective.
1) Check-in (5’)
The first list, “Level of Motivation”, is for each team member to write-in a number indicating their level of motivation in the sprint. Additional lists are created with the names of team members.
We begin the retrospective once all team members are online, then we review the action plan from the previous retrospective, focusing on determining if it was effective. Immediately following this, each member takes a turn writing a card in Trello indicating their level of motivation in the sprint.
This data is available to the team so that they can be the ones to decide if they want more information about the motivation of each member. A team’s best performance is achieved when all of a team’s members are motivated.
2) Gather data (6’ + 12’)
This is probably one of the most important stages for a retrospective to fulfill its objective and respect the parameters that we previously mentioned. It is here that our Trello design has been very effective for us. For six minutes, each member of the team, simultaneously with the rest, writes their items on their named list. Everyone concentrates on their own cards. Once that time is up, each member has to explain their cards to the rest.
The Trello labels are used by each member to write-in their feelings regarding the subject. It is important that the team is aware of the importance of listening to all colleagues when they explain each card. Do not focus on what is written, since the text of each card is a very brief description. Good communication is achieved by taking into account gestures and tones of voice. Hence, it is important to not write too much, as the cards are simply meant to trigger conversation.
At the center of the board, we have three general lists: “Good”, “To Improve”, and “Idea”. After each member has explained each one of the items written in their lists, they will drag it over to one of these lists depending on how they feel about it.
3) Grouping and prioritization (10’)
By this stage, the whole team has already listened to everyone and they will now define which topics are priorities to analyze and determine actions that allow us to improve the next sprint. The grouping of topics and their prioritization is done together by the team itself, searching for ways to organize topics into the “Good”, “To improve”, and “Ideas” lists.
In the example shown in the previous image, the team identified that the priority was to talk about a group of cards related to the theme, “Backlog refinement”, and marked this by utilizing another Trello label. In this example, ideas have still not emerged. In this phase, we can utilize the filters by labels that Trello allows for. This filter can be applied if you have many groups but only want to concentrate on one. Here is an example of its use:
In this example, the vote was taken outside the board, but it is interesting to know that Trello can incorporate Power-Ups, and a specific one for voting exists:
Returning to the retrospective’s flow of execution, after identifying at least one group, the team can decide whether they want to begin a discussion regarding the group that they identified or continue grouping and prioritizing others.
4) Discussion (50’)
Once the previous stage is over, the conversation turns to identifying what caused problems, in hopes of finding actions that permit us to improve in the next sprint. As ideas emerge, they are written-in on the list and are associated with the corresponding group, as in the case of “Backlog refinement”.
5) Action plan (7’)
The final stage of the retrospective involves reviewing the ideas and generating items that form an action plan to be executed in the next sprint. These actions focus on the work process. In order to define an efficient action plan, the SMART criteria should be taken into account.
Meaning: | |
---|---|
S |
Specific |
M |
Measurable |
A |
Attainable |
R |
Realistic |
T |
Timely |
At the end of the retrospective, it’s a good idea to assign each item of the action plan to a member of the team. They will be responsible for making sure that each action is executed during the next sprint.
Apart from the action plan, it is also possible to identify teamwork patterns at this stage, which is why we created the “Team Agreement” list. Generally-speaking, It’s comprised of items from the “Good” list. This answers the question that many teams ask themselves: “Why identify what was good about the sprint?” The reason is to capitalize on learning in work-related agreements.
Before beginning each retrospective, the last list on the “History” board is automatically loaded following the execution of a Ruby program. This clears the digital board and all the information from the previous retrospective is added as a “History” card.
Conclusions
The primary advantages we observed after using Trello for remote retrospectives were:
- Improved time efficiency in the data gathering stage
- The implementation cost is low and the usability is high, so the return on investment is very good
- The team members in different parts of the world are subject to similar conditions throughout the entire activity and the parameters are complied with
- For those who have the desire, they can leave a historical record of previous retrospectives, just as we do
- It provides a free API that allows you to automate the interaction. Here is the Ruby script that we using to interact with Trello through the specific API for Ruby. However, you can use this API for almost all the manual actions that can be performed on a Trello board.
Something that can be seen as a disadvantage is that each member sees the whole board during all stages, and thus those in the data-gathering stage could be influenced by what others are writing. However, there is a characteristic of Trello that can alleviate this issue. Team members can write the list of items separated by new lines in any external application. Then, they can copy and paste the list into Trello in order to create all the cards automatically, one card for each line.
Having stated the above and to summarize, Trello is a very flexible tool. This flexibility allows us to shape the retrospective to our liking; if we change the dynamic and execution, it is very easy to adapt the structure of the board to one’s needs. After having utilized other techniques, we would like to really emphasize that using Trello in the way in which we have described it here can result in a Lean solution for conducting retrospectives for teams whose members are remote.