Software Measurement and Estimation: A Practical Approach / Edition 1

Hardcover (Print)
Buy New
Buy New from BN.com
$86.71
Used and New from Other Sellers
Used and New from Other Sellers
from $34.25
Usually ships in 1-2 business days
(Save 71%)
Other sellers (Hardcover)
  • All (10) from $34.25   
  • New (6) from $97.71   
  • Used (4) from $34.25   

Overview

An effective, quantitative approach for estimating and managing software projects

How many people do I need? When will the quality be good enough for commercial sale? Can this really be done in two weeks? Rather than relying on instinct, the authors of Software Measurement and Estimation offer a new, tested approach that includes the quantitative tools, data, and knowledge needed to make sound estimations.

The text begins with the foundations of measurement, identifies the appropriate metrics, and then focuses on techniques and tools for estimating the effort needed to reach a given level of quality and performance for a software project. All the factors that impact estimations are thoroughly examined, giving you the tools needed to regularly adjust and improve your estimations to complete a project on time, within budget, and at an expected level of quality.

This text includes several features that have proven to be successful in making the material accessible and easy to master:
* Simple, straightforward style and logical presentation and organization enables you to build a solid foundation of theory and techniques to tackle complex estimations
* Examples, provided throughout the text, illustrate how to use theory to solve real-world problems
* Projects, included in each chapter, enable you to apply your newfound knowledge and skills
* Techniques for effective communication of quantitative data help you convey your findings and recommendations to peers and management

Software Measurement and Estimation: A Practical Approach allows practicing software engineers and managers to better estimate, manage, and effectively communicate the plans and progress of their software projects. With its classroom-tested features, this is an excellent textbook for advanced undergraduate-level and graduate students in computer science and software engineering.

An Instructor Support FTP site is available from the Wiley editorial department.

Read More Show Less

Editorial Reviews

From the Publisher
"It is a good and welcome addition to any technical library…and for anyone…who needs to manage software, either development or acquisition." (ACM Software Engineering Notes, January 2007)

"…an excellent book on this important area of software development." (CHOICE, December 2006)

"The authors offer software engineers and project managers a new, tested approach that provides the quantitative tools, data, and knowledge needed to make sound estimations." (IEEE Computer Magazine, August 2006)

"Corporations should advise both their project managers and their software teams to study methods introduced in this worthy text." (Kybernetes, Vol.36 Issue 1)

Read More Show Less

Product Details

  • ISBN-13: 9780471676225
  • Publisher: Wiley, John & Sons, Incorporated
  • Publication date: 6/5/2006
  • Series: Quantitative Software Engineering Series , #2
  • Edition description: New Edition
  • Edition number: 1
  • Pages: 280
  • Product dimensions: 6.46 (w) x 9.21 (h) x 0.98 (d)

Meet the Author

LINDA M. LAIRD is Adjunct Professor at Stevens Institute of Technology, where she teaches Quantitative Software Engineering. Dr. Laird has more than thirty years of experience building and managing systems for Lucent Technologies, AT&T, and Bell Laboratories.

M. CAROL BRENNAN is former vice president and general manager of the Quality and Operations Center at Telcordia Technologies, where she was responsible for design, development, and implementation of the Telcordia quality management system. She has more than twenty-five years of experience in software design, development, testing, performance, maintenance, and customer support as well as quality strategy, policy, and implementation.

Read More Show Less

Table of Contents

Acknowledgments.

1. Introduction.

1.1 Objective.

1.2 Approach.

1.3 Motivation.

1.4 Summary.

References.

Chapter 1 Side Bar.

2. What to Measure.

2.1 Method 1: The Goal Question Metrics Approach.

2.2 Extension to GQM: Metrics Mechanism is Important.

2.3 Method 2: Decision Maker Model.

2.4 Method 3: Standards Driven Metrics.

2.5 What to Measure is a Function of Time.

2.6 Summary.

References.

Exercises.

Project.

3. Fundamentals of Measurement.

3.1 Initial Measurement Exercise.

3.2 The Challenge of Measurement.

3.3 Measurement Models.

3.3.1 Text Models.

3.3.2 Diagrammatic Models.

3.3.3 Algorithmic Models.

3.3.4 Model Examples:   Response Time.

3.3.5 The Pantometric Paradigm - How to Measure Anything.

3.4 Meta-Model for Metrics.

3.5 The Power of Measurement.

3.6 Measurement Theory.

3.6.1 Introduction to Measurement Theory.

3.6.2 Measurement Scales.

3.6.3 Measures of Central Tendency and Variability.

3.6.3.1 Measures of Central Tendency.

3.6.3.2 Measures of Variability.

3.6.4 Validity and Reliability of Measurement.

3.6.5 Measurement Error.

3.7 Accuracy versus Precision and the Limits of Software Measurement.

3.7.1 Summary.

3.7.2 Problems.

3.7.3 Project.

References.

4. Measuring the Size of Software.

4.1 Physical Measurements of Software.

4.1.1 Measuring Lines of Code.

4.1.1.1 Code Counting Checklists.

4.1.2 Language Productivity Factor.

4.1.3 Counting Reused and Refactored Code.

4.1.4 Counting Non-Procedural Code Length.

4.1.5 Measuring the Length of Specifications and Design.

4.2 Measuring Functionality.

4.2.1 Function Points.

4.2.1.1 Counting Function Points.

4.2.2 Function Point Counting Exercise.

4.2.3 Converting Function Points to Physical Size.

4.2.4 Converting Function Points to Effort.

4.2.5 Other Function Point Engineering Rules.

4.2.6 Function Point Pros and Cons.

4.3 Feature Points.

4.4 Size Summary.

4.5 Size Exercises.

4.6 Theater Tickets Project.

References.

5. Measuring Complexity.

5.1 Structural Complexity.

5.1.1 Size as a Complexity Measure.

5.1.1.1 System Size and Complexity.

5.1.1.2 Module Size and Complexity.

5.1.2 Cyclomatic Complexity.

5.1.3 Halstead's Metrics.

5.1.4 Information Flow Metrics.

5.1.5 System Complexity.

5.1.5.1 Maintainability Index.

5.1.5.2 The Agresti-Card System Complexity Metric.

5.1.6 Object-Oriented Design Metrics.

5.1.7 Structural Complexity Summary.

5.2 Conceptual Complexity.

5.3 Computational Complexity.

5.4 Complexity Metrics Summary.

5.5 Complexity Exercises.

5.6 Projects.

References.

6. Estimating Effort.

6.1 Effort Estimation - Where are we?.

6.2 Software Estimation Methodologies and Models.

6.2.1 Expert Estimation.

6.2.1.1 Work and Activity Decomposition.

6.2.1.2 System Decomposition.

6.2.1.3 The Delphi Methods.

6.2.2 Using Benchmark Size Data.

6.2.2.1 Lines of Code Benchmark Data.

6.2.2.2 Function Point Benchmark Data.

6.2.3 Estimation by Analogy.

6.2.3.1 Traditional Analogy Approach.

6.2.3.2 Analogy Summary.

6.2.4 Proxy Point Estimation Methods.

6.2.4.1 Meta-Model for Effort Estimation.

6.2.4.2 Function Points.

6.2.4.2.1 COSMIC Function Points.

6.2.4.3 Object Points.

6.2.4.4 Use Case Sizing Methodologies.

6.2.4.4.1 Use Case Points Methodology.

6.2.4.4.2 Example: Use Case Point Methodology Example:   Home Security System.

6.2.4.4.3   Use Case Point Methodology Effectiveness.

6.2.5 Custom Models.

6.2.6 Algorithmic Models.

6.2.6.1 Manual Models.

6.2.6.2 Estimating Project Duration.

6.2.6.3 Tool Based Models.

6.3 Combining Estimates.

6.4 Estimating Issues.

6.4.1 Targets vs. Estimates.

6.4.2 The Limitations of Estimation - Why?.

6.4.3 Estimate Uncertainties.

6.5 Estimating Early and Often.

6.6 Estimation Summary.

6.7 Estimation Problems.

6.8 Estimation Project - Theater Tickets.

References.

7. In Praise of Defects:   Defects and Defect Metrics.

7.1 Why study and measure defects?.

7.2 Faults vs. failures.

7.3 Defect Dynamics and Behaviors.

7.3.1 Defect Arrival Rates.

7.3.2 Defects vs. Effort.

7.3.3 Defects vs. Staffing.

7.3.4 Defect Arrival Rates vs. Code Production Rate.

7.3.5 Defect Density vs. Module Complexity.

7.3.6 Defect Density vs. System Size.

7.4 Defect Projection Techniques and Models.

7.4.1 Dynamic Defect Models.

7.4.1.1 Rayleigh Models.

7.4.1.2 Exponential and S-Curves Arrival Distribution Models.

7.4.1.3 Empirical Data and Recommendations for Dynamic Models.

7.4.2 Static Defect Models.

7.4.2.1 Defect Insertion and Removal Model.

7.4.2.2 Defect Removal Efficiency - A Key Metric.

7.4.2.3 Static Defect Model Tools.

7.5 Additional Defect Benchmark Data.

7.5.1 Defect Data By Application Domain.

7.5.2 Cumulative Defect Removal Efficiency (DRE) Benchmark.

7.5.3 SEI Levels and Defect Relationships.

7.5.4 Latent Defects.

7.5.5 Other Defects   Benchmarks and a Few Recommendations+.

7.6 Cost Effectiveness of Defect Removal by Phase.

7.7 Defining and Using Simple Defect Metrics: An example.

7.8 Some Paradoxical Patterns for Customer Reported Defects.

7.9 Defect Summary.

7.10 Problems.

7.11 Projects.

7.12 Answers to the initial questions.

References.

8. Software Reliability Measurement and Prediction.

8.1 Why study and measure software reliability?.

8.2 What is reliability?.

8.3 Faults and failures.

8.4 Failure Severity Classes.

8.5 Failure Intensity.

8.6 The Cost of Reliability.

8.7 Software Reliability Theory.

8.7.1 Uniform and Random Distributions.

8.7.2 The probability of failure during a time interval.

8.7.3 F(t) - The Probability of Failure by time t.

8.7.4 R(t) - The Reliability Function.

8.7.5 Reliability Theory Summarized.

8.8 Reliability Models.

8.8.1 Types of Models.

8.8.2 Predicting Number of Defects Remaining.

8.8.3 Reliability Growth Models.

8.8.4 Model Summary.

8.9 Failure Arrival Rates.

8.9.1 Predicting Failure Arrival Rates Using Historical Data.

8.9.2 Engineering Rules for MTTF.

8.9.3 Musa's Algorithm.

8.9.4 Operational Profile Testing.

8.9.5 Predicting Reliability Summary.

8.10 But when do I ship?.

8.11 System Configurations: Probability and Reliability.

8.12 Answers to Initial Question.

8.13 Reliability Summary.

8.14 Reliability Exercises.

8.15 Reliability Project.

References.

9. Response Time and Availability.

9.1 Response Time Measurements.

9.2 Availability.

9.2.1 Availability Factors.

9.2.2 Outage Scope.

9.2.3 Complexities in Measuring Availability.

9.2.4 Software Rejuvenation.

9.2.4.1 Software Aging.

9.2.4.2 Classification of Faults.

9.2.4.3 Software Rejuvenation Techniques.

9.2.4.4 Impact of Rejuvenation on Availability.

9.3 Summary.

9.4 Problems.

9.5 Project.

References.

10. Measuring Progress.

10.1 Project Milestones.

10.2 Code Integration.

10.3 Testing Progress.

10.4 Defects Discovery and Closure.

10.4.1 Defect Discovery.

10.4.2 Defect Closure.

10.5 Process Effectiveness.

10.6 Summary.

References.

Problems.

11. Outsourcing.

11.1 The "O" Word.

11.2 Defining Outsourcing.

11.3 Risks Management and Outsourcing.

11.4 Metrics and the Contract.

11.5 Summary.

References.

Exercises.

Problems.

Chapter 11 Sidebar.

12. Financial Measures for the Software Engineer.

12.1 It's All About the Green.

12.2 Financial Concepts.

12.3 Building the Business Case.

12.3.1 Understanding Costs.

12.3.1.1 Salaries.

12.3.1.2 Overhead Costs.

12.3.1.3 Risk Costs.

12.3.1.3.1 Identifying Risk.

12.3.1.3.2 Assessing Risks.

12.3.1.3.3 Planning for Risk.

12.3.1.3.4 Monitoring Risk.

12.3.1.4 Capital versus Expense.

12.3.2 Understanding Benefits.

12.3.3 Business Case Metrics.

12.3.3.1 Return on Investment.

12.3.3.2 Pay-Back Period.

12.3.3.3 Cost/Benefit Ratio.

12.3.3.4 Profit & Loss Statement.

12.3.3.5 Cash Flow.

12.3.3.6 Expected Value.

12.4 Living the Business Case.

12.5 Summary.

References.

Problems.

Projects.

13. Benchmarking.

13.1 What is Benchmarking.

13.2 Why Benchmark.

13.3 What to Benchmark.

13.4 Identifying and Obtaining a Benchmark.

13.5 Collecting Actual Data.

13.6 Taking Action.

13.7 Current Benchmarks.

13.8 Summary.

References.

Problems.

Projects.

14. Presenting Metrics Effectively to Management.

14.1 Decide on the Metrics.

14.2 Draw the Picture.

14.3 Create a Dashboard.

14.4 Drilling for Information.

14.5 Example for the Big Cheese.

14.6 Evolving Metrics.

14.7 Summary.

References.

Problems.

Project.

Index.

Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star

(0)

4 Star

(0)

3 Star

(0)

2 Star

(0)

1 Star

(0)

Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation

Reminder:

  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

 
Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously

    If you find inappropriate content, please report it to Barnes & Noble
    Why is this product inappropriate?
    Comments (optional)