Skip to content

Estimating Software Costs Bringing Realism to Estimating

Best in textbook rentals since 2012!

ISBN-10: 0071483004

ISBN-13: 9780071483001

Edition: 2nd 2007 (Revised)

Authors: Capers Jones

List price: $96.00
Blue ribbon 30 day, 100% satisfaction guarantee!

Rental notice: supplementary materials (access codes, CDs, etc.) are not guaranteed with rental orders.

what's this?
Rush Rewards U
Members Receive:
Carrot Coin icon
XP icon
You have reached 400 XP and carrot coins. That is the daily max!

Description:

It has been calculated that some 75% of software development projects run overbudget. This book is intended to help the software developer accurately measure and estimate the cost of developing new software.
Customers also bought

Book details

List price: $96.00
Edition: 2nd
Copyright year: 2007
Publisher: McGraw-Hill Education
Publication date: 5/10/2007
Binding: Hardcover
Pages: 644
Size: 6.20" wide x 9.10" long x 1.57" tall
Weight: 2.222
Language: English

Foreword
Preface
Acknowledgments
Introduction to Software Cost Estimation
Introduction
How Software Cost-Estimating Tools Work
Cautions About Accidental Omissions from Estimates
Software Cost Estimating and Other Development Activities
References
The Origins of Software Cost Estimation
The Early History of Software Cost Estimation
The Expansion and Use of Functional Metrics for Software Cost Estimating
References
Six Forms of Software Cost Estimation
Overview of Manual Software-Estimating Methods
Overview of Automated Software-Estimating Methods
Comparison of Manual and Automated Estimates for Large Software Projects
References
Software Cost-Estimating Tools and Project Success and Failure Rates
Probabilities of Software Project Success or Failure
References
Sources of Error in Software Cost Estimation
Judging the Accuracy of Software Cost Estimates
Classes of Software Estimation Errors
References
Preliminary Estimation Methods
Manual Software-Estimating Methods
Rules of Thumb Based on Lines-of-Code Metrics
Rules of Thumb Based on Ratios and Percentages
Rules of Thumb Based on Function Point Metrics
Function Point Sizing Rules of Thumb
Rules of Thumb for Schedules, Resources, and Costs
Rules of Thumb Using Activity-Based Cost Analysis
Summary and Conclusions
References
Manual Estimating Methods Derived from Agile Projects and New Environments
Metrics Used for Rules of Thumb
Rules of Thumb for Manual Software Cost Estimates
Component-Based Development
Dynamic System Development Method (DSDM)
Enterprise Resource Planning (ERP) Deployment
Extreme Programming (XP)
International Outsourcing
Object-Oriented (OO) Development
Capability Maturity Model (CMM)
Software Methods with Only Partial Rules of Thumb
Cleanroom Development
Crystal Development Approach
Feature-Driven Development (FDD)
ISO 9000-9004 Quality Standards
Iterative or Incremental Development
Pattern-Based Software Development
Quality Function Deployment (QFD)
Rapid Application Development (RAD)
Scrum
Six-sigma for Software
Spiral Software Development
Unified Modeling Language (UML)
Use Cases for Software Requirements
Web-Based Applications
Summary and Conclusions
References
Automated Estimates from Minimal Data
Recording Administrative and Project Information
Preliminary Sizing of Key Deliverables
Producing a Preliminary Cost Estimate
Summary and Conclusions
References
Sizing Software Deliverables
Sizing Software Deliverables
General Sizing Logic for Key Deliverables
Sizing Methods Circa 2007
Pattern Matching from Historical Data
Using Historical Data to Predict Growth in Requirements
Mathematical or Statistical Attempts to Extrapolate Size from Partial Requirements
Arbitrary Rules of Thumb for Adding Contingency Factors
Freezing Requirements at Fixed Points in Time
Producing Formal Cost Estimates Only for Subsets of the Total Application
Volume of Function Point Data Available
Software Complexity Analysis
Software Sizing with Reusable Components
Overview of the Basic Forms of Software Sizing Metrics
Source Code Sizing
Sizing Object-Oriented Software Projects
Sizing Text-Based Paper Documents
Sizing Graphics and Illustrations
Sizing Bugs or Defects
Sizing Test Cases
The Event Horizon for Sizing Software Artifacts
What Is Known as a Result of Sizing Software Projects
Strengths and Weaknesses of Software Size Metrics
Summary and Conclusions
References
Cost-Estimating Adjustment Factors
Compensation and Work-Pattern Adjustments
Manual and Automated Methods of Adjustment
Exclusions from Normal Software Cost Estimates
Setting Up the Initial Conditions for a Cost Estimate
Variations in Burden Rates or Overhead Costs
Variations in Work Habits and Unpaid Overtime
References
Activity Pattern Adjustment Factors
Twenty Five Common Activities for Software Projects
References
Software Technology Adjustment Factors
Adjustment Factors and Macro-Estimation Tools
Factors That Influence Software Development Productivity
Factors That Influence Software Maintenance Productivity
Patterns of Positive and Negative Factors
Adjustment Factors and Micro-Estimating Tools
References
Activity-Based Software Cost Estimating
Estimating Software Requirements
Function Points and Software Requirements
Primary Topics for Software Requirements
Secondary Topics for Software Requirements
Positive and Negative Requirements Adjustment Factors
Requirements and End-User Software
Requirements and Agile Applications
Requirements and Management Information Systems (MIS) Projects
Requirements and Outsourced Projects
Requirements and Systems Software
Requirements and Commercial Software
Requirements and Military Software Projects
Requirements and Web-Based Applications
Evaluating Combinations of Requirements Factors
References
Estimating Software Prototypes
Disposable Prototypes
Time box Prototypes
Evolutionary Prototypes
Default Values for Estimating Disposable Prototypes
Positive and Negative Factors That Influence Software Prototypes
References
Estimating Software Specifications and Design
Positive Design Adjustment Factors
Negative Design Adjustment Factors
References
Estimating Design Inspections
Inspection Literature
Inspection Process
Value of Inspections
References
Estimating Programming or Coding
The Impact of Reusability on Programming
The Impact of Experience on Programming
The Impact of Bugs or Errors on Programming
The Impact of Unpaid Overtime on Programming
The Impact of Creeping Requirements on Programming
The Impact of Code Structure and Complexity on Programming
The Impact of Unplanned Interruptions on Programming
The Impact of Application Size on Programming
The Impact of Office Space and Ergonomics on Programming
The Impact of Tools on Programming
The Impact of Programming Languages on Programming
The Impact of Schedule Pressure on Programming
References
Estimating Code Inspections
Code Inspection Literature
Effectiveness of Code Inspections
Considerations for Estimating Code Inspections
References
Estimating Software Configuration Control and Change Management
The Literature on Change Management
Measuring Software Change
Changes in User Requirements
Changes in Specifications and Design
Changes Due to Bugs or Defect Reports
Summary and Conclusions
References
Estimating Software Testing
General Forms of Software Testing
Specialized Forms of Software Testing
Forms of Testing Involving Users or Clients
Number of Testing Stages
Testing Pattern Variations by Industry and Type of Software
Testing Pattern Variations by Size of Application
Testing Stages Noted in Lawsuits Alleging Poor Quality
Using Function Points to Estimate Test-Case Volumes
Using Function Points to Estimate the Numbers of Test Personnel
Testing and Defect-Removal Efficiency Levels
Using Function Points to Estimate Testing Effort and Costs
Testing by Developers or by Professional Test Personnel
Test Case Coverage
The Factors That Affect Testing Performance
References
Estimating User and Project Documentation
Estimating Tools and Software Documentation
Quantifying the Number and Sizes of Software Document Types
Software Documentation Tools on Lagging and Leading Projects
References
Estimating Software Project Management
The Roles of Software Project Management
Project Managers Who Are Also Technical Contributors
Project Management for Hybrid Projects Involving Hardware and Software
Project Management and External Schedule Pressures
Project Management Tools
Project Management on Large Systems with Many Managers
Time-Splitting, or Managing Several Projects Simultaneously
The Span of Control, or Number of Staff Members per Manager
Managing Multiple Occupation Groups
The Presence or Absence of Project Offices for Large Systems
Experience Levels of Software Project Managers
Quality-Control Methods Selected by Project Managers
Project Managers and Metrics
Summary of Project Management Findings
References
Maintenance and Enhancement Cost Estimating
Maintenance and Enhancement Estimating
Nominal Default Values for Maintenance and Enhancement Activities
Metrics and Measurement Problems with Small Maintenance Projects
Best and Worst Practices in Software Maintenance
Software Entropy and Total Cost of Ownership
Installing New Releases and Patches from Software Vendors
Major Enhancements
Minor Enhancements
Maintenance (Defect Repairs)
Warranty Repairs
Customer Support
Economics of Error-Prone Modules
Mandatory Changes
Complexity Analysis
Code Restructuring and Refactoring
Performance Optimization
Migration Across Platforms
Conversion to New Architectures
Reverse Engineering
Re-engineering
Dead Code Removal
Dormant Application Removal
Nationalization
Mass Update Projects
Retirement or Withdrawal of Applications
Field Service
Combinations and Concurrent Maintenance Operations
References
Software Cost-Estimating Research Issues
Metrics Conversion
Automatic Sizing from User Requirements
Activity-Based Costs for Agile, Object-Oriented, and Web Projects
Complexity Analysis of Software Applications
Value Analysis of Software Applications
Risk Analysis and Software Cost Estimates
Including Specialists in Software Cost Estimates
Reuse Analysis and Software Cost Estimates
Process Improvement Estimation
Methodology Analysis and Software Cost Estimating
Summary and Conclusions About Software Cost-Estimating Research
Index