Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Other Sellers on Amazon
+ $3.99 shipping
+ $3.99 shipping
+ $3.99 shipping
Software Estimation: Demystifying the Black Art (Developer Best Practices) Paperback – March 1, 2006
The Amazon Book Review
Author interviews, book reviews, editors picks, and more. Read it now
Frequently bought together
Customers who bought this item also bought
From the Publisher
Unlike other books that focus exclusively on the science of estimationincluding rigid modeling techniques and continuous feedback loops that are not cost effective to most organizationsthis unique guide offers practical, tested, hands-on advice for estimating software development costs in the real world. It is written by the award-winning author of Code Complete.
Key Book Benefits:
Delivers practical insights about a critical subject too-often obscured by academic jargon Two-color graphics present mathematical information in an easy-to-understand format Provides specific practices that can be used immediately by any software development organization Features numerous, to-the-point tips about the estimation process, as well as individual steps to creating successful estimates
About the Author
Steve McConnell is recognized as one of the premier authors and voices in the development community. He is Chief Software Engineer of Construx Software and was the lead developer of Construx Estimate and of SPC Estimate Professional, winner of Software Development magazine's Productivity Award. He is the author of several books, including Code Complete and Rapid Development, both honored with Software Development magazine's Jolt Award.
Browse award-winning titles. See more
Top customer reviews
There was a problem filtering reviews right now. Please try again later.
The subject matter here is much more focused than in most of his other work - dealing with a specific aspect of project management, rather than management of projects and the software development process as a whole; but, as with his other works, Mr. McConnell's Software Estimation is clearly written, well researched, and takes a very practical "hands-on" approach to the topic at hand. You will find it readable and packed with useful information. His conclusions and recommendations are well supported with references to the source material from which he derives them, and he does a good job of giving us a well balanced view of the relative merits, cautions and how best to utilize each of his recommendations.
The book is a fairly easy and straightforward read: my first pass through it took just a few hours, and I experienced one or more of those "aha!" moments of revelation with almost every chapter.
In Part I of the book, he presents overview of what Software Estimation is - and isn't; its value; what factors influence estimates; and also challenges the preconceptions all of us have with regards to software estimation. He often delves into some statistical examples to illustrate or prove his point, but these are easy to follow, and should not strain your brain too severely!
In Part II, Mr. McConnell describes a reasonably large number of software estimation techniques - describing how they work; the value, merits and challenges of each; and how to chose when (and why) to employ each one.
Part III was of the most value to me - focusing on "Specific Estimation Challenges" in the areas of estimating project size, effort, schedule, activity breakdowns, cost estimates, and metrics related to defects.
The final two chapters - 22 and 23 - of this book will be of immense value to you; as they focus on how to present estimates to others in ways that will be of most value in your attempt to provide a clear and balanced view of your project's costs and benefits to the organization. They also provide valuable tips on how to prepare and present yourself when facing the challenges that most of us (who spend more time with computers than people) encounter when trying to communicate with executives and nontechnical individuals.
In my opinion, this book will serve not only as an excellent introduction and guide to the discipline of Software Estimation, but is also an excellent reference work that you should keep close at hand: you will be digging into it regularly whenever you are managing a software development project!
In summary, this volume is yet another winner from Steve McConnell, and I recommend it highly for anyone in a leadership or senior role in software development. Five Stars!
One of the many great things about "software Estimation" is the sheer number of methods he gives. From Lines of code, to function points, to similar projects, to industry estimates (broken down by sub category so that database is different from embedded devices), to t shirt sizing, to maintaining development history: he makes it clear that you have a lot of different options available to you. He takes great pains to emphasize that one size does not fit all. Additionally he gives rationales for when the estimate techniques work in a project's lifecycle.
With all the methods described, another point driven home is that software is something of an art and that you can reduce the amount of uncertainty but you can never fully remove it. None of the methods that improve estimation are silver bullets. I love that he draws the line in the sand here. Its very true and in fact he goes a step further, pointing out that on successful projects the "cone of uncertainty" converges as the project matures. The converse is also true. Wise words indeed.
The final chapter feels more like a tack on, however the message contained therein is something that needs to be stated again and again: marketing/management is not the enemy. It is important to remember that everyone has the same goals and that the battle really should be a collaboration. However good this chapter was, it still felt out of place.
There are a few niggling issues that I had. The biggest gripe is that he talks a lot about estimation software packages. In fact, he makes assumptions that the reader has knowledge of these packages. Working in start-ups, I've never even heard of these packages until this book. Its a small gripe, but it did detract. Another issue would be some of the examples on applying the various techniques towards the end of the book were far too glossy and far to dry. I think there was some good information there but you, as the reader, will need to make a few assumptions. Which, to me, is always a dangerous thing. Not as bad as fighting a land war in Asia, but still dangerous.
Overall though, as a software engineer/manager I found this book to be invaluable. The techniques are usable right away and really helped me convey the uncertainty I had in ways that I wasn't able to in the past. I think this should be required reading for anyone who works in the software industry.
However, if you are serious about truely developing software estimation as a professional skill the book is loaded with references and cites to many more sources which are very detailed in nature. It is worthwhile to start here and identify the technique(s) that will work best for your organization then get into the details of actually applying.
On a different note, this book does sum up to a subtle sales pitch of Construx estimating software, which the author of the book was a critical figure in creating. However, the sales pitch doesn't get in the way of you still learning alot about the field of sotware estimation.
I have re-read some chapters, particularly towards the back of the book, countless time.