Estimation as uncertainty reduction: what is this estimation thing?
As important as estimation is to setting customer/stakeholder expectations and ultimately to paying the bills, there is surprisingly little discussion about what makes for a sound estimation strategy. There’s an assumption that estimation is something that good developers should be good at, with the unspoken corollary that failure to meet estimates is somehow the mark of an amateur. Once burned, developers push back that they lack specification. Backlog refinement meetings are scheduled. Time is set aside for technical planning, with expectations set, but often the cycle is repeated, leading to the question, what is this estimation thing?
Project managers and developers are routinely asked to estimate ambiguity, such as making a fixed bid against unknown business objectives, or having to make firm commitments against changing scope. Almost everything I read about software estimation isn’t really about estimation, but rather it is about process, and those are certainly important questions, because when we clarify what it needed, that will certainly help estimation. Still, it doesn’t tell us anything about what estimation actually is or how to do it.
We find resistance to estimation because of the belief in some organizations that their problem is somehow uniquely complex, and we find resistance because of the belief that influential factors are simply not subject to estimation. Let’s see if we can move past that.
Act I: Concept of Measurement
Act II: Methods of Measurement
Act III: Practical technique’s for improving estimates
The first part is focuses on the concept of measurement to clear up common misconceptions and focus thinking on a conception that opens up possibilities for meaningful estimates within the bounds of limited time.
The second part develops methods of measurement and how to apply different methods to various estimation scenarios, with a focus on a number of methods that are commonly misused in software estimation.
The final part walks through a number of specific techniques that can be applied in every day story estimation to validate and pressure-test estimates. The focus is on practical techniques which also help illustrate what we’re trying to get at in developing an improved sense of size.
Our goal is that attendees gain a better understanding how improved understanding of the concept, object and methods of estimation leads to a better understanding of the work, a key to sucessful outcome.
The 30 minute session walks through the above narrative succinctly with some examples. The 90 min covers the same conceptual space, allowing for more detailed exploration.
For the 90 min version, the first part “Concept of Measurement” is expanded
1.) with additional material developing the idea of range estimation, with discussion comparing discreet with range estimation in the context of example scenarios.
2.) the discussion of information entropy is expanded tie it back from the general example to a more specific example.
For the 90 min version, the second part “Method of Measurement” is expanded to include
1.) a more comprehensive discussion of Story Points and Fibonacci Sequence practices.
2.) a expansion on Nominal scale estimates to drive home the idea that story decomposition can be, in itself, an estimation practice.
3.) the discussion of estimation calibration is also given more room to breathe in the 90 min context, specifically in defining the format of questions used for calibration.
For the 90 min version, the third part, “Practical technique’s for improving estimates”, is expanded to more fully illustrate the techniques used and provide context with examples.