Project Management

The Art of Guesstimation: Estimation on Software Projects

From the Disciplined Agile Applied Blog
by
This blog explores pragmatic agile and lean strategies for enterprise-class contexts.

About this Blog

RSS

Recent Posts

Data Technical Debt: 2022 Data Quality Survey Results

Is Technical Debt A Management Problem? Survey Says...

You Think Your Staff Wants to Go Back to the Office? Think Again.

Contracts, Procurement, Vendors, and Agile

Disciplined Agile 5.4 Released

Categories

#AgileBeyondIT, #ChoiceIsGood, ACP, agile, Agile Alliance, agile-manifesto, book, Business Agility, Certification, Choose your WoW, Conference, Context, Continuous Improvement, contracts, COVID-19, Data Management, database, DDJ, Disciplined Agile, Enterprise Agile, estimation, Fundamentals, Governance, GQM, guesstimation, http://disciplinedagiledelivery.com/principles/be-awesome/, India, information technology, Introduction, Kanban, lean, MANAGEIndia, math, MENA, Metrics, mindset, News, OKRs, Organization, People Management, Planning, PMO, Portfolio Management, Principle, Project Management, Quality, Ranged Estimates, Remote Work, Scrum, Security, skill, software, Surveys, Technical Debt, Technical debt, Terminology, Transformation, value stream, vendor management, VMO

Date

linkedin twitter facebook Request to reuse this  


This is the first of several blog postings that I'm going to write on the Art of Guesstimation.  I guesstimate that I'll be writing 7 +/- 2 postings on this subject, depending on how our conversation progresses and how I decide to divide the overall topic into blog postings (I currently have a plan but I suspect it will evolve based on feedback).  My eventual goal is a detailed article on the subject, likely sometime in February 2020.

 

Guesstimation?  

You've liked noticed that I have been using the term guesstimate rather than estimate.  This isn't a typo.

In early December I was in Las Vegas at SeminarsWorld co-teaching the inaugural Disciplined Agile Lean Scrum Master (DALSM) workshop with Al Shalloway.  One of the topics that we covered was Agile Estimation where I brought up the fact that estimates are often guesses, particularly in the IT space.  This was a bit of a shock for some students as it went against their project management belief system.  Interestingly one student had a story about they had recently had a conversation about this very issue with some of her stakeholders when they weren't given the "exact answer" as to the potential cost and schedule of an IT project they were about to embark upon. 

So let's move away from a belief-based discussion in favour of a fact-based discussion by seeing what the dictionary has to say on the subject.  Merriam Webster defines estimate as:

  1. The act of appraising or valuing 
  2. An opinion or judgement of the nature, character, or quality of a person or thing
  3. A rough or approximate calculation

So, particularly given 2 and 3, there is a bit of wiggle room in our estimates.  Now let's consider the definition of guesstimate, which has been a "real word" since 1923.  According to Merriam Webster, a guesstimate is an estimate usually made without adequate information.  Hmmm.... sounds a lot like the situation faced by most teams in the software space, doesn't it?

The traditional response to the problem of inadequate information is to perform detailed analysis and design early in a project.  In theory this should work, but it flies in the face of several unfortunate challenges faced by software teams:

  • Stakeholders are not very good at defining what they want when it comes to intangible things such as software, usually because they just don't know what they (don't) want until they see it (so work incrementally)
  • People change their minds when they do see it (so work collaboratively)
  • Their actual needs change over time, often due to changing conditions in their marketplace (so deliver quickly and often)
  • The solution space changes constantly, with new technologies and platforms emerging on a regular basis (so be technically adept)

None of these challenges are addressed well by detailed, up-front modelling and planning.  The unfortunate reality is that at the beginning of a software project, and I suspect for any project similarly focused on intangible things, the information that we will base our initial estimates on will be vague at best.  This tells us that in the early days of a software project we are clearly guesstimating.  As the project progresses our stakeholders have a better understanding of what they actually need and the team has a better understanding of how they're going to meet those needs.  The implication is that over time we can tighten up our guesstimates until we eventually find ourselves in a situation where the term "estimate" begins to become viable. 

 

Future Postings

Future postings in this series will focus on how estimates are really probability distributions, what we're really saying when we say "on time" or "on budget", why we should provide ranged guesstimates even though many people still want to hear "exact" estimates, truisms about guesstimation, and how Disciplined Agile (DA) improves upon Agile's classic burn down and burn up charts to provide ranged estimates.

 

 


Posted on: December 14, 2019 07:50 AM | Permalink

Comments (20)

Please login or join to subscribe to this item
avatar
Luis Branco CEO| Business Insight, Consultores de Gestão, Ldª Carcavelos, Lisboa, Portugal
Dear Scott
Interesting reflection on the topic
Thanks for sharing

You haven't published in a while.
Everything is fine with you?

Interestingly this article begins with an estimate: "I guesstimate that I'll be writing 7 /- 2 postings on this subject, depending on how our conversation progresses and how I decide to divide the overall topic into blog postings (I currently have a plan but I suspect it will evolve based on feedback). My eventual goal is a detailed article on the subject, likely sometime in February 2020."

The 4 points mentioned about the challenges facing software development teams are very important.

avatar
Sreepathi Ramireddygari IT Program Manager| Bethesda, Md, United States
Scott,

Yes, agreed with your views on guesstimate and real challenges we face in our PM world. Look forward for your future postings. Thank you.

avatar
Kiron Bondale Retired | Mentor| Retired Welland, Ontario, Canada
Can't wait to see how your "agile team of guesstimation posts" (7 /- 2 :-) ) evolves, Scott!

I've always taught students in my PM and agile courses that we don't know what a project will cost or when it will end till the very end. Until then, we are dealing with a cone of uncertainty which hopefully narrows with time.

avatar
Scott Ambler Consulting Methodologist| Ambysoft Inc. Toronto, Ontario, Canada
Luis, yes, everything is alright. I've been heads-down the past month or so with courseware development and delivery. But my work schedule is coming back to normal now.

I was hoping someone would notice that I started with an estimate. ;-)

Kiron, thanks! One of the topics I'll be covering in the series is how to convert get an estimation trend chart for agile teams. If the team is working in a healthy manner you get a cone. If it's not healthy then the trend chart is a complete mess - just like the team's situation.

avatar
Niels Malotaux Project Coach| N R Malotaux - Consultancy Medebach, Germany
I commented on Karl Wiegers' recent post (https://medium.com/swlh/six-estimation-safety-tips-6832b8f8c42a) on estimation:


First learn to estimate your own work. If you haven't learnt to estimate what you are going to do in the coming week, how can you estimate what time your team or project is going to take?

As Wiegers says, it’s a good idea to think how confident you are about your estimate. The less confident, apparently the less you have an idea about what the work will be all about, and you can think what to do about that.

However, ‘calculating’ min and max is superfluous, wasting time, pseudo-scientific, and even contra-productive. While coaching many people and teams I’ve learnt that if we estimate just one number, and compare that number with reality after the work, we can learn very quickly to estimate sufficiently accurately. If we blur the number with a range, the learning is almost non-existent, merely just to cover our asses, but not learning to improve.


So: Estimate your own work of the coming week, in chunks of max 6hr each, and learn at the end of the week from ‘sufficiently’ different results (don’t waste your time on small variations). If you’ve mastered that, you’ll see you’ve understood estimation so much better that you’re now up to larger chunks. See also www.malotaux.eu/weeklyplanning, which has a link to a booklet about this.

avatar
Venkat Kodanda Program Manager| CAPCO Bangalore, Karnataka, India
I believe every estimate happens to be a guesstimate of varying degree, except that it gets more accurate with experience of repetition of similar work / expertise on the work package itself.

Whenever I have used the word guesstimation, I have got those stares, as if I have not done my homework enough as a Project Manager. I have stopped using that term for sometime. I have tried to use another term , and it is ballpark figure/estimate. There would be queries then, asking me if I would followup on this and get back with better estimates later.

avatar
Sergio Luis Conte Helping to create solutions for everyone| Worldwide based Organizations Buenos Aires, Argentina
As you know this topic comes from long time ago. Barry Bohem has made the most consistent work, in my personal opinion, delivering things like "Cone of Uncertainty". I think that you can contribute a lot taking those ideas (it seems to me you are on that path) and help people to understand what an estimations is. the best guess based on the available information and the available time to estimate. Then, to understand that an inherent error is always present. But at the end, and tied to DAD, I think you can help people to understand that is a matter of attitude too, mainly when the result of estimations have to be published.

avatar
Niels Malotaux Project Coach| N R Malotaux - Consultancy Medebach, Germany
An 'exact' estimate based of complete knowledge is not an estimate. It's a prediction.
Just like a risk that with 0% or 100% certainty something is going to happen, is not a risk.

avatar
Scott Ambler Consulting Methodologist| Ambysoft Inc. Toronto, Ontario, Canada
Venkatachalapathy, the line between guesstimate and estimate is fuzzy, being determined by how much uncertainty your audience can handle. You hit the nail on the head with your story - if you're being told to come back with better estimates then their ability to handle uncertainty is less than you hope. Sadly, many people who are asking for more certainty than is appropriate will often prefer to be lied to rather than told the truth about the actual situation.

Sergio, yes, cone of uncertainty is coming. So are reference's to Boehm's extensive work in this field.

avatar
Niels Malotaux Project Coach| N R Malotaux - Consultancy Medebach, Germany
@"many people who are asking for more certainty than is appropriate will often prefer to be lied to rather than told the truth about the actual situation."

I used this example in my booklet#5 "Timeline.pdf' (see www.malotaux.eu/booklets):

“But they want more exact estimations!” Well, if you estimated the work to be between 800 and 1000 days of work, but they insist in a more exact number, give them any exact looking figure, like 893 days, or 1093 if you like. If that keeps them quiet, you don’t have to waste more time on determining a figure that isn’t exact anyway. Can I do that? Yes, you can. It saves you time you need for more important things. And we should spend our time only on the most important things, shouldn’t we?

avatar
Sergio Luis Conte Helping to create solutions for everyone| Worldwide based Organizations Buenos Aires, Argentina
Thank you Scott. In my personal opinion you have a great opportunity for making people to review a seminal item which is estimation. Good to bring to the table that in scence estimations are the best guess you can make in a point of time with the information you have on hand. The big problem for lot of people is forgetting estimations will alwys have a probability of error then they try to achieve certainty which is the the first mistake they make

avatar
Sergio Luis Conte Helping to create solutions for everyone| Worldwide based Organizations Buenos Aires, Argentina
@Niels: the problem with your approach is you are "throwing garbage under the carpet". Mainly because other thing people mostly forgotten is estimations are not static. We need to update it in a consistent way.

avatar
Niels Malotaux Project Coach| N R Malotaux - Consultancy Medebach, Germany
@"Mainly because other thing people mostly forgotten is estimations are not static. We need to update it in a consistent way."
Of course.

avatar
Drew Craig Sr. Agile & Product Coach| Vanguard Philadelphia, Pa, United States
Thanks, Scott. Should be an exciting series. We all love to talk about estimating :) Inherent in the name itself, estimate.

Spot on when we think about the rationale behind the estimate and the preception of such. That perception is an interesting paradigm. What is said is often not heard.

avatar
Scott Ambler Consulting Methodologist| Ambysoft Inc. Toronto, Ontario, Canada
@Neils, sadly people are often happy to be told something that is often ridiculous were they only to spend a few minutes thinking things through. Another strategy, as @Sergio suggests, is to educate people on the realities of estimation. Harder to do of course. My typical strategy is to start with a realistic range, then if people push back educate them on the realities of estimate, then, only if I have to, give them an unrealistic answer that they find palatable.

@Sergio, thanks. I agree, estimation is a critical topic that we often have unrealistic expectations of. I suspect that a lot of the management dysfunction that we see in practice is due to expectations that are misaligned with reality.

@Andrew, one of my planned blogs will focus on the delta between what is said and what is selectively heard.

avatar
Niels Malotaux Project Coach| N R Malotaux - Consultancy Medebach, Germany
@"My typical strategy is to start with a realistic range"
As you can see in my example, that's what I started with: "...between 800 and 1000 days of work..."
And as indicated in my first comment, I teach people how to handle estimation for their benefit. Estimation isn't a goal, we use it for various reasons, in the end to be successful in less time.
Once people get more confidence in their estimates, they're not afraid anymore to show them to others, live up to them, and, if that's (for a good reason) impossible, tell that way before a deadline rather than a week before.

avatar
Marcelo Espejo CEO| 8 Days Ciudad Jardin, Buenos Aires, Argentina
Great topic. This is a real issue when you need to quote a service to close a deal. Hardly customers feel comfortable with the idea of signing something that will have the real amount later

avatar
Junaid Sagheer Staff, Technical Program Manager| Walmart Global Tech Bentonville, AR, United States
Thank you for sharing your knowledge, It's an ideal platform to learn from you apart from learning about DA from www.disciplinedagiledelivery.com

avatar
Abolfazl Yousefi Darestani Manager, Quality and Continuous Improvement| Hörmann-TNR Industrial Doors Newmarket, Ontario, Canada
Perfect. THank you for sharing

avatar
SUKUMARAN SUBARAMANIYAN Senior Manager| Malaysia Rapid Transit Corporation Sdn Bhd Petaling Jaya, Selangor, Malaysia
Thanks for sharing and explaining the guesstimation.

Please Login/Register to leave a comment.

ADVERTISEMENTS

"The rule is perfect: In all matters of opinion, our adversaries are insane."

- Mark Twain

ADVERTISEMENT

Sponsors