Book description
Often referred to as the “black art” because of its complexity and uncertainty, software estimation is not as difficult or puzzling as people think. In fact, generating accurate estimates is straightforward—once
you understand the art of creating them. In his highly anticipated book, acclaimed author Steve McConnell unravels the mystery to successful software estimation—distilling academic information and real-world
experience into a practical guide for working software professionals. Instead of arcane treatises and rigid modeling techniques, this guide highlights a proven set of procedures, understandable formulas,
and heuristics that individuals and development teams can apply to their projects to help achieve estimation proficiency.
Dicover how to:
- Estimate schedule and cost—or estimate the functionality that can be delivered within a given time frame
- Avoid common software estimation mistakes
- Learn estimation techniques for you, your team, and your organization * Estimate specific project activities—including development, management, and defect correction
- Apply estimation approaches to any type of project—small or large, agile or traditional
- Navigate the shark-infested political waters that surround project estimates
When many corporate software projects are failing, McConnell shows you what works for successful software estimation.
Table of contents
- Welcome
- Acknowledgments
- Equations
- Figures
-
I. Critical Estimation Concepts
-
1. What Is an “Estimate”?
- 1.1. Estimates, Targets, and Commitments
- 1.2. Relationship Between Estimates and Plans
- 1.3. Communicating about Estimates, Targets, and Commitments
- 1.4. Estimates as Probability Statements
- 1.5. Common Definitions of a “Good” Estimate
- 1.6. Estimates and Project Control
- 1.7. Estimation’s Real Purpose
- 1.8. A Working Definition of a “Good Estimate”
- Additional Resources
- 2. How Good an Estimator Are You?
- 3. Value of Accurate Estimates
-
4. Where Does Estimation Error Come From?
- 4.1. Sources of Estimation Uncertainty
- 4.2. The Cone of Uncertainty
- 4.3. Chaotic Development Processes
- 4.4. Unstable Requirements
- 4.5. Omitted Activities
- 4.6. Unfounded Optimism
- 4.7. Subjectivity and Bias
- 4.8. Off-the-Cuff Estimates
- 4.9. Unwarranted Precision
- 4.10. Other Sources of Error
- Additional Resources
- 5. Estimate Influences
-
1. What Is an “Estimate”?
-
II. Fundamental Estimation Techniques
- 6. Introduction to Estimation Techniques
- 7. Count, Compute, Judge
- 8. Calibration and Historical Data
- 9. Individual Expert Judgment
-
10. Decomposition and Recomposition
- 10.1. Calculating an Accurate Overall Expected Case
- 10.2. Decomposition via an Activity-Based Work Breakdown Structure
- 10.3. Hazards of Adding Up Best Case and Worst Case Estimates
-
10.4. Creating Meaningful Overall Best Case and Worst Case
Estimates
- Computing Aggregate Best and Worst Cases for Small Numbers of Tasks (Simple Standard Deviation Formula)
- Computing Aggregate Best and Worst Cases for Large Numbers of Tasks (Complex Standard Deviation Formula)
- Creating the Aggregate Best and Worst Case Estimates
- Cautions About Percentage Confident Estimates
- Additional Resources
-
11. Estimation by Analogy
-
11.1. Basic Approach to Estimating by Analogy
- Step 1: Get Detailed Size, Effort, and Cost Results for a Similar Previous Project
- Step 2: Compare the Size of the New Project to a Similar Past Project
- Step 3: Build Up the Estimate for the New Project’s Size as a Percentage of the Old Project’s Size
- Step 4: Create an Effort Estimate Based on the Size of the New Project Compared to the Previous Project
- Step 5: Check for Consistent Assumptions Across the Old and New Projects
- 11.2. Comments on Uncertainty in the Triad Estimate
-
11.1. Basic Approach to Estimating by Analogy
- 12. Proxy-Based Estimates
- 13. Expert Judgment in Groups
- 14. Software Estimation Tools
- 15. Use of Multiple Approaches
-
16. Flow of Software Estimates on a Well-Estimated Project
- 16.1. Flow of an Individual Estimate on a Poorly Estimated Project
- 16.2. Flow of an Individual Estimate on a Well-Estimated Project
- 16.3. Chronological Estimation Flow for an Entire Project
- 16.4. Estimate Refinement
- 16.5. How to Present Reestimation to Other Project Stakeholders
- 16.6. A View of a Well-Estimated Project
-
17. Standardized Estimation Procedures
- 17.1. Usual Elements of a Standardized Procedure
- 17.2. Fitting Estimation into a Stage-Gate Process
- 17.3. An Example of a Standardized Estimation Procedure for Sequential Projects
- 17.4. An Example of a Standardized Estimation Procedure for Iterative Projects
- 17.5. An Example of a Standardized Estimation Procedure from an Advanced Organization
- 17.6. Improving Your Standardized Procedure
- Additional Resources
-
III. Specific Estimation Challenges
- 18. Special Issues in Estimating Size
- 19. Special Issues in Estimating Effort
-
20. Special Issues in Estimating Schedule
- 20.1. The Basic Schedule Equation
- 20.2. Computing Schedule by Using Informal Comparisons to Past Projects
- 20.3. Jones’s First-Order Estimation Practice
- 20.4. Computing a Schedule Estimate by Using the Science of Estimation
- 20.5. Schedule Compression and the Shortest Possible Schedule
- 20.6. Tradeoffs Between Schedule and Effort
- 20.7. Schedule Estimation and Staffing Constraints
- 20.8. Comparison of Results from Different Methods
- Additional Resources
-
21. Estimating Planning Parameters
- 21.1. Estimating Activity Breakdown on a Project
- 21.2. Estimating Schedule for Different Activities
- 21.3. Converting Estimated Effort (Ideal Effort) to Planned Effort
- 21.4. Cost Estimates
- 21.5. Estimating Defect Production and Removal
- 21.6. Estimating Risk and Contingency Buffers
- 21.7. Other Rules of Thumb
- 21.8. Additional Resources
- 22. Estimate Presentation Styles
-
23. Politics, Negotiation, and Problem Solving
- 23.1. Attributes of Executives
- 23.2. Political Influences on Estimates
- 23.3. Problem Solving and Principled Negotiation
- Additional Resources
- A. Estimate Sanity Check
- B. Answers to Chapter 2 Quiz, "Table 2-1"
- C. Software Estimation Tips
- Bibliography
- Steve McConnell
- Index
- About the Author
- Copyright
Product information
- Title: Software Estimation: Demystifying the Black Art
- Author(s):
- Release date: February 2006
- Publisher(s): Addison-Wesley Professional
- ISBN: 0735605351
You might also like
book
INSPIRED, 2nd Edition
Learn to design, build, and scale products consumers can’t get enough of How do today’s most …
book
Software Architect's Handbook
A comprehensive guide to exploring software architecture concepts and implementing best practices Key Features Enhance your …
book
Software Requirements, 3rd Edition
Now in its third edition, this classic guide to software requirements engineering has been fully updated …
book
Software Estimation Without Guessing
Estimating software development often produces more angst than value, but it doesn't have to. Identify the …