|
|
From the Back Cover 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, www.XProgramming.com, author of Extreme Programming Installed (Addison-Wesley, 2001)
and Extreme Programming Adventures in C# (Microsoft Press, 2004)
|
|
p.xxix This book could have been called Estimating and Planning Agile Projects. Instead it's called
Agile Estimating and Planning. The difference may appear to be 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.
p.3 Estimating and planning are critical to the success of any... project of any size or consequence. Plans
guide our investment decisions: We might initiate a specific project if we estimate it to take [a certain period of time and
money] but would reject the same project if we thought it would take [a longer period of time and more money].
p.5 Planning - especially an ongoing iterative approach to planning - is a quest for value.
Planning is an attempt to find an optimal solution to the overall product development question: What should we build? To answer
this question, the team considers features, resources, and schedule. The question cannot be answered all at once. It must
be answered iteratively and incrementally.
p.8 A plan conveys expectations and describes one possibility of what may
come to pass... A good plan is one that stakeholders find sufficiently reliable that they can use it as the basis for making
decisions... This plan is useful - as long as it is somewhat predictive of what actually happens.
p.9 Plans...
are snapshots of how we believe a project might unfold over an uncertain future. Planning is an activity. Agile planning
shifts the emphasis from the plan to the planning. Agile planning balances the effort and investment in planning with the
knowledge that we will revise the plan through the course of the project. An agile plan is one that we are not only
willing, but also eager to change... we want to change because change means we've learned something or that we've avoided
a mistake... As we discover these things they affect our plans. This means we need plans that are easily
changed. This is why the planning becomes more important than the plan. The knowledge and insight we gain from planning
persists long after one plan is torn up and a revised one put in its place. So an agile plan is easy to change.
p.12
A critical problem with traditional approaches to planning is that they focus on the completion of activities rather than
on the delivery of features... Features are the unit of customer value. Planning should, therefore, be at the level of features,
not activities.
p.27 Ward Cunningham has said that "it's more planning what you want to learn, not what it
[the product] will be in the end" (Van Schooenderwoert 2004).
p.27 On an agile project, we don't know exactly
where the finish line is, but we often know we need to get to it or as close as we can by a known date. An agile project is
more like a timed race than a 10-kilometer race: run as far as possible in sixty minutes. In this way, the agile project
team knows when they will finish but not what they will deliver... planning becomes a process of setting and revising
goals that lead to a longer-term objective.
p.49 The more effort we put into something, the better the result. Right? Perhaps, but we often need to
expend just a fraction of that effort to get adequate results... We can often spend a little time thinking about an
estimate and come up with a number that is nearly as good as if we had spent a lot of time thinking about it.
p.50 no matter how much effort is invested, the estimate is never at the top of the accuracy axis [this
refers to a graph which shows that the accuracy of estimates generally improves over time to a certain limit, which is not
exceeded no matter how much additional time passes]. No matter how much effort you put into an estimate, an estimate
is still an estimate. No amount of additional effort will make an estimate perfect.
p.54 The three most common
techniques for estimating are
- Expert opinion
- Analogy
- Disaggregation
p.60 The amount of effort put into an estimate should be determined by the purpose of that estimate.
p.61 There's no sense in being precise when you don't even know what you are talking about. - John von Neuman
p.69
If you tell people where to go, but not how to get there, you'll be amazed at the results. - General George S. Patton
p.79
The indispensable first step to getting what you want is this: Decide what you want. - Ben Stein
p.82,83 On many projects, much of the overall effort is spent in the pursuit of new knowledge... Laufer (1996) refers to
these types of uncertainty as end uncertainty and means uncertainty... the agile approach to reducing uncertainty...
simultaneously reducing both end and means uncertainty.
p.91 As a general rule of thumb, when benefits are not quantified
at all, assume there aren't any - Tom DeMarco and Timothy Lister
p.145 It is a capital mistake to theorize before one
has data. - Sherlock Holmes, Scandal in Bohemia
p.177 It is better to be roughly right than precisely wrong. - John
Maynard Keynes
p.187 To be uncertain is to be uncomfortable, but to be certain is to be ridiculous. - Chinese proverb
p.227
Facts are better than dreams. - Winston Churchill
p.249 Having arrived at this point, we are well equipped to look at why agile estimating and planning are successful. First,
remember the purpose of estimating and planning. Planning is an attempt to find an optimal solution to the overall product
development question: features, resources, and schedule. Changing any one of these causes changes in the others. While
planning, we are exploring the entire spectrum of possible solutions of how to mix these three parameters such that
we create the best product possible. The estimates and plans that we create must be sufficient for serving as the basis for
decisions that will be made by the organization... One of the ways in which agile estimating and planning support
the efficient exploration of new product development solution space is through frequent replanning.
p.250 An agile estimating and planning process recognizes that our knowledge is always incomplete and requires
that plans be revised as we learn... For a plan to remain useful, this new knowledge needs to be incorporated into
the plan.
p.256 Whenever possible, ground your estimates and plans in reality... whenever possible, estimates and plans should be
based on real, observed values.
p.256 The purpose of agile planning is to discover iteratively an optimal solution to the overall product
development questions of which features with which resources in which timeline. An agile approach to estimating and
planning succeeds in finding such a solution because plans are made at different levels and replanning occurs frequently;
because plans are based on features rather than tasks; because size is estimated first and then duration is derived from the
size estimate;... because uncertainty is acknowledged and planned for.
|
|
|
|
|
|
|
|
Enter supporting content here
|
|
|
|