{"product_id":"software-project-estimation-9781118954089","title":"Software Project Estimation","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cp\u003eThis book introduces theoretical concepts to explain the fundamentals of the design and evaluation of software estimation models. It provides software professionals with vital information on the best software management software out there.\u003c\/p\u003e \u003cul\u003e \u003cli\u003eEnd-of-chapter exercises\u003c\/li\u003e \u003cli\u003eOver 100 figures illustrating the concepts presented throughout the book\u003c\/li\u003e \u003cli\u003eExamples incorporated with industry data\u003c\/li\u003e \u003c\/ul\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cp\u003eForeword xiii\u003c\/p\u003e \u003cp\u003eOverview xvii\u003c\/p\u003e \u003cp\u003eAcknowledgments xxiii\u003c\/p\u003e \u003cp\u003eAbout the Author xxv\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart One Understanding the Estimation Process 1\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003e1. The Estimation Process: Phases and Roles 3\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e1.1. Introduction 3\u003c\/p\u003e \u003cp\u003e1.2. Generic Approaches in Estimation Models: Judgment or Engineering? 4\u003c\/p\u003e \u003cp\u003e1.2.1. Practitioner’s Approach: Judgment and Craftsmanship 4\u003c\/p\u003e \u003cp\u003e1.2.2. Engineering Approach: Modest–One Variable at a Time 5\u003c\/p\u003e \u003cp\u003e1.3. Overview of Software Project Estimation and Current Practices 6\u003c\/p\u003e \u003cp\u003e1.3.1. Overview of an Estimation Process 6\u003c\/p\u003e \u003cp\u003e1.3.2. Poor Estimation Practices 7\u003c\/p\u003e \u003cp\u003e1.3.3. Examples of Poor Estimation Practices 9\u003c\/p\u003e \u003cp\u003e1.3.4. The Reality: A Tally of Failures 10\u003c\/p\u003e \u003cp\u003e1.4. Levels of Uncertainty in an Estimation Process 11\u003c\/p\u003e \u003cp\u003e1.4.1. The Cone of Uncertainty 11\u003c\/p\u003e \u003cp\u003e1.4.2. Uncertainty in a Productivity Model 12\u003c\/p\u003e \u003cp\u003e1.5. Productivity Models 14\u003c\/p\u003e \u003cp\u003e1.6. The Estimation Process 16\u003c\/p\u003e \u003cp\u003e1.6.1. The Context of the Estimation Process 16\u003c\/p\u003e \u003cp\u003e1.6.2. The Foundation: The Productivity Model 17\u003c\/p\u003e \u003cp\u003e1.6.3. The Full Estimation Process 18\u003c\/p\u003e \u003cp\u003e1.7. Budgeting and Estimating: Roles and Responsibilities 23\u003c\/p\u003e \u003cp\u003e1.7.1. Project Budgeting: Levels of Responsibility 23\u003c\/p\u003e \u003cp\u003e1.7.2. The Estimator 25\u003c\/p\u003e \u003cp\u003e1.7.3. The Manager (Decision-Taker and Overseer) 25\u003c\/p\u003e \u003cp\u003e1.8. Pricing Strategies 27\u003c\/p\u003e \u003cp\u003e1.8.1. Customers-Suppliers: The Risk Transfer Game in Estimation 28\u003c\/p\u003e \u003cp\u003e1.9. Summary – Estimating Process, Roles, and Responsibilities 28\u003c\/p\u003e \u003cp\u003eExercises 30\u003c\/p\u003e \u003cp\u003eTerm Assignments 31\u003c\/p\u003e \u003cp\u003e\u003cb\u003e2. Engineering and Economics Concepts for Understanding Software Process Performance 32\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e2.1. Introduction: The Production (Development) Process 32\u003c\/p\u003e \u003cp\u003e2.2. The Engineering (and Management) Perspective on a Production Process 34\u003c\/p\u003e \u003cp\u003e2.3. Simple Quantitative Process Models 36\u003c\/p\u003e \u003cp\u003e2.3.1. Productivity Ratio 36\u003c\/p\u003e \u003cp\u003e2.3.2. Unit Effort (or Unit Cost) Ratio 38\u003c\/p\u003e \u003cp\u003e2.3.3. Averages 39\u003c\/p\u003e \u003cp\u003e2.3.4. Linear and Non-Linear Models 42\u003c\/p\u003e \u003cp\u003e2.4. Quantitative Models and Economics Concepts 45\u003c\/p\u003e \u003cp\u003e2.4.1. Fixed and Variable Costs 45\u003c\/p\u003e \u003cp\u003e2.4.2. Economies and Diseconomies of Scale 48\u003c\/p\u003e \u003cp\u003e2.5. Software Engineering Datasets and Their Distribution 49\u003c\/p\u003e \u003cp\u003e2.5.1. Wedge-Shaped Datasets 49\u003c\/p\u003e \u003cp\u003e2.5.2. Homogeneous Datasets 50\u003c\/p\u003e \u003cp\u003e2.6. Productivity Models: Explicit and Implicit Variables 52\u003c\/p\u003e \u003cp\u003e2.7. A Single and Universal Catch-All Multidimensional Model or Multiple Simpler Models? 54\u003c\/p\u003e \u003cp\u003e2.7.1. Models Built from Available Data 55\u003c\/p\u003e \u003cp\u003e2.7.2. Models Built on Opinions on Cost Drivers 55\u003c\/p\u003e \u003cp\u003e2.7.3. Multiple Models with Coexisting Economies and Diseconomies of Scale 56\u003c\/p\u003e \u003cp\u003eExercises 58\u003c\/p\u003e \u003cp\u003eTerm Assignments 59\u003c\/p\u003e \u003cp\u003e\u003cb\u003e3. Project Scenarios, Budgeting, and Contingency Planning 60\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e3.1. Introduction 60\u003c\/p\u003e \u003cp\u003e3.2. Project Scenarios for Estimation Purposes 61\u003c\/p\u003e \u003cp\u003e3.3. Probability of Underestimation and Contingency Funds 65\u003c\/p\u003e \u003cp\u003e3.4. A Contingency Example for a Single Project 67\u003c\/p\u003e \u003cp\u003e3.5. Managing Contingency Funds at the Portfolio Level 69\u003c\/p\u003e \u003cp\u003e3.6. Managerial Prerogatives: An Example in the AGILE Context 69\u003c\/p\u003e \u003cp\u003e3.7. Summary 71\u003c\/p\u003e \u003cp\u003eFurther Reading: A Simulation for Budgeting at the Portfolio Level 71\u003c\/p\u003e \u003cp\u003eExercises 74\u003c\/p\u003e \u003cp\u003eTerm Assignments 75\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart Two Estimation Process: What Must be Verified? 77\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003e4. What Must be Verified in an Estimation Process: An Overview 79\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e4.1. Introduction 79\u003c\/p\u003e \u003cp\u003e4.2. Verification of the Direct Inputs to An Estimation Process 81\u003c\/p\u003e \u003cp\u003e4.2.1. Identification of the Estimation Inputs 81\u003c\/p\u003e \u003cp\u003e4.2.2. Documenting the Quality of These Inputs 82\u003c\/p\u003e \u003cp\u003e4.3. Verification of the Productivity Model 84\u003c\/p\u003e \u003cp\u003e4.3.1. In-House Productivity Models 84\u003c\/p\u003e \u003cp\u003e4.3.2. Externally Provided Models 85\u003c\/p\u003e \u003cp\u003e4.4. Verification of the Adjustment Phase 86\u003c\/p\u003e \u003cp\u003e4.5. Verification of the Budgeting Phase 87\u003c\/p\u003e \u003cp\u003e4.6. Re-Estimation and Continuous Improvement to the Full Estimation Process 88\u003c\/p\u003e \u003cp\u003eFurther Reading: The Estimation Verification Report 89\u003c\/p\u003e \u003cp\u003eExercises 92\u003c\/p\u003e \u003cp\u003eTerm Assignments 93\u003c\/p\u003e \u003cp\u003e\u003cb\u003e5. Verification of the Dataset Used to Build the Models 94\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e5.1. Introduction 94\u003c\/p\u003e \u003cp\u003e5.2. Verification of DIRECT Inputs 96\u003c\/p\u003e \u003cp\u003e5.2.1. Verification of the Data Definitions and Data Quality 96\u003c\/p\u003e \u003cp\u003e5.2.2. Importance of the Verification of the Measurement Scale Type 97\u003c\/p\u003e \u003cp\u003e5.3. Graphical Analysis – One-Dimensional 100\u003c\/p\u003e \u003cp\u003e5.4. Analysis of the Distribution of the Input Variables 102\u003c\/p\u003e \u003cp\u003e5.4.1. Identification of a Normal (Gaussian) Distribution 102\u003c\/p\u003e \u003cp\u003e5.4.2. Identification of Outliers: One-Dimensional Representation 103\u003c\/p\u003e \u003cp\u003e5.4.3. Log Transformation 107\u003c\/p\u003e \u003cp\u003e5.5. Graphical Analysis – Two-Dimensional 108\u003c\/p\u003e \u003cp\u003e5.6. Size Inputs Derived from a Conversion Formula 111\u003c\/p\u003e \u003cp\u003e5.7. Summary 112\u003c\/p\u003e \u003cp\u003eFurther Reading: Measurement and Quantification 113\u003c\/p\u003e \u003cp\u003eExercises 116\u003c\/p\u003e \u003cp\u003eTerm Assignments 117\u003c\/p\u003e \u003cp\u003eExercises–Further Reading Section 117\u003c\/p\u003e \u003cp\u003eTerm Assignments–Further Reading Section 118\u003c\/p\u003e \u003cp\u003e\u003cb\u003e6. Verification of Productivity Models 119\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e6.1. Introduction 119\u003c\/p\u003e \u003cp\u003e6.2. Criteria Describing the Relationships Across Variables 120\u003c\/p\u003e \u003cp\u003e6.2.1. Simple Criteria 120\u003c\/p\u003e \u003cp\u003e6.2.2. Practical Interpretation of Criteria Values 122\u003c\/p\u003e \u003cp\u003e6.2.3. More Advanced Criteria 124\u003c\/p\u003e \u003cp\u003e6.3. Verification of the Assumptions of the Models 125\u003c\/p\u003e \u003cp\u003e6.3.1. Three Key Conditions Often Required 125\u003c\/p\u003e \u003cp\u003e6.3.2. Sample Size 126\u003c\/p\u003e \u003cp\u003e6.4. Evaluation of Models by Their Own Builders 127\u003c\/p\u003e \u003cp\u003e6.5. Models Already Built–Should You Trust Them? 128\u003c\/p\u003e \u003cp\u003e6.5.1. Independent Evaluations: Small-Scale Replication Studies 128\u003c\/p\u003e \u003cp\u003e6.5.2. Large-Scale Replication Studies 129\u003c\/p\u003e \u003cp\u003e6.6. Lessons Learned: Distinct Models by Size Range 133\u003c\/p\u003e \u003cp\u003e6.6.1. In Practice, Which is the Better Model? 138\u003c\/p\u003e \u003cp\u003e6.7. Summary 138\u003c\/p\u003e \u003cp\u003eExercises 139\u003c\/p\u003e \u003cp\u003eTerm Assignments 139\u003c\/p\u003e \u003cp\u003e\u003cb\u003e7. Verification of the Adjustment Phase 141\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e7.1. Introduction 141\u003c\/p\u003e \u003cp\u003e7.2. Adjustment Phase in the Estimation Process 142\u003c\/p\u003e \u003cp\u003e7.2.1. Adjusting the Estimation Ranges 142\u003c\/p\u003e \u003cp\u003e7.2.2. The Adjustment Phase in the Decision-Making Process: Identifying Scenarios for Managers 144\u003c\/p\u003e \u003cp\u003e7.3. The Bundled Approach in Current Practices 145\u003c\/p\u003e \u003cp\u003e7.3.1. Overall Approach 145\u003c\/p\u003e \u003cp\u003e7.3.2. Detailed Approach for Combining the Impact of Multiple Cost Drivers in Current Models 146\u003c\/p\u003e \u003cp\u003e7.3.3. Selecting and Categorizing Each Adjustment: The Transformation of Nominal Scale Cost Drivers into\u003cbr\u003eNumbers 147\u003c\/p\u003e \u003cp\u003e7.4. Cost Drivers as Estimation Submodels! 148\u003c\/p\u003e \u003cp\u003e7.4.1. Cost Drivers as Step Functions 148\u003c\/p\u003e \u003cp\u003e7.4.2. Step Function Estimation Submodels with Unknown Error Ranges 149\u003c\/p\u003e \u003cp\u003e7.5. Uncertainty and Error Propagation 151\u003c\/p\u003e \u003cp\u003e7.5.1. Error Propagation in Mathematical Formulas 151\u003c\/p\u003e \u003cp\u003e7.5.2. The Relevance of Error Propagation in Models 153\u003c\/p\u003e \u003cp\u003eExercises 156\u003c\/p\u003e \u003cp\u003eTerm Assignments 157\u003c\/p\u003e \u003cp\u003e\u003cb\u003ePart Three Building Estimation Models: Data Collection and Analysis 159\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e\u003cb\u003e8. Data Collection and Industry Standards: The ISBSG Repository 161\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e8.1. Introduction: Data Collection Requirements 161\u003c\/p\u003e \u003cp\u003e8.2. The International Software Benchmarking Standards Group 163\u003c\/p\u003e \u003cp\u003e8.2.1. The ISBSG Organization 163\u003c\/p\u003e \u003cp\u003e8.2.2. The ISBSG Repository 164\u003c\/p\u003e \u003cp\u003e8.3. ISBSG Data Collection Procedures 165\u003c\/p\u003e \u003cp\u003e8.3.1. The Data Collection Questionnaire 165\u003c\/p\u003e \u003cp\u003e8.3.2. ISBSG Data Definitions 167\u003c\/p\u003e \u003cp\u003e8.4. Completed ISBSG Individual Project Benchmarking Reports: Some Examples 170\u003c\/p\u003e \u003cp\u003e8.5. Preparing to Use the ISBSG Repository 173\u003c\/p\u003e \u003cp\u003e8.5.1. ISBSG Data Extract 173\u003c\/p\u003e \u003cp\u003e8.5.2. Data Preparation: Quality of the Data Collected 173\u003c\/p\u003e \u003cp\u003e8.5.3. Missing Data: An Example with Effort Data 175\u003c\/p\u003e \u003cp\u003eFurther Reading 1: Benchmarking Types 177\u003c\/p\u003e \u003cp\u003eFurther Reading 2: Detailed Structure of the ISBSG Data Extract 179\u003c\/p\u003e \u003cp\u003eExercises 183\u003c\/p\u003e \u003cp\u003eTerm Assignments 183\u003c\/p\u003e \u003cp\u003e\u003cb\u003e9. Building and Evaluating Single Variable Models 185\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e9.1. Introduction 185\u003c\/p\u003e \u003cp\u003e9.2. Modestly, One Variable at a Time 186\u003c\/p\u003e \u003cp\u003e9.2.1. The Key Independent Variable: Software Size 186\u003c\/p\u003e \u003cp\u003e9.2.2. Analysis of the Work–Effort Relationship in a Sample 188\u003c\/p\u003e \u003cp\u003e9.3. Data Preparation 189\u003c\/p\u003e \u003cp\u003e9.3.1. Descriptive Analysis 189\u003c\/p\u003e \u003cp\u003e9.3.2. Identifying Relevant Samples and Outliers 189\u003c\/p\u003e \u003cp\u003e9.4. Analysis of the Quality and Constraints of Models 193\u003c\/p\u003e \u003cp\u003e9.4.1. Small Projects 195\u003c\/p\u003e \u003cp\u003e9.4.2. Larger Projects 195\u003c\/p\u003e \u003cp\u003e9.4.3. Implication for Practitioners 195\u003c\/p\u003e \u003cp\u003e9.5. Other Models by Programming Language 196\u003c\/p\u003e \u003cp\u003e9.6. Summary 202\u003c\/p\u003e \u003cp\u003eExercises 203\u003c\/p\u003e \u003cp\u003eTerm Assignments 203\u003c\/p\u003e \u003cp\u003e\u003cb\u003e10. Building Models with Categorical Variables 205\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e10.1. Introduction 205\u003c\/p\u003e \u003cp\u003e10.2. The Available Dataset 206\u003c\/p\u003e \u003cp\u003e10.3. Initial Model with a Single Independent Variable 208\u003c\/p\u003e \u003cp\u003e10.3.1. Simple Linear Regression Model with Functional Size Only 208\u003c\/p\u003e \u003cp\u003e10.3.2. Nonlinear Regression Models with Functional Size 208\u003c\/p\u003e \u003cp\u003e10.4. Regression Models with Two Independent Variables 210\u003c\/p\u003e \u003cp\u003e10.4.1. Multiple Regression Models with Two Independent Quantitative Variables 210\u003c\/p\u003e \u003cp\u003e10.4.2. Multiple Regression Models with a Categorical Variable: Project Difficulty 210\u003c\/p\u003e \u003cp\u003e10.4.3. The Interaction of Independent Variables 215\u003c\/p\u003e \u003cp\u003eExercises 216\u003c\/p\u003e \u003cp\u003eTerm Assignments 217\u003c\/p\u003e \u003cp\u003e\u003cb\u003e11. Contribution of Productivity Extremes in Estimation 218\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e11.1. Introduction 218\u003c\/p\u003e \u003cp\u003e11.2. Identification of Productivity Extremes 219\u003c\/p\u003e \u003cp\u003e11.3. Investigation of Productivity Extremes 220\u003c\/p\u003e \u003cp\u003e11.3.1. Projects with Very Low Unit Effort 221\u003c\/p\u003e \u003cp\u003e11.3.2. Projects with Very High Unit Effort 222\u003c\/p\u003e \u003cp\u003e11.4. Lessons Learned for Estimation Purposes 224\u003c\/p\u003e \u003cp\u003eExercises 225\u003c\/p\u003e \u003cp\u003eTerm Assignments 225\u003c\/p\u003e \u003cp\u003e\u003cb\u003e12. Multiple Models from a Single Dataset 227\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e12.1. Introduction 227\u003c\/p\u003e \u003cp\u003e12.2. Low and High Sensitivity to Functional Size Increases: Multiple Models 228\u003c\/p\u003e \u003cp\u003e12.3. The Empirical Study 230\u003c\/p\u003e \u003cp\u003e12.3.1. Context 230\u003c\/p\u003e \u003cp\u003e12.3.2. Data Collection Procedures 231\u003c\/p\u003e \u003cp\u003e12.3.3. Data Quality Controls 231\u003c\/p\u003e \u003cp\u003e12.4. Descriptive Analysis 231\u003c\/p\u003e \u003cp\u003e12.4.1. Project Characteristics 231\u003c\/p\u003e \u003cp\u003e12.4.2. Documentation Quality and Its Impact on Functional Size Quality 233\u003c\/p\u003e \u003cp\u003e12.4.3. Unit Effort (in Hours) 234\u003c\/p\u003e \u003cp\u003e12.5. Productivity Analysis 234\u003c\/p\u003e \u003cp\u003e12.5.1. Single Model with the Full Dataset 234\u003c\/p\u003e \u003cp\u003e12.5.2. Model of the Least Productive Projects 235\u003c\/p\u003e \u003cp\u003e12.5.3. Model of the Most Productive Projects 237\u003c\/p\u003e \u003cp\u003e12.6. External Benchmarking with the ISBSG Repository 238\u003c\/p\u003e \u003cp\u003e12.6.1. Project Selection Criteria and Samples 238\u003c\/p\u003e \u003cp\u003e12.6.2. External Benchmarking Analysis 239\u003c\/p\u003e \u003cp\u003e12.6.3. Further Considerations 240\u003c\/p\u003e \u003cp\u003e12.7. Identification of the Adjustment Factors for Model Selection 241\u003c\/p\u003e \u003cp\u003e12.7.1. Projects with the Highest Productivity (i.e., the Lowest Unit Effort) 241\u003c\/p\u003e \u003cp\u003e12.7.2. Lessons Learned 242\u003c\/p\u003e \u003cp\u003eExercises 243\u003c\/p\u003e \u003cp\u003eTerm Assignments 243\u003c\/p\u003e \u003cp\u003e\u003cb\u003e13. Re-Estimation: A Recovery Effort Model 244\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e13.1. Introduction 244\u003c\/p\u003e \u003cp\u003e13.2. The Need for Re-Estimation and Related Issues 245\u003c\/p\u003e \u003cp\u003e13.3. The Recovery Effort Model 246\u003c\/p\u003e \u003cp\u003e13.3.1. Key Concepts 246\u003c\/p\u003e \u003cp\u003e13.3.2. Ramp-Up Process Losses 247\u003c\/p\u003e \u003cp\u003e13.4. A Recovery Model When a Re-Estimation Need is Recognized at Time T \u0026gt; 0 248\u003c\/p\u003e \u003cp\u003e13.4.1. Summary of Recovery Variables 248\u003c\/p\u003e \u003cp\u003e13.4.2. A Mathematical Model of a Recovery Course in Re-Estimation 248\u003c\/p\u003e \u003cp\u003e13.4.3. Probability of Underestimation −p(u) 249\u003c\/p\u003e \u003cp\u003e13.4.4. Probability of Acknowledging the Underestimation on a Given Month −p(t) 250\u003c\/p\u003e \u003cp\u003eExercises 251\u003c\/p\u003e \u003cp\u003eTerm Assignments 251\u003c\/p\u003e \u003cp\u003eReferences 253\u003c\/p\u003e \u003cp\u003eIndex 257\u003c\/p\u003e","brand":"John Wiley \u0026 Sons Inc","offers":[{"title":"Default Title","offer_id":49406955290967,"sku":"9781118954089","price":68.36,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9781118954089.jpg?v=1730497680","url":"https:\/\/bookcurl.com\/products\/software-project-estimation-9781118954089","provider":"Book Curl","version":"1.0","type":"link"}