Agile Estimating And Planning by Mike CohnAgile Estimating And Planning by Mike Cohn

Agile Estimating And Planning

byMike Cohn

Paperback | November 1, 2005

Pricing and Purchase Info


Earn 300 plum® points

In stock online

Ships free on orders over $25

Not available in stores


Praise for Agile Estimating and Planning

"Traditional, deterministic approaches to planning and estimating simply don't cut it on the slippery slopes of today's dynamic, change-driven projects. Mike Cohn's breakthrough book gives us not only the philosophy, but also the guidelines and a proven set of tools that we need to succeed in planning, estimating, and scheduling projects with a high uncertainty factor. At the same time, the author never loses sight of the need to deliver business value to the customer each step of the way."

—Doug DeCarlo, author of eXtreme Project Management: Using Leadership, Principles and Tools to Deliver Value in the Face of Volatility (Jossey-Bass, 2004)

"We know how to build predictive plans and manage them. But building plans that only estimate the future and then embrace change, challenge most of our training and skills. In Agile Estimating and Planning , Mike Cohn once again fills a hole in the Agile practices, this time by showing us a workable approach to Agile estimating and planning. Mike delves into the nooks and crannies of the subject and anticipates many of the questions and nuances of this topic. Students of Agile processes will recognize that this book is truly about agility, bridging many of the practices between Scrum and ExtremeProgramming."

—Ken Schwaber, Scrum evangelist, Agile Alliance cofounder, and signatory to the Agile Manifesto

"In Agile Estimating and Planning , Mike Cohn has, for the first time, brought together most everything that the Agile community has learned about the subject. The book is clear, well organized, and a pleasant and valuable read. It goes into all the necessary detail, and at the same time keeps the reader's burden low. We can dig in as deeply as we need to, without too much detail before we need it. The book really brings together everything we have learned about Agile estimation and planning over the past decade. It will serve its readers well."

—Ron Jeffries,, author of Extreme Programming Installed (Addison-Wesley, 2001) and Extreme Programming Adventures in C# (Microsoft Press, 2004)

" Agile Estimating and Planning provides a view of planning that's balanced between theory and practice, and it is supported by enough concrete experiences to lend it credibility. I particularly like the quote 'planning is a quest for value.' It points to a new, more positive attitude toward planning that goes beyond the 'necessary evil' view that I sometimes hold."

—Kent Beck, author of Extreme Programming Explained, Second Edition (Addison-Wesley, 2005)

"Up-front planning is still the most critical part of software development. Agile software development requires Agile planning techniques. This book shows you how to employ Agile planning in a succinct, practical, and easy-to-follow manner."

—Adam Rogers, Ultimate Software

"Mike does a great follow-up to User Stories Applied by continuing to provide Agile teams with the practical approaches and techniques to increase agility. In this book, Mike provides time-proven and well-tested methods for being successful with the multiple levels of planning and estimating required by Agile. This book is the first to detail the disciplines of Agile estimating and planning, in ways that rival my 1980 civil engineering texts on CPM Planning and Estimating."

—Ryan Martens, President and Founder, Rally Software Development Corporation

"With insight and clarity, Mike Cohn shows how to effectively produce software of high business value. With Agile estimation and planning, you focus effort where it really counts, and continue to do so as circumstances change."

—Rick Mugridge, Rimu Research Ltd., and lead author, Fit for Developing Software (Prentice Hall, 2005)

"Finally! The groundbreaking book my clients have been clamoring for! Agile Estimating and Planning demystifies the process of defining, driving, and delivering great software that matters to the business. Mike's clarity, insight, and experience leap out through every page of this book, offering an approach that is relevant and immediately useful to all members of an Agile project."

—Kert D. Peterson, President, Enterprise Agile Group, LLC

"This isn't yet another generic book on Agile software development. Agile Estimating and Planning fills a gap left by most of the other books and gives you important, practical, down-to-earth techniques needed to be successful on Agile development projects."

—Steve Tockey, Principal Consultant, Construx Software

"Estimation, planning, and tracking is a trinity. If you don't do one of them, you don't need the other two. This book provides very practical knowledge for estimation, planning, prioritizing, and tracking. It should be compulsory subject matter for project managers and their teams, even if they hesitate to call themselves Agile."

—Niels Malotaux, Project Coach

"Effective planning is an important, but often misunderstood, part of any successful Agile project. With Agile Estimating and Planning , Mike Cohn has given us a definitive guide to a wide range of Agile estimating and planning practices. With his clear and practical style, Mike not only explains how to successfully get started planning an Agile project, but also provides a wealth of tips and advice for improving any team's Agile planning process. This book is a must-read for managers, coaches, and members of Agile teams."

—Paul Hodgetts, Agile coach and CEO, Agile Logic

"Mike's writing style captures the essence of agility-just the right amount of information to bring clarity to the reader. This book provides an excellent guide for all Agile practitioners, both seasoned and novice."

—Robert Holler, President and CEO, VersionOne, LLC

"It is as if Mike took the distilled knowledge regarding planning and estimation of a great Agile developer (which he is) and laid out all he knows in an easily understandable manner. More importantly, he has a great mix of concepts with real-world examples finished off with a case study so the reader can relate the information to their own situation. Unless you are already an expert Agile planner and estimator, this book is for you."

—Alan Shalloway, CEO, Senior Consultant, Net Objectives, and coauthor of Design Patterns Explained, Second Edition (Addison-Wesley, 2005)

"Although I had plenty of XP experience before trying out Mike Cohn's Agile planning practices, the effectiveness of the practical and proven techniques in this book blew me away! The book recognizes that people, not tools or processes, produce great software, and that teams benefit most by learning about their project and their product as they go. The examples in the book are concrete, easily grasped, and simply reek of common sense. This book will help teams (whether Agile or not) deliver more value, more often, and have fun doing it! Whether you're a manager or a programmer, a tester or a CEO, part of an Agile team, or just looking for a way to stamp out chaos and death marches, this book will guide you."

—Lisa Crispin, coauthor of Testing Extreme Programming (Addison-Wesley, 2003)

"Mike Cohn does an excellent job demonstrating how an Agile approach can address issues of risk and uncertainty in order to provide more meaningful estimates and plans for software projects."

—Todd Little, Senior Development Manager, Landmark Graphics

"Mike Cohn explains his approach to Agile planning, and shows how 'critical chain' thinking can be used to effectively buffer both schedule and features. As with User Stories Applied, this book is easy to read and grounded in real-world experience."

—Bill Wake, author of Refactoring Workbook (Addison-Wesley, 2003)

"Mike brings this book to life with real-world examples that help reveal how and why an Agile approach works for planning software development projects. This book has great breadth, ranging from the fundamentals of release planning to advanced topics such as financial aspects of prioritization. I can see this book becoming an invaluable aid to Agile project managers, as it provides a wealth of practical tips such as how to set iteration length and boot-strap velocity, and communicate progress."

—Rachel Davies, Independent Consultant

"There has been a need for a solid, pragmatic book on the long-term vision of an Agile Project for project managers. Agile Estimating and Planning addresses this need. It's not theory—this book contains project-tested practices that have been used on Agile projects. As Mike's test subjects, we applied these practices to the development of video games (one of the most unpredictable project environments you can imagine) with success."

—Clinton Keith, Chief Technical Officer, High Moon Studios

"When I first heard Mike Cohn speak, I was impressed by a rare combination of qualities: deep experience and understanding in modern iterative and Agile methods; a drive to find and validate easy, high-impact solutions beyond the status quo of traditional (usually ineffective) methods; and the passion and clarity of a natural coach. These qualities are evident in this wonderful, practical guide. I estimate you won't be disappointed in studying and applying his advice."

—Craig Larman, Chief Scientist, Valtech, and author of Applying UML and Patterns, Third Edition (Prentice Hall, 2005) and Agile and Iterative Development (Addison-Wesley, 2004)

" Agile Estimating and Planning is a critical guide on how to successfully provide value to customers of IT services. This book is filled with clear examples that are essential—from project team members to the executive level."

—Lou Thomas, Director, Applications Development, Farm Credit Services of America

"This work is deeply significant in that it articulates and details structured techniques to realize a simple, but profound insight—planning is an iterative quest for value, rather than a perfunctory scheduling of activities. Mike presents processes to converge on this value while reducing risk and uncertainty, supporting decision making, establishing trust, and conveying information. Agile methodologies have shifted the emphasis from plans to planning, but have glossed over many of the finer details of Agile planning. Now, very simply and accessibly, Mike demonstrates how it can be done."

—Sanjiv Augustine, Practice Director, Lean-Agile Consulting at CC Pace, and author of Managing Agile Projects (Prentice Hall, 2005)

"The techniques described in Agile Estimating and Planning have helped us tremendously with planning and managing our projects. It provides all you have ever wanted to know about Agile project management."

—Roman Pichler, Engineering Manager, Siemens Communications

"Mike Cohn presents a highly pragmatic and logical approach to making projects successful in a world beset by uncertainty and change. With his trademark clarity and directness, Mike cuts through the management mumbo jumbo to present practical techniques that can be put into use immediately. Put the odds squarely in your favor by making Mike Cohn the planning guru on your next big project."

—Pete Deemer, Vice President, Product Development, Yahoo!

"This book distills the fundamental ideas behind Agile estimating and planning, presenting them in a thoughtful and approachable manner. This is a 'must-have' book that presents clear, unambiguous, and practical advice for anyone who wants to successfully manage modern software development projects."

—Scott W. Ambler, President, Ambysoft Inc.

"How do your projects go? Frustrating changes? Uncertainty? Product missing both the mark and the deadline? With insight and clarity, Mike Cohn shows how to effectively produce software that is of high business value. With agile estimation and planning, you focus effort where it really counts, and continue to do so as circumstances change."

—Rick Mugridge, Rimu Research Ltd., and lead author of Fit for Developing Software

"We are true believers in the agile methods described in this book, and have experienced a substantially positive impact from their implementation and continued use. I would highly recommend this book to anyone who is interested in making their software development more practical and effective."

—Mark M. Gutrich, President and CEO, Fast 401k, Inc.

Detailed, Proven Techniques for Estimating and Planning Any Agile Project

Agile Estimating and Planning is the definitive, practical guide to estimating and planning agile projects. In this book, Agile Alliance cofounder Mike Cohn discusses the philosophy of agile estimating and planning and shows you exactly how to get the job done, with real-world examples and case studies.

Concepts are clearly illustrated and readers are guided, step by step, toward how to answer the following questions: What will we build? How big will it be? When must it be done? How much can I really complete by then? You will first learn what makes a good plan-and then what makes it agile.

Using the techniques in Agile Estimating and Planning , you can stay agile from start to finish, saving time, conserving resources, and accomplishing more. Highlights include:

  • Why conventional prescriptive planning fails and why agile planning works
  • How to estimate feature size using story points and ideal days—and when to use each
  • How and when to re-estimate
  • How to prioritize features using both financial and nonfinancial approaches
  • How to split large features into smaller, more manageable ones
  • How to plan iterations and predict your team's initial rate of progress
  • How to schedule projects that have unusually high uncertainty or schedule-related risk
  • How to estimate projects that will be worked on by multiple teams

Agile Estimating and Planning supports any agile, semiagile, or iterative process, including Scrum, XP, Feature-Driven Development, Crystal, Adaptive Software Development, DSDM, Unified Process, and many more. It will be an indispensable resource for every development manager, team leader, and team member.

Mike Cohn is the founder of Mountain Goat Software, a process and project management consultancy and training firm. With more than twenty years of experience, Mike has been a technology executive in companies ranging from start-ups to Fortune 40s, and is a founding member of the Agile Alliance. He frequently contributes to industry-re...
Title:Agile Estimating And PlanningFormat:PaperbackDimensions:368 pages, 9.2 × 7 × 0.8 inPublished:November 1, 2005Publisher:Pearson EducationLanguage:English

The following ISBNs are associated with this title:

ISBN - 10:0131479415

ISBN - 13:9780131479418


Rated 5 out of 5 by from Great Overview of Agile This book served as a great introduction to the Agile Methodology. It gave me a ton of small wins that I was able to apply the very next day to our project implementation process. I have asked each one of my executives to read it as well so that we can create a groundswell of momentum around this initiative. As a result of this book, we have left the waterfall approach behind and look forward to faster, cleaner and more profitable implementations in the future. 6 month Update - We have been using the techniques presented in this book for about half a year now and the results have been encouraging. It is easy to fall back into the old habits of waterfall though and that is where we've faltered as we got busy. You really need a strong Scrum Master and internal champion to make it work. The daily scrums have been a great addition to our methodology and we will often include the client in them at critical times. Pay special attention to the concepts of on-going testing and fully working software at the end of each sprint . That is where we have been weakest, once again saving the QA until the end and then finding all sorts of skeletons in the code at the eleventh hour.
Date published: 2010-02-14

Read from the Book

This book could have been called Estimating and Planning Agile Projects. Instead, it's called Agile Estimating and Planning. The difference may appear subtle, but it's not. The title makes it clear that the estimating and planning processes must themselves be agile. Without agile estimating and planning, we cannot have agile projects. The book is mostly about planning, which I view as answering the question of "What should we build and by when?" However, to answer questions about planning we must also address questions of estimating ("How big is this?") and scheduling ("When will this be done?" and "How much can I have by then?"). This book is organized in seven parts and twenty-three chapters. Each chapter ends with a summary of key points and with a set of discussion questions. Because estimating and planning are meant to be whole-team activities, one of the ways I hope this book will be read is by teams who meet perhaps weekly to discuss what they've read and the questions at the end of each chapter. Because agile software development is popular worldwide, I have tried to avoid writing an overly United States-centric book. To that end, I have used the universal currency symbol, writing amounts such as ¤500 instead of perhaps $500 or €500 and so on. Part I describes why planning is important, the problems we often encounter, and the goals of an agile approach. Chapter 1 begins the book by describing the purpose of planning, what makes a good plan, and what makes planning agile. The most important reasons why traditional approaches to estimating and planning lead to unsatisfactory results are described in Chapter 2. Finally, Chapter 3 begins with a brief recap of what agility means and then describes the high-level approach to agile estimating and planning taken by the rest of this book. The second part introduces a main tenet of estimating, that estimates of size and duration should be kept separate. Chapters 4 and 5 introduce story points and ideal days, two units appropriate for estimating the size of the features to be developed. Chapter 6 describes techniques for estimating in story points and ideal days, and includes a description of planning poker. Chapter 7 describes when and how to re-estimate, and Chapter 8 offers advice on choosing between story points and ideal days. Part III, "Planning for Value," offers advice on how a project team can make sure they are building the best possible product. Chapter 9 describes the mix of factors that need to be considered when prioritizing features. Chapter 10 presents an approach for modeling the financial return from a feature or feature set and how to compare financial returns so that the team works on the most valuable items first. Chapter 11 includes advice on how to assess and then prioritize the desirability of features to a product's users. Chapter 12 concludes this part with advice on how to split large features into smaller, more manageable ones. In Part IV, we shift our attention and focus on questions around scheduling a project. Chapter 13 begins by looking at the steps involved in scheduling a relatively simple, single-team project. Next, Chapter 14 looks at how to plan an iteration. Chapters 15 and 16 look at how to select an appropriate iteration length for the project and how to estimate a team's initial rate of progress. Chapter 17 looks in detail at how to schedule a project with either a high amount of uncertainty or a greater implication to being wrong about the schedule. This part concludes with Chapter 18, which describes the additional steps necessary in estimating and planning a project being worked on by multiple teams. Once a plan has been established, it must be communicated to the rest of the organization and the team's progress against it monitored. These are the topics of the three chapters of Part V. Chapter 19 looks specifically at monitoring the release plan, while Chapter 20 looks at monitoring the iteration plan. The final chapter in this part, Chapter 21, deals specifically with communicating about the plan and progress toward it. Chapter 22 is the lone chapter in Part VI. This chapter argues the case for why agile estimating and planning work and stands as a counterpart to Chapter 2, which describes why traditional approaches fail so often. Part VII, the final part, includes only one chapter. Chapter 23 is an extended case study that reasserts the main points of this book but does so in a fictional setting. 0131479415P10072005

Table of Contents

About the Author xvii

Foreword by Robert C. Martin xix

Foreword by Jim Highsmith xxi

Foreword by Gabrielle Benefield xxv

Acknowledgments xxvii

Introduction xxix

Part I: The Problem and the Goal 1

Chapter 1: The Purpose of Planning 3

Why Do It? 5

What Makes a Good Plan? 8

What Makes Planning Agile? 9

Summary 10

Discussion Questions 10

Chapter 2: Why Planning Fails 11

Planning Is by Activity Rather Than Feature 12

Multitasking Causes Further Delays 15

Features Are Not Developed by Priority 17

We Ignore Uncertainty 17

Estimates Become Commitments 18

Summary 18

Discussion Questions 19

Chapter 3: An Agile Approach 21

An Agile Approach to Projects 23

An Agile Approach to Planning 27

Summary 31

Discussion Questions 32

Part II: Estimating Size 33

Chapter 4: Estimating Size with Story Points 35

Story Points Are Relative 36

Velocity 38

Summary 40

Discussion Questions 41

Chapter 5: Estimating in Ideal Days 43

Ideal Time and Software Development 44

Ideal Days as a Measure of Size 46

One Estimate, Not Many 46

Summary 47

Discussion Questions 47

Chapter 6: Techniques for Estimating 49

Estimates Are Shared 51

The Estimation Scale 52

Deriving an Estimate 54

Planning Poker 56

Why Planning Poker Works 59

Summary 60

Discussion Questions 60

Chapter 7: Re-Estimating 61

Introducing the SwimStats Website 61

When Not to Re-Estimate 62

When to Re-Estimate 64

Re-Estimating Partially Completed Stories 66

The Purpose of Re-Estimating 67

Summary 67

Discussion Questions 67

Chapter 8: Choosing between Story Points and Ideal Days 69

Considerations Favoring Story Points 69

Considerations Favoring Ideal Days 72

Recommendation 73

Summary 74

Discussion Questions 75

Part III: Planning for Value 77

Chapter 9: Prioritizing Themes 79

Factors in Prioritization 80

Combining the Four Factors 86

Some Examples 86

Summary 88

Discussion Questions 89

Chapter 10: Financial Prioritization 91

Sources of Return 93

An Example: WebPayroll 96

Financial Measures 102

Comparing Returns 108

Summary 109

Discussion Questions 109

Chapter 11: Prioritizing Desirability 111

Kano Model of Customer Satisfaction 112

Relative Weighting: Another Approach 117

Summary 119

Discussion Questions 120

Chapter 12: Splitting User Stories 121

When to Split a User Story 121

Splitting across Data Boundaries 122

Splitting on Operational Boundaries 124

Removing Cross-Cutting Concerns 125

Don't Meet Performance Constraints 126

Split Stories of Mixed Priority 127

Don't Split a Story into Tasks 127

Avoid the Temptation of Related Changes 128

Combining Stories 128

Summary 129

Discussion Questions 129

Part IV: Scheduling 131

Chapter 13: Release Planning Essentials 133

The Release Plan 134

Updating the Release Plan 138

An Example 139

Summary 142

Discussion Questions 143

Chapter 14: Iteration Planning 145

Tasks Are Not Allocated During Iteration Planning 147

How Iteration and Release Planning Differ 148

Velocity-Driven Iteration Planning 149

Commitment-Driven Iteration Planning 158

My Recommendation 162

Relating Task Estimates to Story Points 163

Summary 165

Discussion Questions 166

Chapter 15: Selecting an Iteration Length 167

Factors in Selecting an Iteration Length 167

Making a Decision 171

Two Case Studies 173

Summary 175

Discussion Questions 176

Chapter 16: Estimating Velocity 177

Use Historical Values 178

Run an Iteration 179

Make a Forecast 181

Which Approach Should I Use? 185

Summary 186

Discussion Questions 186

Chapter 17: Buffering Plans for Uncertainty 187

Feature Buffers 188

Schedule Buffers 189

Combining Buffers 198

A Schedule Buffer Is Not Padding 199

Some Caveats 199

Summary 200

Discussion Questions 201

Chapter 18: Planning the Multiple-Team Project 203

Establishing a Common Basis for Estimates 204

Adding Detail to User Stories Sooner 205

Lookahead Planning 206

Incorporating Feeding Buffers into the Plan 208

But This Is So Much Work 210

Summary 210

Discussion Questions 211

Part V: Tracking and Communicating 213

Chapter 19: Monitoring the Release Plan 215

Tracking the Release 216

Release Burndown Charts 219

A Parking-Lot Chart 224

Summary 225

Discussion Questions 226

Chapter 20: Monitoring the Iteration Plan 227

The Task Board 227

Iteration Burndown Charts 230

Tracking Effort Expended 231

Individual Velocity 232

Summary 232

Discussion Questions 233

Chapter 21: Communicating about Plans 235

Communicating the Plan 237

Communicating Progress 238

An End-of-Iteration Summary 241

Summary 244

Discussion Questions 245

Part VI: Why Agile Planning Works 247

Chapter 22: Why Agile Planning Works 249

Replanning Occurs Frequently 249

Estimates of Size and Duration Are Separated 250

Plans Are Made at Different Levels 251

Plans Are Based on Features, Not Tasks 252

Small Stories Keep Work Flowing 252

Work in Process Is Eliminated Every Iteration 252

Tracking Is at the Team Level 253

Uncertainty Is Acknowledged and Planned For 253

A Dozen Guidelines for Agile Estimating and Planning 254

Summary 256

Discussion Questions 257

Part VII: A Case Study 259

Chapter 23: A Case Study: Bomb Shelter Studios 261

Day 1—Monday Morning 262

Estimating the User Stories 270

Preparing for Product Research 281

Iteration and Release Planning, Round 1 284

Two Weeks Later 302

Planning the Second Iteration 303

Two Weeks Later 305

Revising the Release Plan 305

Presenting the Revised Plan to Phil 308

Eighteen Weeks Later 312

Reference List 313

Index 319