Saturday 14 February 2009

Basic Software Estimation Concepts

In one of my recent posts I was writing that single point estimates are meaningless. In this post I would like to carry on with this topic and talk about a few other fundamental concepts for software estimation based on Steve McConnell's "Software Estimation: Demystifying the Black Art".

One of the most important things is to know the difference between estimates, targets and commitments.
While a target is a description of a desirable business objective, a commitment is a promise to deliver defined functionality at a specific level of quality by a certain date. A commitment can be the same as the estimate, or it can be more aggressive or more conservative than the estimate. In other words, do not assume that the commitment has to be the same as the estimate; it doesn't.
It's quite typical situation when developers are asked to estimate new project or piece of functionality for which deadline is already set. You have to know if you are really asked to provide estimates or to figure our how to meet a deadline. Those are two totally different things. Estimation should be unbiased therefore deadline doesn't matter. If deadline matters then you are, in fact, asked to provide a plan in which goal is to deliver before the deadline.

Single point estimates are meaningless
, estimations should always be represented as a range -- the best and the worst scenario. Don't estimate only at the beginning of a project. At every stage estimates can be useful and they can show that project goal is in danger.
Once we make an estimate and, on the basis of that estimate, make a commitment to deliver functionality and quality by a particular date, then we control the project to meet the target. Typical project control activities include removing non-critical requirements, redefining requirements, replacing less-experienced staff with more-experienced staff, and so on
Controlling the project include dealing with changing requirements. But with new requirements estimations also change and after a few iterations your target is to deliver something radically different then it was estimated at the very beginning. How can you say then if initial estimates were accurate?

In practice, if we deliver a project with about the level of functionality intended, using about the level of resources planned, in about the time frame targeted, then we typically say that the project "met its estimates," despite all the analytical impurities implicit in that statement.

If it's well known that assumptions will change, functionality will change then what is the real purpose of estimates?

The primary purpose of software estimation is not to predict a project's outcome; it is to determine whether a project's targets are realistic enough to allow the project to be controlled to meet them.

Important implication is that gap between estimates and actual times has to be small enough to be manageable. According to book, 20% is the limit which can be controlled.

Estimates don't need to be perfectly accurate as much as they need to be useful. When we have the combination of accurate estimates, good target setting, and good planning and control, we can end up with project results that are close to the "estimates."

That takes us to a definition of "good estimate"
A good estimate is an estimate that provides a clear enough view of the project reality to allow the project leadership to make good decisions about how to control the project to hit its targets.
All of that and much more can be found in the book, it's worth reading.

85 comments:

poona said...


Heya¡­my very first comment on your site. ,I have been reading your blog for a while and thought I would completely pop in and drop a friendly note.
Software Estimation Techniques

Unknown said...

We are the reputed placement training institute in Chennai offering quality education to all our students’ at most competitive price in the market. Join us to be aspiring professionals in top MNCs.
Placement Training Institute in Chennai

Unknown said...

Thanks for sharing this informative blog. If anyone wants to get Hadoop Training in Chennai visit fita academy located at Chennai, which offers best Big Data Training in Chennai with years of experienced professionals.

Stephen said...

Hello, nice article on basic software estimation, this would be useful for me to train myself in Hadoop Training Chennai

Unknown said...

Your blog is really useful for me. Thanks for sharing this informative blog. If anyone wants to get real time Oracle Training in Chennai reach FITA located at Chennai. They give professional and job oriented training for all students.

Unknown said...

Thanks for sharing the wonderful article on basic software estimation, this cleared all my myths about hadoop and helped in finding the best Hadoop Training in Chennai

Unknown said...

Hi I am Victoria lives in Chennai. I am a technology freak. Recently I did Java Training in Chennai at a leading Java Institutes in Chennai. This is really helpful for me to make a bright carrer in IT industry.

Unknown said...

Hi I am Victoria lives in Chennai. I am a technology freak. Recently I did Java Course in Chennai at a leading Java Training Institutes in Chennai. This is really helpful for me to make a bright carrer in IT industry.

Unknown said...

Thanks for sharing this informative blog..If anyone wants to get SAP ABAP Training in Chennai, please visit FITA Academy located at Chennai, rated as No.1 SAP Training Center in Chennai.


Unknown said...

Best Dot Net Training in Chennai

Thanks for your wonderful post.It is really very helpful for us and I have gathered some important information from this blog.If anyone wants to get Dot Net Training in Chennai reach FITA, rated as No.1 Dot Net Training Institutes in Chennai.

Dot Net Course in Chennai


Anonymous said...

Software Testing Training in Chennai

I have read your blog and i got a very useful and knowledgeable information from your blog.its really a very nice article. I did Loadrunner Training in Chennai. This is really useful for me. Suppose if anyone interested to learn Manual Testing Training in Chennai reach FITA academy located at Chennai Velachery.

Unknown said...

Salesforce Training

The information you posted here is useful to make my career better keep updates..I did Salesforce Training in Chennai at FITA academy. Its really useful for me to make bright future in IT industry.

Salesforce Developer Training in Chennai

Salesforce Administrator Training in Chennai

Salesforce.com Training in Chennai

Sales Cloud Consultant Training in Chennai

Unknown said...

Oracle Training Chennai

I get a lot of great information from this blog. Recently I did oracle certification course at a leading academy. If anyone interested to learn best Oracle Course in Chennai visit FITA academy which offer SQL Training in Chennai.

Regards...

Oracle Training in Chennai

Unknown said...

QTP Training Chennai

Hi, I wish to be a regular contributor of your blog. I have read your blog. Your information is really useful for beginner. I did Testing Training in Chennai at Fita training and placement academy which offer best Software Testing Training in Chennai with years of experienced professionals. This is really useful for me to make a bright career.

Regards...

Software Testing Training Institutes in Chennai

Unknown said...

I have read your blog it was nice to follow even I am looking for your future updates. Hadoop is a highly growing & scoopful technology in IT market it’s an open-source software framework for managing big data in a distributed fashion on large commodity computing hardware. FITA provides Hadoop training chennai get in to fita and out with your career.
Hadoop training in chennai | Hadoop courses in Chennai | Hadoop institutes in Chennai

Anonymous said...

Cloud Computing Training

I have read your blog and i got a very useful and knowledgeable information from your blog.its really a very nice article.You have done a great job . If anyone want to get real time Cloud Computing Course in Chennai, Please visit FITA academy located at Chennai Velachery which offer best Cloud Computing Training in Chennai.

Unknown said...

Oracle Training Center in Chennai

I get a lot of great information from this blog. Recently I did oracle certification course at a leading academy. If anyone interested to learn best Oracle Course in Chennai visit FITA academy which offer SQL Training in Chennai.

Regards...

Oracle Training Institutes in Chennai | Oracle Course in Chennai

Unknown said...

This is extremely helpful info!! Very good work. Everything is very interesting to learn and easy to undestood. Thank you for giving information.html5 Training in chennai | html5 Training chennai | html5 course in chennai | html5 course chennai

surangacloud said...

Thanks for sharing this valuable information to our vision. You have posted a trust worthy blog keep sharing. AWS course chennai | AWS certification in chennai | AWS cerfication chennai

Unknown said...

Hi, I am Jackson from Chennai. I am technology freak. I did Hadoop Training in Chennai at FITA. This is useful for me to make a bright career in IT field.


Unknown said...

Hi friends,This is Johnson from Chennai.Thanks for sharing this informative blog. I did Unix certification course in Chennai at Fita academy. This is really useful for me to make a bright career.
Regards..
Unix Training

Stephen said...

There are lots of information about latest technology and how to get trained in them, like Big Data Training in Chennai have spread around the web, but this is a unique one according to me. The strategy you have updated here will make me to get trained in future technologies(Big Data Training). By the way you are running a great blog. Thanks for sharing this. cloud computing training in chennai

Boss Tents said...

Thank you for sharing your positive feedback with us!

Manufacturers of Tents Tents South Africa Tents for sale Tents Manufacturers Tents South Africa Alpine Tents Aluminium Tents Alpine Marquee Plastic Chair

Unknown said...

Hi this is Yasmin from Chennai. I am regular contributor of
your blog. You have done really great job. Thanks for sharing this informative
post. Keep blogging.
Regards

Oracle Apps Training in Chennai | Oracle Apps Training in Chennai

Unknown said...

Hi, I am really happy to found such a helpful and fascinating post that is written in well manner. Thanks for sharing such an informative post.
Regards..
QTP Training in Chennai

Unknown said...

Superb explanation & it's too clear to understand the concept as well, keep sharing admin with some updated information with right examples.
Regards,

Hadoop Training in Chennai|Big Data Training in Chennai|Fita Chennai reviews

Valves and Flanges Exporter said...

Great post!!

Valves and Flanges | Flanges Manufacturer | Flanges Exporter | Falcon Engineers

Unknown said...

I am a fond of graphic designing and always keep searching the new ideas about it. thanks for sharing about this topic telephony applications

arumugam said...

Hi,Thanks a lot and really happy to see such a wonderful comment.

ISTQB Training Institute in Chennai

Venkatesh Krishna said...

goDigitally Thanks for the insightful article

Unknown said...

I wish to show thanks to you just for bailing me out of this particular trouble.As a result of checking through the net and meeting techniques that were not productive, I thought my life was done.

Amazon Web Services Training in Chennai


Best Java Training Institute Chennai

ciitnoida said...

Ciitnoida provides Core and java training institute in

noida
. We have a team of experienced Java professionals who help our students learn Java with the help of Live Base Projects. The object-

oriented, java training in noida , class-based build

of Java has made it one of most popular programming languages and the demand of professionals with certification in Advance Java training is at an

all-time high not just in India but foreign countries too.

By helping our students understand the fundamentals and Advance concepts of Java, we prepare them for a successful programming career. With over 13

years of sound experience, we have successfully trained hundreds of students in Noida and have been able to turn ourselves into an institute for best

Java training in Noida.

java training institute in noida
java training in noida
best java training institute in noida
java coaching in noida
java institute in noida

Anonymous said...


Nice information about test automation tools my sincere thanks for sharing post Please continue to share this post.

sap abap online training india

IT Tutorials said...

Thanks for your article. Hadoop training in chennai | Hadoop Training institute in chennai

IT Tutorials said...


Thanks for your article. Hadoop training in chennai | Hadoop Training institute in chennai

Unknown said...

This is most informative and also this post most user friendly and super navigation to all posts... Thank you so much for giving this information to me.. 
python training in omr

python training in annanagar | python training in chennai

python training in marathahalli | python training in btm layout

python training in rajaji nagar | python training in jayanagar

simbu said...

It seems you are so busy in last month. The detail you shared about your work and it is really impressive that's why i am waiting for your post because i get the new ideas over here and you really write so well.
java training in omr

java training in annanagar | java training in chennai

java training in marathahalli | java training in btm layout

java training in rajaji nagar | java training in jayanagar

Unknown said...

Nice post. By reading your blog, i get inspired and this provides some useful information. Thank you for posting this exclusive post for our vision. 

rpa training in Chennai

rpa training in velachery

rpa training in tambaram

rpa training in sholinganallur

rpa training in Chennai

rpa training in pune

rpa online training

rpa training in bangalore

shalinipriya said...

Wonderful article, very useful and well explanation. Your post is extremely incredible. I will refer this to my candidates...

Data Science Training in Chennai
Data science training in bangalore
Data science online training
Data science training in pune
Data science training in kalyan nagar
selenium training in chennai

Saro said...

Inspiring writings and I greatly admired what you have to say , I hope you continue to provide new ideas for us all and greetings success always for you..Keep update more information..


rpa training in anna nagar |

rpa training in marathahalli

rpa training in btm

rpa training in kalyan nagar

rpa training in electronic city

rpa training in chennai

rpa online training

selenium training in training

Mounika said...

The knowledge of technology you have been sharing thorough this post is very much helpful to develop new idea. here by i also want to share this.
python online training
python training in OMR
python training in tambaram

sunshineprofe said...

He always kept chatting about this. I will forward this page to him. Fairly certain he will have a good read. Thank you for sharing.
safety courses in chennai

Unknown said...

Great!it is really nice blog information.after a long time i have grow through such kind of ideas.thanks for share your thoughts with us.
Android Courses in OMR
Android Training Institutes in T nagar
Best Android Training Institute in Anna nagar
android app development course in bangalore

Ishu Sathya said...

Such an interesting content I have never come across like this
selenium testing course in chennai
selenium course
selenium testing training in chennai
best selenium training center in chennai
Selenium Training in Chennai
iOS Training in Chennai
French Classes in Chennai
Big Data Training in Chennai
web designing training in chennai

Shorooq Al Doha said...

These are just fabulous!
Thank you!
Tents for sale johannesburg!
Church tents for sale in gauteng
marquee tents for sale in johannesburg!
500 seater tent price in south africa!
Tents for sale in south africa prices
Outdoor warehouse tents for sale
Tent south africa

Unknown said...

Nice idea,keep sharing your ideas with us.i hope this information's will be helpful for the new learners.
selenium classes in bangalore
selenium training in bangalore with placement
Selenium Training in Chennai
Selenium Training in OMR

Unknown said...

I really thank you for your innovative post.I have never read a creative ideas like your posts.here after i will follow your posts which is very much help for my career.
Best devops Training Institute in Anna nagar
devops Certification Training in Anna nagar
devops certification in bangalore
devops training institutes in bangalore

sathyaramesh said...

Thanks for sharing such a nice info.I hope you will share more information like this. please keep on sharing!
RPA training in bangalore
RPA courses in Chennai
RPA Training Institute in Chennai
Robotic Process Automation training in bangalore
Robotics courses in bangalore

gowthunan said...

Whoa! I’m enjoying the template/theme of this website. It’s simple, yet effective. A lot of times it’s very hard to get that “perfect balance” between superb usability and visual appeal. I must say you’ve done a very good job with this.
fire and safety course in chennai

priya said...

This is beyond doubt a blog significant to follow. You’ve dig up a great deal to say about this topic, and so much awareness. I believe that you recognize how to construct people pay attention to what you have to pronounce, particularly with a concern that’s so vital. I am pleased to suggest this blog.
Microsoft Azure online training
Selenium online training
Java online training
uipath online training
Python online training


jefrin said...

Your very own commitment to getting the message throughout came to be rather powerful and have consistently enabled employees just like me to arrive at their desired goals.
Data science Course Training in Chennai | Data Science Training in Chennai
RPA Course Training in Chennai | RPA Training in Chennai
AWS Course Training in Chennai | AWS Training in Chennai

Aruna Ram said...

This blog is awesome! In this post is very interesting for all readers and I am waiting for your more post from this blog admin.
Embedded System Course Chennai
Embedded Course in chennai
Power BI Training in Chennai
Tableau Training in Chennai
Pega Training in Chennai
Excel Training in Chennai
Corporate Training in Chennai
Embedded System Course Chennai
Embedded Training in Chennai

creative web solution said...

Are you searching for a home maid or old care attandents or baby care aaya in india contact us and get the best and experianced personns in all over india for more information visit our site

best patient care service in India
Male  attendant service provider in India
Top critical care specialist in India
Best physiotherapist providers in India
Home care service provider in India
Experienced Baby care aaya provider in India
best old care aaya for home in India
Best medical equipment suppliers in India

Christoper stalin said...

Thanks for sharing this information through this blog.
web designing course with placement
php training with placement in chennai
magento developer training | magento course in chennai

gautham said...

Most and useful information you have provided sql course

shree said...

very nice....
inplant training in chennai
inplant training in chennai for it.php
namibia web hosting
norway web hosting
rwanda web hosting
spain hosting
turkey web hosting
venezuela hosting
vietnam shared web hosting



preethi minion said...

nice ..........!
inplant training in chennai
inplant training in chennai
inplant training in chennai for it
italy web hosting
afghanistan hosting
angola hosting
afghanistan web hosting
bahrain web hosting
belize web hosting
india shared web hosting

shri said...

nice....
internship in chennai for ece students
internships in chennai for cse students 2019
Inplant training in chennai
internship for eee students
free internship in chennai
eee internship in chennai
internship for ece students in chennai
inplant training in bangalore for cse
inplant training in bangalore
ccna training in chennai


anuarun said...


nice information......
ree internship in bangalore for computer science students
internship for aeronautical engineering
internship for eee students in hyderabad
internship in pune for computer engineering students 2018
kaashiv infotech internship fees
industrial training certificate format for mechanical engineering students
internship report on machine learning with python
internship for biomedical engineering students in chennai
internships in bangalore for cse
internship in coimbatore for ece

ammu said...

nice information....!!
text animation css
animation css background
sliding menu
hover css
css text animation
css loaders
dropdown menu
buttons with css

Durai Moorthy said...

Nice blog, this blog provide the more information. Thank you so much for sharing with us.
aws Training in Bangalore
python Training in Bangalore
hadoop Training in Bangalore
angular js Training in Bangalore
bigdata analytics Training in Bangalore
python Training in Bangalore
aws Training in Bangalore

dras said...

very useful...post
python training in chennai
internships in hyderabad for cse 2nd year students
online inplant training
internships for aeronautical engineering students
kaashiv infotech internship review
report of summer internship in c++
cse internships in hyderabad
python internship
internship for civil engineering students in chennai
robotics course in chennai

Rajesh Anbu said...

Really nice post. Thank you for sharing amazing information.
aws Training in Bangalore
python Training in Bangalore
hadoop Training in Bangalore
angular js Training in Bangalore
bigdata analytics Training in Bangalore
python Training in Bangalore
aws Training in Bangalore

Joyal said...

Effective blog with a lot of information. I just Shared you the link below for ACTE .They really provide good level of training and Placement,I just Had Data Science Classes in ACTE , Just Check This Link You can get it more information about the Data Science course.
Java training in chennai | Java training in annanagar | Java training in omr | Java training in porur | Java training in tambaram | Java training in velachery

Anonymous said...

Hey guy's i have got something to share from my research work
Sickrage
Louiz
Foundation

lionelmessi said...

Hi Thanks For Sharing The Knowledge With us

Data Science Training in Hyderabad
Data Science Course in Hyderabad

subha said...

There you can download for free, see the first of these data. nice page
Ai & Artificial Intelligence Course in Chennai
PHP Training in Chennai
Ethical Hacking Course in Chennai Blue Prism Training in Chennai
UiPath Training in Chennai

CloudLearn ERP™️ said...

I concur with a ton of the focuses you made in this article. I value the work you have placed into this and expectation you keep composing regarding this matter.
Best Data Science training in Mumbai

Data Science training in Mumbai


IICT Technologies said...

Thanks for this post.
Software Testing Training in Chennai | Software Testing Training Institute in Chennai | Software Testing Training Center in Chennai | Best Software Testing Training in Chennai | Software Testing Training

IICT Technologies said...

Thanks for this post.
Java Training in Chennai | Java Training Institute in Chennai | Java Training Center in Chennai | Best Java Training in Chennai | Java Training

IICT Technologies said...

Thanks for this post.
Hadoop Training in Chennai | Hadoop Training Institute in Chennai | Hadoop Training Center in Chennai | Best Hadoop Training in Chennai | Hadoop Training

IICT Technologies said...

Thanks for this post.
Oracle Training in Chennai | Oracle Training Institute in Chennai | Oracle Training Center in Chennai | Best Oracle Training in Chennai | Oracle Training

IICT Technologies said...

Thanks for this post.
CCNA Training in Chennai | CCNA Training Institute in Chennai | CCNA Training Center in Chennai | Best CCNA Training in Chennai | CCNA Training

devi said...


It is an informative blog. I would like to know more information about the new model bike. Anyway thanks a lot for sharing this post. Those guidelines additionally worked to become a good way to recognize that other people online have the identical fervour like mine to grasp great deal more around this condition.

Data Science Training In Chennai | Certification | Data Science Courses in Chennai | Data Science Training In Bangalore | Certification | Data Science Courses in Bangalore | Data Science Training In Hyderabad | Certification | Data Science Courses in hyderabad | Data Science Training In Coimbatore | Certification | Data Science Courses in Coimbatore | Data Science Training | Certification | Data Science Online Training Course

360digitmgas said...

Excellent Blog! I would like to thank for the efforts you have made in writing this post. I am hoping the same best work from you in the future as well. I wanted to thank you for this websites! Thanks for sharing. Great websites!
data science training in coimbatore

Jayalakshmi said...

I have read your blog. Good and more information useful for me, Thanks for sharing this
information keep it up....
hardware and networking training in chennai

hardware and networking training in tambaram

xamarin training in chennai

xamarin training in tambaram

ios training in chennai

ios training in tambaram

iot training in chennai

iot training in tambaram

deiva said...

Tutorial is just awesome..It is really helpful for a newbie like me.. I am a regular follower of your blog. Really very informative post you shared here
data science training in chennai

data science training in omr

android training in chennai

android training in omr

devops training in chennai

devops training in omr

artificial intelligence training in chennai

artificial intelligence training in omr

Tableau Training in Hyderabad said...


Nice article and thanks for sharing with us. Its very informative



Tableau Training in Hyderabad

Ranjith said...

Wonderful article, thanks for putting this together! This is obviously one great post. Thanks for the valuable information and insights you have so provided here.

python Training in chennai

python Course in chennai


AlanBarlow said...

Learned a lot from this. Keep sharing information like this. Thanks.
buy logo design

Haris said...

Thank you for sharing it with us.
I am really happy to see this blog.
It is very helpful for me.

Nursing assignment help

Haris said...

Thanks for sharing it with us,
it is a very unique and helpful article for us.

Buy law essay

Pavithra Devi said...

This post is so interactive and informative.keep update more information...
Tally Course in Tambaram
Tally course in Chennai

360DigiTMG said...

Cool stuff you have and you keep overhaul every one of us
business analytics course in hyderabad

Matt Reeves said...

Mindblowing blog very useful thanks
AWS Training in Tnagar
AWS Training in Chennai