An agile retrospective is a practice for teams to reflect, learn, and to continuously become better in what they do. Although retrospectives are most often used to explore the current way of working, they can also be used to investigate quality issues or to agree upon actions that can improve the quality of the software that is delivered.
Here are suggestions of what you can do in your retrospectives to improve software quality:
- Explore major or repeating problems with a Root Cause Analysis.
- Do a futurespective for building an awesome product.
- Reflect on your quality practices with the Agile Self-Assessment Game.
- Solve quality issues with a Stop the Line exercise.
This article is based on the chapter Improve Software Quality with Retrospectives from the book What Drives Quality. This book explores how quality plays a role in all of the software development phases, it takes a deep dive into quality by listing the relevant factors of development activities that drive the quality of products. It provides a lean approach to quality, which analyses the full development chain from customer request to delivering products.
Exploring Problems with a Root Cause Analysis
The five times why retrospective exercise uses root cause analysis (RCA) to identify the deeper causes of quality problems. The basic technique is to build a shared view of the cause-effect tree, by repeatedly asking “why”. Each cause that is identified by asking why is listed on the tree, and then questioned to find out why it happened, until you find the lowest or root causes.
When you’re at the fourth or deeper level in one of the branches of the tree you often get to a situation where nobody knows the answer (this is as it is), or there is no need to go deeper: Now you have found a root cause!
Note that there often are multiple causes why something happened. You want to have a complete view of all causes before deciding upon actions.
Once you have identified all root causes then you ask the team for actions that would prevent similar causes to happen in the future.
There’s a new handy booklet on RCA: Tools for Root Cause Analysis which provides a process, checklist, and templates for doing effective Root Cause Analysis.
One final advice: Be careful to not have too many actions coming out of your retrospective, agree upon the Vital Few Actions that are most urgent and effective.
Building an Awesome Product Futurespective
An Awesome Product Futurespective is a retrospective where you start from the result to find ways how to get there.
Teams place themselves in the future by imagining that they have built the most awesome product, a product that does everything that their users need in a great way, a product their users love.
Next they will discuss their imaginary past and explore how they have gotten to this result, by exploring the things that have helped them to get there and the things which made it hard to reach their goal.
Now teams go back to the present, and the results from exploring their imaginary past are used to agree how to work together to reach the goal.
Reflecting with the Agile Self-Assessment Game
The Agile Self-Assessment Game can be used by teams and organizations to self-assess their agility. With this game, teams can discover how agile they are and what they can do to increase their agility to deliver more value to their customers and stakeholders.
The basic game and the expansion packs contain many cards that can be used to discuss quality practices that your team is using or might be using. Playing the game helps you to see how well you are doing and to find ways to improve the quality of the software that you deliver.
Solving Quality Issues with a Stop the Line Exercise
The concept of “Stop the Line” comes originally from the Toyota Production System. It is a lean technique where anyone is allowed (actually urged) to stop the assembly line when a problem is discovered.
Ask team members to reflect on the iteration and to recall a moment when they saw a problem. When a team member has one, (s)he should stand up and use an andon to let the team know. The team member will briefly explain the problem, where the retrospective facilitator will summarize it on a flip chart or whiteboard, visible to everyone. Once there is a collection of problems, the team decides which one they want to eliminate.
Stop the Line is a retrospective exercise that can be used to learn from problems and prevent them from happening in the future. This exercise teaches you to see problems early, dare to stop and signal the team, and take action, with the skills and mindset needed to create a culture where quality comes first.
Driving Quality with Agile Retrospectives
This article lists four ways to improve software quality with retrospectives. Find more exercises in the Retrospective Exercises Toolbox; many of them can be used to investigate quality issues and deliver high-quality software.