- Collaboration Between Product Owner and Development Team
- Creating Transparency as a Scrum Team
Creating Transparency as a Scrum Team
Scrum relies on transparency.
Transparency is the first pillar on which Scrum is built; it is the precondition for regular inspection and adaptation.
Transparency in Scrum is created through the artifacts. The Product Backlog, Sprint Backlog, and Increment are the minimum transparency you need in order to implement empirical process control. They are your view into the past, the present, and the future. Teams usually need additional ways to create transparency; however, this varies from team to team and from context to context. Every Scrum Team has to find out how to best create transparency for its context and needs.
Hypothesis-Driven Product Backlog
The Product Backlog contains everything that you currently think is necessary for your product. The interesting question is, How do you know that this is really necessary? Many Product Owners ask their customers and stakeholders to get a better picture of the market and its needs, and that is a good thing. It can become problematic if this input is seen as a given requirement.
The term requirement suggests that you already know what is needed and the way it should work. It leads you to believe that there is certainty where there is none. This usually has two effects:
Your assumptions are not questioned and validated. You think that the person who has specified a requirement will know best and do what he or she has asked for.
You often put too much effort into a solution because you think this is the final one. You try to get it right the first time and not to waste time and effort revisiting work results later.
Together, these effects lead to solutions that are suboptimal or just not helpful in meeting a customer’s or user’s need. We encourage the Product Owners we work with to look at Product Backlog items as hypotheses. A hypothesis is an assumption that has to be validated. It might be wrong; therefore, we don’t want to spend too much effort in building it.
A better way of working for the Scrum Team described in the previous scene would have been to create a small and simple Product Backlog item that describes the problem. Based on this problem, the team can formulate a hypothesis that it would like to validate. The hypothesis could be about the process by which data is shared or about the user interface needed for the patients and medical offices. The Product Backlog item then needs acceptance criteria in the form of the expected result. The Scrum Team could use the following questions to decide on the Product Backlog items: How do we decide if our hypothesis was right or wrong? What is the expected outcome, and how do we measure it?
This approach creates transparency on more than one level. The obvious level is that the Development Team creates transparency about its work. It also makes transparent what result or outcome it expects from the delivery of a Product Backlog item. The team describes measurable results that lead to follow-up actions.
Product Backlog Drives Conversation
Another problem we often see is visible in the Product Owner’s handling of the discussion during backlog refinement, as previously described. She presents a detailed description for the Development Team. Why should that be a problem? Isn’t the Product Backlog a way to create transparency?
Yes, the Product Backlog makes the work for the future transparent. It should not, however, shut down conversation. A Product Backlog item that seemingly doesn’t leave any open question doesn’t invite conversation. People assume that the description is complete and correct.
Product Backlog items that foster conversation grow through collaboration. Consider the following example.
Over the course of a few days, sometimes weeks or months, conversation on different levels with different audiences leads to important insights:
What is needed
What this product could look like
How the team can validate whether it is valuable
How much work it takes
These conversations create transparency and continuously add further transparency to the Product Backlog. They deepen the shared understanding inside and outside the Scrum Team.
Seeing the Big Picture
The discussion in the preceding scenario is a common one. Many teams struggle with the balance of Product Backlog item size and seeing the big picture. Often, the Product Owner has this big picture in mind, but it isn’t visible in the Product Backlog.
A good solution is to keep bigger Product Backlog items, the “parents” of the smaller items, in the Product Backlog. Those bigger items help communicate the larger goals the Product Owner tries to achieve. They should explain the value they should deliver. Bigger Product Backlog items act as beacons in the Product Backlog to give the Scrum Team and stakeholders guidance. They often don’t describe concrete functionality.
Because of their size, these beacon Product Backlog items themselves can never be pulled into a Sprint by the Development Team. Smaller Product Backlog items that are refined from this parent can be further clarified and refined, however, and pulled into a Sprint for implementation. The Product Owner can decide after every Sprint whether the current sum of child Product Backlog items is enough to reach the goal of the parent item or if more work is needed.
If an intermediate target or goal is hard to put into a Product Backlog item, a Product Owner might want to formulate a goal and add that goal to smaller Product Backlog items. The important thing is that the big picture is visible and understood by the whole Scrum Team.
Sometimes the situation is worse than the one described in the narrative. Some Product Owners don’t see the big picture. They see themselves as “Product Backlog managers,” and their responsibility is to collect the requirements of their different stakeholders and communicate them to the Development Team. If this is the case, the most important goal for a Product Owner and the sole reason for the role—optimizing the value of the product being created—is unachievable. How can a Product Owner optimize something if he or she doesn’t see and understand the big picture?
This dysfunctional situation has to be rectified by the organization. Product Owners need a mandate and the power to optimize product value. They need to know what value means for their customers and stakeholders. Their decisions in the Product Backlog to increase this value have to be respected.
Product Backlog Items Need to Create Value
The next topic often comes up with the missing big picture previously described. Development Teams, but also stakeholders, often complain that they cannot see the value in a Product Backlog item. This is problematic, as it remains unclear why something should be implemented. Without a clear understanding about why a piece of functionality is needed, it is difficult to deliver the optimal solution.
Avoiding this situation requires a capable and present Product Owner. Capable Product Owners are able to describe the overall value that is created through the product. They are able to define the top goals that need to be achieved in order to increase value. Present Product Owners are near enough to their Scrum Team and stakeholders to explain those value propositions. They are also there to repeat this message so that it sticks.
The value a Product Backlog item creates should be visible from the item itself. This can be the “so that I . . .” part of a User Story, where the user describes the purpose of the item or what he or she is trying to achieve. It can also be a visible and prominent set of goals for the product that are added to Product Backlog items. One of our customers had the five most important goals for the product written on a flipchart in the team room. For every Product Backlog item, the Product Owner specified the goal or goals this item would help achieve. If none of the goals would be supported by a particular Product Backlog item, a discussion clarified whether and why this item was needed.
Sprint Backlog Is More than a Task Board
This scene is quite typical for many Scrum Teams. The Development Team together with the Scrum Master work on the detailed planning of their work for the upcoming day. The discussion in the Daily Scrum seems useful, and yet, there are some potential hidden problems.
What we often see is that the Sprint Backlog is just a task board. And this, in itself, is not bad.
The Sprint Backlog makes visible all the work that the Development Team identifies as necessary to meet the Sprint Goal.
Yes, a task board creates visibility around the work a Development Team plans to execute. But where can we see the overarching goal the team is working on? A Sprint Backlog that is just a task board usually doesn’t make that visible.
A Sprint Backlog should also make the Sprint Goal prominently visible, and discussions around work should take the Sprint Goal into account. The discussions in the previous scene would then most probably have changed. People would have discussed their work and how it would help achieve the Sprint Goal.
The easiest way to have the Sprint Goal present during those discussions is to add it to the Sprint Backlog. For a physical backlog with paper on the wall, this is just a bigger piece of paper that contains the Sprint Goal. Most digital Sprint Backlog tools have a way to add meta information; some even have a way to store the Sprint Goal for a Sprint, which then can be shown on the Sprint Backlog.
By adding the Sprint Goal, the Development Team is able to fulfill the requirements on a Sprint Backlog from the Scrum Guide. The Sprint Backlog contains the Product Backlog items selected for this Sprint. It also describes a plan for delivering the product Increment and realizing the Sprint Goal. Thus, it talks about the why, the what, and the how of the Sprint. The why and what are represented by the Sprint Goal and the selected Product Backlog items. The plan for delivering these Product Backlog items, often described as tasks that people from the Development Team work on, describes the how.
By working toward a Sprint Goal, the Development Team can also adjust scope in a Sprint when unforeseen problems happen. They can then collaborate with the Product Owner and decide how to change the Sprint scope in order to still reach the Sprint Goal.
Who Should Update the Sprint Backlog?
Maybe you noticed this from the preceding scene: The Scrum Master updates the Sprint Backlog. Why does she do this? Isn’t the Development Team able to update its plan for doing the work in a Sprint? This is a pattern we still often see in Scrum Teams, especially when the Sprint Backlog is a way to report status (see “Sprint Backlog as Status Report”). So why is this a problem?
The Development Team owns the work in a Sprint. It is responsible for delivering releasable Increments of product. It is also responsible for creating and executing the plan to reach the Sprint Goal. It is a self-organized team that is able to do all of this.
If a Scrum Master updates the Development Team’s Sprint Backlog, this often shows that a Scrum Team has not yet been able to fully leave behind their old roles and behaviors. In a traditional project, a project manager usually assigns work packages to people. A project manager also follows up on the progress of these work packages and reports the status to management.
This takes away self-organization and leads to behavior typical of a command-and-control environment. Development Team members don’t really feel responsible for their work and consequently are unlikely to feel accountable for it.
The Sprint Backlog Should Not Be Hidden
At least our Development Team has a visible Sprint Backlog. Often, the problem starts where this visibility is missing. When a physical Sprint Backlog is hidden in a corner of a room nobody ever enters, the Scrum Team has lost an important opportunity to create transparency. For everyone outside the Scrum Team, the development work is a black box, completely invisible. Of course, this is also true for a digital Sprint Backlog that is only accessible to the Scrum Team.
Why is it important for ongoing work in a Sprint to be visible? Is it really necessary to update the people outside the Scrum Team about everything that is going on? We think so; it helps to create a shared understanding of what development work means. Having a visible and accessible Sprint Backlog has some positive side effects.
By making both progress and obstacles visible to everyone interested in the product, you are able to create trust and confidence. The stakeholders see what you are working on and what you are struggling with. They can understand the unforeseeable things that Development Teams have to cope with in a complex environment. Maybe they can even help the Development Team overcome problems. But they need to see the current progress in order to do so.
A visible Sprint Backlog also makes the Sprint Goal visible, which makes it easier to talk about the work the Development Team currently does. “I am working on the user interface in a form for our appointment workflow” might be difficult to understand for someone outside the Scrum Team. A Sprint Goal such as “This Sprint exists to improve the appointment workflow” is much clearer, as it addresses the business needs, not technical tasks.
Sprint Backlog as Status Report
The second developer expresses a very sophisticated view. Many Development Teams try to perfectly deliver their Sprint Plan forecast as frequently as they can. The interesting thing is that this would be a strong indicator that the work is not complex, but only complicated, which means predictable.
We have already briefly touched on the topic of Sprint Backlog as status report. Organizations coming from traditional project management often try to reach their forecasts. This is no wonder, as delivering on time, on scope, and on budget are typical performance measures for traditional project teams, and these traditional organizations often act as if the result and its quality is less important than time, scope, and budget. If the Sprint Backlog is treated as a status report to measure team performance, the team might, consciously or unconsciously, try to make the Sprint Backlog status report look good and take less care to deliver a releasable Increment of product by the end of the Sprint.
The Sprint Backlog is not a status report. It creates transparency into the work the Development Team does to reach a Sprint Goal. If things go smoothly, this will show in the work and, if the Development Team uses them, in the Sprint burndown charts. If the team discovers unforeseen problems and has to react, this will also be visible. The team can then either find another way of reaching its forecast or discuss and negotiate scope in order to still reach the Sprint Goal.
Work Burndown Is Rarely Perfect
The same pattern that leads organizations to view the Sprint Backlog as a status report often leads to perfect burndown charts. A burndown chart shows the amount of remaining work over time. For a Sprint Burndown, this typically means the remaining work on the different days of the Sprint. Every piece of work completed will “burn down” on the chart.
If a Development Team’s performance is measured against the “success” of its Sprints, this can lead to perfect burndown charts (see Figure 1.2). Success here typically means that the team is able to deliver everything that it has pulled from the Product Backlog and forecast during Sprint Planning.
It is possible to have this kind of burndown without anything being wrong. It is also possible to roll a pair of dice 50 times to produce the first 50 digits of the number Pi; it is just very unlikely. So, if this happens sometimes, as a Development Team, be happy and celebrate your good luck. If it happens often, then this is an important indicator that transparency is impeded.
A Sprint Burndown, like the Sprint Backlog, creates transparency around the work and progress toward the Sprint Goal. If transparency is lacking, the Development Team might not be able to correctly assess its current situation. Therefore, a burndown chart is not good or bad, it just is.
Preventing Sprint Backlog from Growing Stale
The opposite of a Sprint Backlog status report with a perfect burndown chart is a stale Sprint Backlog. This is a backlog that is created during Sprint Planning and then forgotten. Typically, toward the end of the Sprint, someone cleans up the board. This can be done by moving all the items into the “Done” column or by removing them from the board altogether.
A Sprint Backlog like this doesn’t create transparency and visibility. It is, in the language of lean, waste—wasted time and effort in creation and clean up.
A stale Sprint Backlog is like having a car dashboard that you never consult in order to adapt your driving: You won’t know how fast you are going, you won’t know if your oil light is flashing, and you won’t know if you need to shift gears (if you prefer manual transmission cars, as we Germans still do).
A stale Sprint Backlog (in our opinion) is worse than no Sprint Backlog at all. If a Sprint Backlog doesn’t exist, at least nobody relies on the information it shows. A stale Sprint Backlog does not simply reduce transparency, it shows false data.
The question we typically ask teams that don’t actively use their Sprint Backlog is, Why? We want to understand why the Sprint Backlog doesn’t provide value to them. And then we want to make the Sprint Backlog valuable (again).
If a Development Team has only specialist team members who do only their part of the work through the Sprint, the visibility of others’ work might not be useful. Those teams don’t collaborate, and they normally aren’t cross-functional enough. They focus on doing their tasks, not reaching a Sprint Goal. We try to help those teams become more cross-functional and learn how to collaborate toward a common goal.
Other teams that don’t actively use their Sprint Backlog work together so closely that they don’t see the benefit of transparency. Everybody on the team knows what’s going on at all times anyway. It helps those teams to understand that the Sprint Backlog is also valuable for people outside the Development Team.
Sometimes teams just use (or have to use) the wrong tool for their Sprint Backlog management. Teams working closely together often don’t see the point of using a digital tool to manage their Sprint Backlog. If management forces them to do so, they often neglect it. The same is true for a team that would like to use a digital Sprint Backlog and someone forces them instead to use sticky notes and pens.
As soon as you discover the reason why the Sprint Backlog is not used, it is usually fairly simple to reinstate its value.
Done Is Releasable
The most important artifact in Scrum is the releasable product Increment. It is the sole reason for all the work we put into Scrum. It provides us with transparency around our hypotheses. Were our assumptions correct? Do our customers and users want what we have to offer? And do they get value out of it?
These are questions that can’t be answered in a laboratory. Therefore, productive use of our product is indispensable. It closes the feedback loop to our customers and users and tells us where to concentrate our efforts next.
“Done” is a very important, if not the most important, idea in Scrum. “Done” means releasable, and releasable means everything that the Development Team needs to do in order to offer this product Increment for productive use is done. This typically includes testing and verification both inside the product and from the outside. It also includes the necessary amount of documentation for productive use. Releasable in a regulated environment might even mean special verification or testing against laws, norms, or an external audit.
Much of the innovation in software development in the past twenty years came from the idea that we need to be able to deliver releasable software in short iterations. If we look back to our typical customers in the early years after 2000, this was not taken for granted as much as it is today. Development cycles of several months were the norm, not the exception.
Other industries will probably follow and find their own strategies and tactics to be able to deliver incrementally, whatever their definition of “Done” is.
Measuring and Verifying Value in a Product
Transparency alone is not a goal, it is a precondition. You need transparent data to measure results and verify your hypotheses. But what should you measure, and how do you verify your assumptions?
Transparency is one precondition; goals are the other. The goals tell you against what to verify, and using the goals together with the data you collect, you can measure the right thing: your metrics. These topics are relevant for the Product Owner, as he or she is responsible for optimizing the value of the product.
To identify relevant metrics, a Product Owner should look at the product vision. The vision, with its quality goals,1 represents the highest-level assumptions and value propositions for a product. If usability and ergonomics are key quality goals, a Product Owner should find ways to measure them. This might be difficult, as those goals are often qualitative and perceived subjectively. It is necessary nonetheless.
You might need to ask your customers what they like about your product and what can be improved. Often, customers and users don’t know what they would like to have or why exactly they like this product over that. Consequently, you also have to monitor their usage of your products. You need to measure what features they use, when, and how. You need to deliver functionality in slightly different forms and measure which form is used more often or for longer periods.2
If you don’t find metrics that help you measure your quality goals to reach your product vision, you will fall back to metrics that are easy to collect and analyze. The problem is that they might not be helpful in validating your assumptions. Eric Ries, the author of The Lean Startup, calls them “vanity metrics.”
Vanity metrics are dangerous.
—Eric Ries, The Lean Startup
We talk more about metrics that help measure business value in Chapter 6, “Measure Success.”