Software Estimation Best Practices, Tools & Techniques: A Complete Guide for Software Project Estimators

Front Cover
J. Ross Publishing, Jul 15, 2009 - Business & Economics - 320 pages

“Effective estimation is one of the most vital success factors of any project, and especially so in the software industry. Yet, many people struggle with how to estimate software projects due to high uncertainty, great complexity, and the pressure to churn out more, faster. In this definitive and much-needed book, Murali Chemuturi offers real-world solutions, explaining all aspects of proper software estimation in an engaging and accessible style. He exposes myths, clears up misconceptions, and offers practical advice on estimating every imaginable kind of software project. This should be on the desk of anyone who manages software projects.”

Jerry Manas, Author of Napoleon on Project Management and Managing the Gray Areas

Almost every software project begins with the utterances, “What will this cost?” and “When will this project be done?” Once those words are spoken, project stakeholders begin to wrestle with how to produce an estimate. Accurately estimating the cost or time to complete a software project is a serious problem for many software engineers, developers and project managers who struggle with costs running double original estimates, putting their careers at risk. It is reported that nearly 50% of all software projects are shelved and that one of the major causes is poor estimation practices. If developing software for internal use, poor estimates can represent a significant drain on corporate profits. 

Worldwide growth in the number of companies specializing in the development of software for use by other companies is staggering. India alone has nearly 20,000 such companies. Intense competition has led to an increased demand for fixed-bid pricing in client/vendor relationships, and has made effective cost estimation even more important and, in many cases, critical to a firm’s survival. There are many methods of estimation. Each method has its strengths and weaknesses, proponents and opponents. Knowing how and which one to use on a given project is key to developing acceptable estimates for either internal or external projects.

Software Estimation Best Practices, Tools, & Techniques covers all facets of software estimation. It provides a detailed explanation of the various methods for estimating software size, development effort, cost, and schedule, including a comprehensive explanation of test effort estimation. Emphasizing that software estimation should be based on well-defined processes, it presents software estimation best practices and shows how to avoid common pitfalls. This guide offers direction on which methods are most appropriate for each of the different project types commonly executed in the software development space and criteria for selecting software estimation tools. 

This comprehensive desk reference explains software estimation from scratch to help the beginner and features advanced techniques for more experienced estimators. It details project scheduling, including resource leveling and the concept of productivity, as applicable to software estimators, demonstrating the many benefits of moving from the current macro-productivity approach to a micro-productivity approach in software estimation. Software Estimation Best Practices, Tools, & Techniques: A Complete Guide for Software Project Estimators caters to the needs of all software project stakeholders, from novice to expert. It provides the valuable guidance needed to estimate the cost and time required to complete software projects within a reasonable margin of error for effective software development.



Software Estimation
Paradoxes of Software Estimation
Software Estimation from Scratch
Software Estimation by Project Type
Approaches to Software Estimation
Software Size Estimation
Software Size Units
Software EstimationComplexity or Density
Criteria for Selecting a Software Estimation Tool
Variance Analysis between Actual and Estimated Values
Project Types and Suitable Software Estimation Techniques
Estimation Sheet for Delphi Technique
Deriving Productivity from Past Projects
Suggested Phases and Tasks for TaskBased Estimation
Sample Process Definition for Software Estimation
Estimation Presentation Template

Software Development Effort Estimation
Productivity for Software Estimators
Schedule Estimation for Software Development Projects
Software Development Cost Estimation
Test Size and Effort Estimation
Pitfalls and Best Practices in Software Estimation
Estimation Request Note Template
Quick Reference

Common terms and phrases

About the author (2009)

Murali Chemuturi is an information technology and software development subject matter expert, hands-on programmer, author, consultant and trainer. He has more than 23 years of information technology and software development experience and several years of academic experience teaching a variety of computer & IT courses. In 2001, he formed his own IT consulting, training and software development firm known as Chemuturi Consultants. Mr. Chemuturi's undergraduate degrees and diplomas are in Electrical and Industrial Engineering and he holds an MBA and a Post Graduate Diploma in Computer Methods & Programming. He is a published author in professional journals, a member of IEEE, a senior member of the Computer Society of India and a Fellow at the Indian Institute of Industrial Engineering.

Bibliographic information