Agile Estimating and Planning, 1st edition

Published by Pearson (November 1, 2005) © 2006

  • Mike Cohn
$45.59

  • A print text (hardcover or paperback) 
  • Free shipping
  • Also available for purchase as an ebook from all major ebook resellers, including InformIT.com

The first step to project success is accurate estimating and realistic planning.

Projects with unrealistic expectations affixed to them are likely to derail at an

early stage. This book shows the software practitioner how to effectively

estimate and properly plan a project within an agile context. The book's

content is suitable for projects using any agile or semi-agile process (such as

Extreme Programming, Scrum, Feature Driven Development, Crystal,

Adaptive Software Development, DSDM or even the IBM Rational Unified

Process). The ideas in this book will work with any iterative development

process, which greatly broadens the target audience beyond the traditional agile

community. Each chapter is supported by a summary and a set of questions

that allows readers to assess their ability to estimate and plan a project. The

result is an engaging read with pearls of wisdom that can be applied to the

reader's next project.

Goes beyond the strategy of just enough planning and estimating, and shows readers how to make agile practices truly work organizationally.

° Save time, conserve organizational resources, and manage software projects more efficiently by learning to anticipate future needs

° Key points are supported by case studies derived from real-world projects

° Teaches the nuts and bolts of estimating a project, an iteration, or even a task -- and teaches a variety of approaches to effective estimating

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

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-related magazines and presents regularly at conferences. He is the author of User Stories Applied (Addison-Wesley, 2004).

Need help? Get in touch

Video
Play
Privacy and cookies
By watching, you agree Pearson can share your viewership data for marketing and analytics for one year, revocable by deleting your cookies.

Pearson eTextbook: What’s on the inside just might surprise you

They say you can’t judge a book by its cover. It’s the same with your students. Meet each one right where they are with an engaging, interactive, personalized learning experience that goes beyond the textbook to fit any schedule, any budget, and any lifestyle.Â