Scrum is a framework for developing and sustaining complex products such as software. Scrum is just a set of rules, as defined in the Scrum Guide (https://scrumguides.org), and it describes the roles, events, and artifacts, as well as the rules that bind them together. When used correctly, this framework enables a team to address complex problems while productively and creatively delivering products of the highest possible value. Scrum is an Agile method. In fact, it is the most popular Agile method in use today.
Scrum employs an iterative and incremental approach to optimizing predictability and controlling risk. This is due to the empirical process control nature of Scrum. Through proper use of inspection, adaptation, and transparency, a Scrum Team can try a new way of doing something (an experiment) and gauge its usefulness after a short iteration. They can then collectively decide to embrace, extend, or drop the practice. This includes the tools a team uses and how they use them.
Combining Scrum with the tools found in Microsoft Azure DevOps is a powerful marriage. It is the purpose of this book to establish a baseline understanding of Scrum and how Scrum is supported in Azure DevOps. I will also illustrate which practices provide more value when executed without the use of tools. In addition, I will point out the tools that have been erroneously marketed as agile and contrast them with more preferred practices.
In software development, anything and everything can change in a moment’s notice. Healthy teams know this. They also know that continuously inspecting and adapting the way things are done is a way of life. High-performance Scrum Teams take this a step further. They know that within every impediment or dysfunction is an opportunity to learn and improve. Reading this book is a great first step.
This book will be of value to any member of a software development team that uses Scrum or is considering using Scrum. I primarily focus on the responsibilities and tasks of the developer (which in Scrum includes designers, architects, coders, testers, technical writers, etc.). Product Owners and Scrum Masters will also derive value from this book, as they will be using many of the same Azure DevOps tools to plan and manage their work and assess progress. Stakeholders, including customers, users, sponsors, and managers, will also gain value from this book, especially when they learn what they should and should not do according to the rules of Scrum and which tools in Azure DevOps support these rules.
This book primarily focuses on using Scrum for software products, mostly because that’s the target domain for Azure DevOps. Much of this book, however, is applicable beyond software development and IT projects. Since Scrum is a lightweight framework for developing adaptive solutions for all types of complex problems, the guidance in this book can apply to developing any kind of product, such as a service, a physical product, or something more abstract.
This book is intended for teams using Scrum and Azure DevOps together as they develop complex products, such as software. It won’t provide as much value for non-Scrum teams or Scrum teams developing products that are not complex. It won’t provide any value for teams running formal waterfall or sequential software development projects, except to hopefully change the minds of such proponents. Likewise, if a team is using Scrum but not yet using Azure DevOps, the bulk of the book won’t be very interesting, except to define and highlight Professional Scrum and point out what goodness those teams might be missing out on. This is also the case for teams using older versions of Team Foundation Server, which won’t contain the latest, high-value, team-based tools for planning and managing work and enabling team collaboration.
If you are looking for “best practices,” then you have the wrong book and the wrong author. I refuse to use that term because it implies a couple of wrong assumptions: (1) that this practice truly is “best” for all teams working on all products in all organizations, and (2) that a team can stop looking and experimenting once they’ve found that best practice. I prefer the term “proven practice” instead. Regardless of what you or I call it, this book is full of many practices for you and your team to consider on its improvement journey.
This book is divided into three sections, each of which focuses on a different aspect of the marriage of Professional Scrum and Azure DevOps. Part I, “Scrumdamentals,” sets a baseline understanding of the Scrum framework, Professional Scrum, Azure DevOps, and specifically the Azure Boards service. Part II, “Practicing Professional Scrum,” consists of several chapters detailing the practical application of how a Professional Scrum Team would use the relevant features of Azure DevOps to create and manage a Product Backlog, plan a Sprint, create a Sprint Backlog, and effectively collaborate during the Sprint. Part III, “Improving,” includes a chapter on defining and improving a Scrum Team’s flow, identifying common challenges and dysfunctions in order to remove them, and using techniques to continually improve your game of Scrum. There is also a chapter on how to improve at scale by adopting Scaled Professional Scrum using the Nexus scaled Scrum framework. By reading all sections sequentially, you will see how Azure DevOps and Scrum can be used together in an effective way and how a Scrum Team can evolve into a Professional Scrum Team and, further, into a high-performance Professional Scrum Team.
Throughout each chapter, I suggest and recommend many practices and patterns of working. I use terms like Professional Scrum Team and high-performance Scrum Team to differentiate from garden-variety Scrum Teams—those practicing mechanical Scrum without attention to inspection, adaptation, and improving. At times you may dismiss my guidance as “magical thinking” and assume that I don’t live in the real world. You may think that the ideas I propose won’t work for your team, with your people, in your organization. Although it’s true that I don’t know the specifics of your organization, I’m confident that improvement can be made regardless of the amount of friction you might face. I’ve seen it and hundreds of my Professional Scrum Trainer colleagues have, too. Keep in mind that my descriptions of these high-performance behaviors should be considered a vision or “perfection goal” of what your team can achieve. It will be hard. It will take time. It will take help. Ultimately it will be people like you who lead the improvement journey.
The different sections of Professional Scrum Development with Azure DevOps cover a range of topics. Depending on your needs and your existing understanding of Scrum, Azure DevOps, and the related practices, you may wish to focus on specific areas of the book. Use the following table to determine how best to proceed through the book.
If you are |
Follow these steps |
New to Scrum or have never heard of it |
Read the Scrum Guide and then read Chapter 1 |
New to Professional Scrum or have never heard of it |
Read Chapter 1 |
New to Azure DevOps or its suite of tools |
Read Chapter 2 |
New to the Azure Boards service or want to know how to create a custom, Professional Scrum process |
Read Chapter 3 |
Familiar with Scrum and Azure DevOps and only want to learn how to set up Azure DevOps for a Scrum Team |
Read Chapter 4 |
Familiar with Scrum and Azure DevOps and only want to learn how to plan a Sprint and create a Sprint Backlog |
Read Chapter 6 |
New to the concept of acceptance test-driven development and how to plan and track a Sprint using Azure Test Plans |
Read Chapter 7 |
New to the concept of flow or how a Scrum Team can use the Kanban board to visualize work and manage its flow |
Read Chapter 9 |
Facing common Scrum challenges and are interested in overcoming dysfunctional behavior |
Read Chapter 10 |
Facing a scaling situation where several Scrum Teams are collaborating to build a common product |
Read Chapter 11 |
This book presents information using conventions designed to make the information readable and easy to follow.
■ Screenshots from relevant Azure DevOps features are provided for your reference.
■ Boxed elements with labels such as “Note” or “Tip” provide additional information and guidance related to the subject.
■ Some notes and tips are practical guidance provided by fellow Professional Scrum Developers and Professional Scrum Trainers who have helped review this book.
In addition, I have included two additional boxed elements, one labeled “Smells” and the other labeled “Fabrikam Fiber Case Study.”
Smell Throughout this book, I point out specific situations and traps that a Scrum Team or its members should avoid. I refer to these as smells. These smells typically—but not always—indicate an underlying dysfunction or other unhealthy behavior. For teams new to Scrum, these smells may be hard to identify. Once they are brought to light, however, they should be mitigated and used as learning opportunities. As a team improves, it should be able to recognize dysfunction on its own, as well as remove it. Professional Scrum Teams have the ability to identify potential waste or dysfunction, evaluate the risks, and even decide to opt in to specific behaviors, including those that may be a smell to the uneducated.
Fabrikam Fiber Case Study
As you flip through the pages, you will read about Fabrikam Fiber as our case study. Fabrikam Fiber is a fictional broadband communications provider (think: Cox, Sparklight, Charter/Spectrum, Comcast, etc.). Fabrikam Fiber is a large corporation that provides services for multiple U.S. states. They also use an on-premises web application for their customer service representatives to create and manage tickets for customer support issues. The team has been using Scrum for some time and has recently moved to Azure DevOps. My opinions on healthy and unhealthy behaviors are made evident through the choices made by the Fabrikam Fiber Scrum Team.
Although this book does not contain any hands-on exercises, I encourage you to sign up for Azure DevOps Services in order to experiment and learn as you read. It takes only a few minutes to create an organization, and the first five users are free on the Basic Plan—which is more than adequate for you and some colleagues to use all the features mentioned in this book. Azure DevOps Services is a cloud-based SaaS offering delivering new features every three weeks, which means that the screenshots in this book may not match what you see in your browser.
In addition, you may want to download Visual Studio Community Edition or Visual Studio Code to explore how they connect to Azure DevOps and how they can be used for collaboration using Azure Boards and Azure Repos. Both of these products are free.
This book contains no code samples.
There are several people who helped me write this book. Thanks to: Loretta Yates for giving me another opportunity to write for Microsoft Press; Charvi Arora, Tracey Croom, Elizabeth Welch, Songlin Qiu, Vaishnavi Venkatesan and Donna Mulder for patiently reviewing my content and helping me get the styles right; Donis Marshall for inspiring me to write another book and giving me such direct (and valuable) feedback; Dan Hellem for answering scores of Azure Boards questions and reviewing chapters; Phil Japikse, Simon Reindl, Brian Randell, Ognjen Bajić, Ana Roje Ivančić, Martin Kulov, Cory Isakson, David Corbin, Charles Revell, Daniel Vacanti, and Christian Hassa for providing some great ideas and helping me sharpen the message; and Ken Schwaber and Jeff Sutherland for updating the Scrum Guide after I was almost done writing this book.
We’ve made every effort to ensure the accuracy of this book and its companion content. You can access updates to this book—in the form of a list of submitted errata and their related corrections—at:
MicrosoftPressStore.com/ProfScrumDevelopment/errata
If you discover an error that is not already listed, please submit it to us at the same page.
For additional book support and information, please visit www.MicrosoftPressStore.com/Support.
Please note that product support for Microsoft software and hardware is not offered through the previous addresses. For help with Microsoft software or hardware, go to http://support.microsoft.com.
Let’s keep the conversation going! We’re on Twitter: http://twitter.com/MicrosoftPress