Engineering Bookshelf

Software Engineering Books
Book Cover: Software Engineering Best Practices: Lessons from Successful Projects in the Top Companies

Software Engineering Best Practices: Lessons from Successful Projects in the Top Companies

by Capers Jones

Publisher: McGraw-Hill Osborne Media
ISBN: 007162161X

Check price @ amazon.com , amazon.ca , amazon.co.uk


Book Description

This in-depth volume examines software engineering topics that are not covered elsewhere: the question of why software engineering has developed more than 2,500 programming languages; problems with traditional definitions of software quality; and problems with common metrics, "lines of code," and "cost per defect" that violate standard economic assumptions. The book notes that a majority of "new" projects are actually replacements for legacy applications, illustrating that data mining for lost requirements should be a standard practice. Difficult social engineering issues are also covered, such as how to minimize harm from layoffs and downsizing.

Proven techniques for software engineering success

Software Engineering Best Practices explains how to effectively plan, size, schedule, and manage software projects of all types, using solid engineering procedures. It details proven methods, from initial requirements through 20 years of maintenance. Portions of the book have been extensively reviewed by key engineers from top companies, including IBM, Microsoft, Unisys, and Sony.

About the Author

Capers Jones is president and CEO of Capers Jones & Associates LLC. He was the founder and chairman of Software Productivity Research (SPR). He is the author of Estimating Software Costs, Second Edition and Applied Software Measurement. Mr. Jones was awarded a lifetime membership in the International Function Point User's Group (IFPUG), and is is a Distinguished Advisor to the Consortium of IT Software Quality (CISQ).


Customer Reviews

A treasure
By GAH

Capers Jones has spent a lifetime doing his best to determine What Really Works in the world of software, and his studies have yielded invaluable guidelines for exactly that.

As far as I am concerned, he is a giant in the field.

I suspect that most New Age IT types (internet-based technologies) have never heard of him. The Wonderful New World of IT seems to regard itself as the only IT that has ever existed, ignoring many whose lives have been given to understanding IT software development, thus forcing continual reinvention of the field. And I must admit - this continual reinvention has been the source of many fortunes, so this commentary may just be my jealousy for not having taken old concepts, repackaging & recasting & publicizing them, and thus missing out on my shot for fame & fortune. (Yes, some humor is intended here!)

Measurement helps us manage uncertainty
By Walker Royce

Capers has written many books. I have read and quoted from them for many years because he has consistently had the guts to publish quantified data. Our industry is awash with whitewash and material that is written in a manner that offends the fewest people and hesitant to quote any specific numbers. This book is a great example of useful recommendations and conclusions based on quantified and credible analysis. Our world needs more such references.

In this book, he also has the backbone to predict the future and extrapolate current trends into his vision of the software situation in 2049. That is bold. Few of us would stick our necks out to do such a thing and go on record with our prediction.

I have a few differences of opinion with some of the practices identified as "best," some of the measured results, and some of the predictions. But for me, this was evidence of one of the book's biggest strengths. It lays out a credible case for 100s of important positions and practices and backs them up with data, rationale and recommendation. Capers' main point is that software is still a craft, and consequently, there is much uncertainty still in what and how we should do things. Yet, he still takes an expert's stand and challenges us to improve on that position. If we are to transition it to a more efficient and measured engineering discipline, we need more and better measurement.

This is a great book. For anyone who needs to improve the economics of their software capability or make a business case for an improved process, technique, or tool, Caper's book provides a solid foundation of data.