Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Is there a book out there that's the de-facto standard for describing best practices and other helpful information about software project estimation? What about that book makes it special?

share|improve this question

closed as not constructive by gnat, Yusubov, MichaelT, Kilian Foth, Joris Timmermans May 22 '13 at 8:37

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

@Chad I've checked over the FAQ and the Good Subjective/Bad Subjective blog post, and I don't see anything that prohibits a question like this. Please cite where you think says this is out of scope. – Matthew Rodatus Sep 1 '11 at 19:05
It is not my downvote. But it would seem they are acceptable. – Chad Sep 1 '11 at 19:06
"List of X" questions are off topic, especially ones that ask for "favourite" books. If this question is to remain open the answers will have to explain why the book suggested is a good book and what unique insights it offers. The question also needs a complete rewrite to include what information you are looking for. – ChrisF Sep 1 '11 at 20:35
@Chad - that's a really old meta post, which isn't strictly relevant any more. – ChrisF Sep 1 '11 at 20:38
@Thomas Thank you; that helps. I've posted a new question:… – Matthew Rodatus Sep 2 '11 at 14:55
up vote 17 down vote accepted

The best book is Steve McConnell's Estimation: Demystifying the Black Art. It presents excellent researched based methods of software estimation.

share|improve this answer
It is a fantastic book. I was going to post this after Software Engineering Economics, if no one else did. Are there any other really good books on software estimation, other than the work by Boehm and McConnell? There have been plenty of papers, models, and estimation techniques developed, but I can't think of too many other books that are really good. – Thomas Owens Sep 1 '11 at 19:25

Software Engineering Economics - Barry Boehm

This book isn't exclusively about software estimation, but some of the topics that it discusses are of interest to the estimation community:

  • Introduces the COCOMO cost estimation model. The COCOMO model discussed in this particular book is COCOMO 81, which even Boehm recognizes as no longer valid, in favor of COCOMO II (developed in the late 1990s). You might be interested in another book by Boehm that discusses COCOMO II in depth if you want to learn more about COCOMO in particular.
  • The use of Work Breakdown Structures in software-intensive projects and their impact on scheduling and budgeting.
  • Decision criteria.
  • Basic steps to software cost estimation.
  • A number of cost estimation methods and analysis of their accuracy and effectiveness. Algorithmic models, expert judgement, estimation by analogy, price-to-win estimation, top-down and bottom-up estimation methods.
  • Introduces the use of Wideband Delphi in software projects.
  • Estimation of maintenance costs.
  • Life-cycle cost estimation considerations.
share|improve this answer

Agile Estimating and Planning by Mike Cohn is an excellent introduction to estimation and planning techniques for agile projects. It's a short book, but there's a lot of information packed into the book.

Agile Estimating and Planning

Here's a synopsis of the book's content from Mike Cohn's website:

Using the techniques in Agile Estimating and Planning, you can stay agile from start to finish, saving time, conserving resources, and accomplishing more. Highlights include:

  • Why conventional prescriptive planning fails and why agile planning works
  • How to estimate feature size using story points and ideal days—and when to use each
  • How and when to re-prioritize
  • How to prioritize features using both financial and nonfinancial approaches
  • How to split large features into smaller, more manageable ones
  • How to plan iterations and predict your team's initial rate of progress
  • How to schedule projects that have unusually high uncertainty or schedule-related risk
  • How to estimate projects that will be worked on by multiple teams
share|improve this answer
I haven't read this book, but what "conventional prescriptive planning" techniques are being referred to? Especially in regards to the generalization that they fail. In McConnell's Estimation book, he has data from a survey of US Air Force projects as well as Boeing projects (and I highly doubt that in the mid 1990s, either organization was being very agile). Estimation error is down to percentage points (maybe 15-20%). Even in 2000 (the earliest days of the agile movement), McConnell cites organizations that have >95% of projects within time and budget estimates. – Thomas Owens Sep 1 '11 at 21:07
The description of why conventional planning fails refers to the following issues: Planning by Activity instead of feature, delays through multi-tasking, features not being developed (and delivered) in priority order, ignoring existing data and error rates, and turning estimates into commitments. To summarise, the book tries to change the planning focus from just "is this on time and on budget?" to add "am I delivering the highest value items first?" and "am I adjusting my estimates and plans along the way?" – Paddyslacker Sep 2 '11 at 15:31
Interesting. I'm not a fan of the phrase "conventional prescriptive planning" being used in this way, though. It makes it seem like agile is the only way to address these issues, and it's not. Delivering high value items first has been around since the 1960s, when (of all organizations) the US government started using Earned Value Management to manage projects. The implementation of EVM wasn't so great, until the 1980s and 1990s. Projects have cancelled or adjusted because of poor value added for the money being spent. Even plan-driven projects can use EVM with a phase-gate approach. – Thomas Owens Sep 2 '11 at 15:43

Estimating Software Costs: Bringing Realism to Estimating - Capers Jones

I haven't read it, but I came across this in a search. Capers Jones is considered a subject matter expect on software estimation. He's done quite a bit of work in the area of function point analysis. This is also a relatively recent (published 2007) book written by a well-respected individual, so it might be worth checking out.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.