Foreword
When we wrote the Manifesto for Agile Software Development, our supporters were a small minority trying to change an industry. Now, twenty years later, “agile” is mainstream. But I write “agile” in scare quotes for a reason—lots of people say they are doing agile software development, indeed most genuinely believe that, but their actions bear little resemblance to the vision we shared two decades ago.
The truth is that working in an Agile way requires a web of interconnected practices spanning both the management and the technical execution of software development work. Many of these practices, particularly the technical ones, are not well understood or widely taught. Consequently, too many languish with a distorted view of what can be such an effective way to build software products.
James Shore was one of the early pioneers, riding the trail of Extreme Programming, a central pillar of the Agile movement. His first edition of this book was a favorite of mine: a handbook for teams to show them what they needed to know to execute an agile process properly. He later went on to work with Diana Larsen to create the Agile Fluency Model—a model that captured their experiences of the different ways people can develop their skill in using Agile approaches. In this model, a simple application of project management techniques, often referred to as a basic Scrum approach, provides some value by focusing on customer needs but lacks the technical skills you need to unlock the high ...