A featherlight explanation that captures the essence of Scrum for Product Managers and Product Owners.
According to the Scrum Guide:
"Scrum is a process framework for solving complex problems."
We can rewrite this as:
"Scrum is a lightweight process for solving problems where you initially lack enough information to solve them."
Scrum is a process, albeit with very few rules. Scrum Guide’s claim that it is not a process wouldn’t hold up in a court of law.
So why does the Scrum Guide call it a process framework and explicitly disallow calling it a process?
For two reasons:
- Scrum does not offer the whole process for solving complex problems. Scrum provides a canvas to help the real working process to emerge.
- Grant the people who perform the work the freedom to decide the best working process. It is is up to the Scrum team to figure out the best way of working together. Scrum does not dictate the process. It provides a light-weight foundation to help discover the process.
So what are complex problems?
Simple problems have little uncertainty. When you start working on the problem you have all the information you need to solve the problem.
Complex problems have a high degree of uncertainty. More is unknown than known. When you start working on the problem you do not have enough information to solve it. As you learn more by actually tackling the problem, you can use this learning for figuring out a solution.
The key thing here is that doing paves the way for learning. Learning enables you to solve your problem better and more efficiently.
The traditional way of dealing with complex problems
Tasseography is the practice of predicting the future by reading patterns in coffee grounds. A fortune teller versed in tasseography can tell you your future by reading patterns in a Turkish coffee cup you drank from.
In Dutch we have the following saying
“Dat is koffiedik kijken.”
This would roughly translate to:
“That’s reading patterns in coffee grounds.”
We use this saying to make clear that a person is claiming something without having enough information to back it up. They are trying to predict the future by reading patterns in coffee grounds.
The traditional way of dealing with complex problems is to spend more time thinking, analyzing and planning before you actually start doing something.
This simply does not work and produces a lot of waste. In case of a complex problem, you simply lack the information to come up with a good approach, design or plan.
For complex problems a different approach is needed that allows incorporating new information as more is learned. When dealing with these kind of problems the approach of Scrum shines through.
The Scrum way of dealing with complex problems
"In theory, there is no difference between theory and practice. But, in practice, there is." — Jan van de Snepscheut
The Scrum process framework focuses on learning by doing. This is exactly what makes it so well suited to solving complex problems.
The foundation for this approach is called empiricism. By doing something you gain knowledge and by having more knowledge you can make better decisions.
This quote illustrates empiricism beautifully:
"We learn by doing because we do by learning." - Saji Ijiyemi
So how does Scrum bring empiricism into practice?
The essence of Scrum: focus on learning by doing and reflecting
The Scrum Team works together towards a common goal in a fixed timebox of a month or shorter— called a Sprint. The common goal the Scrum Team works toward is called the Sprint Goal. The Sprint ends when the agreed timebox of a month or less expires. The Scrum Team then reflects whether they have achieved the Sprint Goal.
The Scrum process framework focuses on learning by doing and reflecting on what you did.
Each Sprint there is a quick feedback loop on the result of the work and the process used to produce the result of the work. By using Scrum, each Sprint you will learn more and the team can use this to come up with better ways of working together.
The Scrum Team is self-organizing. The team has the final say on how they want to work together. This also maximizes learning, as the people who perform the work and learn from it decide on the best way of working together.
The Scrum Team is cross-functional. The team needs to have all the skills necessary to accomplish their work without depending on others who are not part of the team. This enables the Scrum Team to effectively work on things together and learn from each other.
Scrum helps teams to figure out and do what works best
Scrum is a lightweight process framework for solving problems where you initially lack enough information to solve them.
Scrum is a process framework for two reasons:
- Scrum does not (and cannot) provide a full process for solving complex problems.
- Because of this, Scrum wants to empower the team that does the work to come up with the best process as they do and learn.
The traditional way of dealing with complex problems is to spend more time thinking, analyzing and planning before you actually start doing something. In case of a complex problem this never works. You simply lack the information to come up with a good approach, design or plan.
For complex problems you need to do and learn at the same time. The core of Scrum is trying to deliver something every Sprint that works and potentially can be released. Each Sprint there is a quick feedback loop on the result of the work and the process used to produce the result of the work.
By making transparent what works well, Scrum enables the team to do what works. By making transparent what does not work, Scrum helps the team resolve this and come up with better ways of working together.