The Spirit of Scrum
The Spirit of Scrum
James O. Coplien
Mark den Hollander
and The Scrum Patterns Group:
Esther Vervloed, Neil Harrison, Kiro Harada, Joseph Yoder, June Kim, Alan O'Callaghan, Mike Beedle, Gertrud Bjørnvig, Dina Friis, Ville Reijonen, Gabrielle Benefield, Jens Østergaard, Veli-Pekka Eloranta, Evan Leonard, Ademar Aguiar
This edition first published 2019
© 2019 Pragmatic Press.
Pragmatic Bookshelf, Address, Raleigh, North Carolina
For the details of our global editorial offices, for customer services and for information about how to apply for permission to reuse the copyright material in this book please see our website at www.pragprog.com.
The right of the authors to be identified as the authors of this work has been asserted in accordance with [some relevant law].
The copyright grants the right to copy material verbatim from this book for both commercial and non-commercial use, subject to proper citation and the inclusion of this copyright notice, as supporting material included in a larger work. Reproduction in any form of more than 60% of more than 10 patterns requires prior written permission
Pragmatic Bookshelf also publishes its books in a variety of electronic formats. Some content that appears in print may not be available in electronic books.
Designations used by companies to distinguish their products are often claimed as trademarks. All brand names and product names used in this book are trade names, service marks, trademarks or registered trademarks of their respective owners. The publisher is not associated with any product or vendor mentioned in this book. This publication is designed to provide accurate and authoritative information in regard to the subject matter covered. It is sold on the understanding that the publisher is not engaged in rendering professional services. If professional advice or other expert assistance is required, the services of a competent professional should be sought.
A catalog record for this book is available from the Library of Congress
Typeset in 11 / 13 Palatino by Some Oursourced Typesetter.
Printed in Antarctica by Penguin Printers, PPP
This chapter will set you on your path in three ways:
We will help you broaden your understanding of Scrum in a way that will attune your intuition to what patterns are. It will also make clear that this is a book about broad experience with people and about how you can benefit by tailoring those organizational building blocks to your situation. It’s not a book of rules and absolutes that you can follow blindly. And we do that, too, with a pattern.
We will describe Scrum in terms of its two large-scale structures: the organization that builds a product, and the Value Stream along which the product flows. Each of these is a Whole, a designed thing in its own right. A pattern language guides us one step at a time as we build such a Whole. This book presents two pattern languages, one for each of two conceptual Wholes, that provide expert and proven guidance as you build your Scrum organization.
This chapter introduces you to the very first pattern, The Spirit of the Game, which stands at the head of each pattern language. It sets the stage for all remaining patterns. Even more important, we hope that this chapter and The Spirit of the Game will give you newfound insight on how to think about this book, how to use it, and on how to use Scrum. Think of Scrum as a game we play. As with most games, it can be a wonderful form of engagement if its players appreciate both the discipline and freedom that help them create value. Most of the patterns in the book suggest organizational changes that work that way. But at a deeper level, you should approach the art of building or growing your organization as a game as well. We find that one does well to approach patterns somewhat playfully, with hope of realizing each one’s benefit and with a degree of comfort to adopt each one’s disciplines. Your exploration is more like serious play than a regimented game, and much of your inquiry will relate more to common sense than to following the rules. You may explore what Done means to you (see Definition of Done), how long a Sprint should be, how many people should be on your team, and a thousand other considerations. Engagement with the game is about trying things out, assessing the result, and proceeding accordingly. It may mean saying “no” to some patterns. But if you say “no” out of fear or discomfort rather than from a posture of great expectation, or if you say “no” to stay in line with what some rule book says, you may not yet have the proper grounding to take such work forward. We’re going to try to help you here up front to get off on the right foot.
Poorly played, “People Building Something Together” is a game that our team or our company tries to win. In the larger scheme of things, Scrum is a game that never ends. Our company and our competitors may take turns in the lead as each one innovates new features, paths to market, or other increments of value to society. Played this way in the long term, we lift the quality of life of the entire community. Getting there in a complex world is about being in touch with that world, inspecting at every step and innovating as a community to do the right thing in the moment. That’s where we start, and it is in that sense that the first pattern underlies the rest. A good pattern stands on its own, and we’ll let the pattern explain itself.
This chapter describes the patterns that you can use to build your Scrum Team and the other associations of people and loci of relationships that are common to Scrum practice. The Product Organization is one major Whole to which you must attend when introducing Scrum; the other one is the Value Stream Pattern Language. You build your organization and your process in parallel, each a little at a time, weaving together patterns from both chapters.
The above figure shows the relationships between the patterns in this chapter. We apply patterns one at a time, and the figure is a guide for the order in which we should apply them. This structure is called a pattern language, because just as a language like English describes how we can sequence words in meaningful ways, this graph describes meaningful pattern sequences. More precisely, it is called a generative pattern language because it generates “sentences” that are combinations of patterns that powerfully reinforce each other.
Each node of the graph is a pattern, and the lines between patterns depict ordering dependencies between them. The graph therefore shows, for each pattern, the patterns above it, which you should already have considered before applying any given pattern, and the ones below it, which are candidates for next steps once you have put the current one in place. Of course, instead of just forging ahead you can jump to another place in the graph and add a pattern that refines some other pattern you had applied earlier. One pattern is said to refine another (or to refine several other patterns) or, the other way around, one pattern is said to contain one or more other patterns. So The Spirit of the Game refines The Mist, and Conway’s Law contains Scrum Team.
There are of course almost countless ways to sequence the patterns, each sequence giving rise to a Scrum organization with a slightly different character. Though you should challenge yourself by considering most of the patterns in this book, you don’t have to use all of them. You will usually pick the patterns that catch your eye and then organize them into a sequence using the graph as a guide. But the dependencies aren’t strict and we encourage you to engage your insight and intuition as you apply the patterns. Of course, it is O.K. to change your mind along the way.
In the next section we present a kind of canonical or default sequence for the major patterns in the Product Organization Pattern Language. But, again, use your insight and intuition rather than following the sequence as a mandate. You know more about your organization and your situation than we do.
Whereas the Product Organization Pattern Language builds the relationships between the people and teams in a Scrum organization, the Value Stream Pattern Language builds relationships between steps of product construction, and the artifacts that represent parts of the process. The Scrum Team builds the Value Stream to frame out the overall rhythms and activities of development. Value generally flows from the Vision into the Product Backlog, and from there into the Sprint Backlog and eventually into the Product Increment. Many other patterns refine these larger Value Stream components along the way.
The picture below is the pattern language graph for the Value Stream Pattern Language, and shows the dependencies between the language’s patterns. We described how to use a pattern language graph in the first section of the Product Organization Pattern Language.