From the Author
This book is called Learning Agile because we really want you to learn agile. We've spent the last 20+ years working with real teams building real software for real users day in and day out. We've also spent the last 10+ years writing books about building software (including two very successful books in the O'Reilly Head First series about managing projects and learning to code). This experience has helped us find many different ways to get complex and technical ideas into your brain without boring you to death.
We've done our best to take this material and make it as interesting and engaging as possible. We use narratives and illustrations, include key points and coaching tips, and answer many frequently asked questions that routinely come up when teams try to implement agile in the real world on their own teams—and all of these things can help you and your team learn agile quickly so that you can build and deliver better, more valuable software, and do it faster than before.
Who we wrote this book for
Do any of these scenarios describe you and your team?
You tried an agile practice, but it didn't really work out. Maybe you implemented daily standup meetings, and now your team meets every day--but you still get blindsided by problems and miss deadlines. Or you started writing user stories and reviewing them with your team and stakeholders, but your developers still find themselves dealing with just as many last-minute changes to add extra features that continue to pop up. Or maybe your team tried to go agile wholesale by adopting a methodology like Scrum or XP, but it seems somehow "empty"--like everyone is going through the "required" motions, but your projects are only marginally improving.
Or maybe you haven't tried agile yet, but you recognize that your team is facing serious challenges, and you don't know where to start. You're hoping that agile will help you with those demanding users who constantly change their minds. Each change your users make requires more work for your team, and leads to "duct tape and paperclips" spaghetti code solutions that make the software increasingly fragile and unmaintainable. It could be that your projects are simply controlled chaos; the primary way software is delivered is through long hours and personal heroics, and you think that agile may offer your team a way out.
What if you're an executive who's worried that teams working on important projects will fail to deliver? Maybe you've heard about agile, but you don't really know what it means. Can you simply tell your team to adopt agile? Or will you need to change your own mindset along with the team?
If any of those situations is familiar to you, and you want to improve how your team works, this book will help.
We explain the agile methodologies: why they're designed the way they are, what problems they address, and the values, principles, and ideas that they embody. By giving you the "why" in addition to the "how," we'll help you to recognize the principles that apply to the particular development problems specific to your team, company, and projects. And we'll show you how to use that information to guide your choice of methodologies and practices.
What we want for you:
- We want you to understand the ideas that drive effective agile teams, and the values and principles that bring them together.
- We want you to understand the most popular agile schools of thought--Scrum, XP, Lean, and Kanban--and how they can all be agile, even though they're very different from each other.
- We want to teach you specific agile practices that you can apply to your projects today--but we also want to give you the framework of values and principles that you'll need to implement them effectively.
- We want to help you understand your own team and company better, so that you can choose an agile approach that matches your mindset (or comes as close as possible)--but also help you and your team start to learn a new way of thinking that will help you become a more effective agile team.
From the Inside Flap
Praise for Learning Agile
Another amazing book by the team of Andrew and Jennifer. Their writing style is engaging, their mastery of all things agile is paramount, and their content is not only comprehensive, it's wonderfully actionable.
--Grady Booch, IBM Fellow
The biggest obstacle to overcome in building a high-performance agile team is not learning how, but learning why. Helping teams discover the why is the key to unlock their potential for greater commitment and more creative collaboration. With a focus on values and principles Andrew and Jennifer have provided an outstanding tool to help you and your team discover the why. I can't wait to share it.
--Todd Webb, Technical Product Leader at a global e-commerce company
As an engineer, I always thought the problems that Agile practices help to solve are a direct hit for the industry. As it turns out, becoming Agile is hard; it's more than just the practices. A piecemeal approach to Agile gives, as the the authors call it, "better-than-not- doing-it" results. If you are just getting started, or Agile is only "better-than-not-doing-it", Andrew and Jennifer have a lot of practical advice on how to read between the lines of the Agile Manifesto and really become Agile.
--James W Grenning, Founder of Wingman Software and co-author of the Agile Manifesto
If you want to learn about any of the specific approaches to agile, you need to read the specific relevant books. That means you know what you want to do in advance. Not very agile of you, is it? What Andrew and Jenny have done is create an approachable, relatable, understandable compendium of what agile is. You don't have to decide in advance what your agile approach is. You can read about all of them, and then decide. On your way, you can learn the system of agile and how it works.
--Johanna Rothman, Author and Consultant
About the Author
Andrew Stellman is a developer, architect, speaker, agile coach, project manager, and expert in building better software. He has over two decades of professional experience building software, and has architected large-scale real-time back end systems, managed large international software teams, been a Vice President at a major investment bank, and consulted for companies, schools, and corporations, including Microsoft, the National Bureau of Economic Research, Bank of America, Notre Dame, and MIT. He's had the privilege of working with some pretty amazing programmers during that time, and likes to think that he's learned a few things from them.
Jennifer Greene is an agile coach, development manager, business analyst, project manager, tester, speaker, and authority on software engineering practices and principles. She's been building software for over twenty years in many different domains including media, finance, and IT consulting. She's worked with teams of excellent developers and testers to tackle tough technical problems and focused her career on finding and fixing the habitual process issues that crop up along the way.
Andrew and Jennifer have been building software and writing about software engineering since 1998. They founded Stellman & Greene Consulting in 2003, and continue to work with software teams every day to build and deliver software to their users. Other O'Reilly titles they've written include Beautiful Teams, Head First C#, Head First PMP, and Applied Software Project Management.