Software Project Estimation : The Fundamentals for Providing High Quality Information to Decision Makers.
Material type:
- text
- computer
- online resource
- 9781118959305
- 005.1
- QA76.76.D47 -- .A245 2015eb
Cover -- Title Page -- Copyright -- Contents -- Foreword -- Overview -- Acknowledgments -- About the Author -- Part I Understanding the Estimation Process -- Chapter 1 The Estimation Process: Phases and Roles -- 1.1 Introduction -- 1.2 Generic Approaches in Estimation Models: Judgment or Engineering? -- 1.2.1 Practitioner's Approach: Judgment and Craftsmanship -- 1.2.2 Engineering Approach: Modest-One Variable at a Time -- 1.3 Overview of Software Project Estimation and Current Practices -- 1.3.1 Overview of an Estimation Process -- 1.3.2 Poor Estimation Practices -- 1.3.3 Examples of Poor Estimation Practices -- 1.3.4 The Reality: A Tally of Failures -- 1.4 Levels of Uncertainty in an Estimation Process -- 1.4.1 The Cone of Uncertainty -- 1.4.2 Uncertainty in a Productivity Model -- 1.5 Productivity Models -- 1.6 The Estimation Process -- 1.6.1 The Context of the Estimation Process -- 1.6.2 The Foundation: The Productivity Model -- 1.6.3 The Full Estimation Process -- 1.7 Budgeting and Estimating: Roles and Responsibilities -- 1.7.1 Project Budgeting: Levels of Responsibility -- 1.7.2 The Estimator -- 1.7.3 The Manager (Decision-Taker and Overseer) -- 1.8 Pricing Strategies -- 1.8.1 Customers-Suppliers: The Risk Transfer Game in Estimation -- 1.9 Summary - Estimating Process, Roles, and Responsibilities -- Exercises -- Term Assignments -- Chapter 2 Engineering and Economics Concepts for Understanding Software Process Performance -- 2.1 Introduction: The Production (Development) Process -- 2.2 The Engineering (and Management) Perspective on a Production Process -- 2.3 Simple Quantitative Process Models -- 2.3.1 Productivity Ratio -- 2.3.2 Unit Effort (or Unit Cost) Ratio -- 2.3.3 Averages -- 2.3.4 Linear and Non-Linear Models -- 2.4 Quantitative Models and Economics Concepts -- 2.4.1 Fixed and Variable Costs.
2.4.2 Economies and Diseconomies of Scale -- 2.5 Software Engineering Datasets and Their Distribution -- 2.5.1 Wedge-Shaped Datasets -- 2.5.2 Homogeneous Datasets -- 2.6 Productivity Models: Explicit and Implicit Variables -- 2.7 A Single and Universal Catch-All Multidimensional Model or Multiple Simpler Models? -- 2.7.1 Models Built from Available Data -- 2.7.2 Models Built on Opinions on Cost Drivers -- 2.7.3 Multiple Models with Coexisting Economies and Diseconomies of Scale -- Exercises -- Term Assignments -- Chapter 3 Project Scenarios, Budgeting, and Contingency Planning -- 3.1 Introduction -- 3.2 Project Scenarios for Estimation Purposes -- 3.3 Probability of Underestimation and Contingency Funds -- 3.4 A Contingency Example for a Single Project -- 3.5 Managing Contingency Funds at the Portfolio Level -- 3.6 Managerial Prerogatives: An Example in the AGILE Context -- 3.7 Summary -- Further Reading: A Simulation for Budgeting at the Portfolio Level -- Exercises -- Term Assignments -- Part II Estimation Process: What Must be Verified? -- Chapter 4 What Must be Verified in an Estimation Process: An Overview -- 4.1 Introduction -- 4.2 Verification of the Direct Inputs to An Estimation Process -- 4.2.1 Identification of the Estimation Inputs -- 4.2.2 Documenting the Quality of These Inputs -- 4.3 Verification of the Productivity Model -- 4.3.1 In-House Productivity Models -- 4.3.2 Externally Provided Models -- 4.4 Verification of the Adjustment Phase -- 4.5 Verification of the Budgeting Phase -- 4.6 Re-Estimation and Continuous Improvement to the Full Estimation Process -- Further Reading: The Estimation Verification Report -- Exercises -- Term Assignments -- Chapter 5 Verification of the Dataset Used to Build the Models -- 5.1 Introduction -- 5.2 Verification of DIRECT Inputs -- 5.2.1 Verification of the Data Definitions and Data Quality.
5.2.2 Importance of the Verification of the Measurement Scale Type -- 5.3 Graphical Analysis - One-Dimensional -- 5.4 Analysis of the Distribution of the Input Variables -- 5.4.1 Identification of a Normal (Gaussian) Distribution -- 5.4.2 Identification of Outliers: One-Dimensional Representation -- 5.4.3 Log Transformation -- 5.5 Graphical Analysis - Two-Dimensional -- 5.6 Size Inputs Derived from a Conversion Formula -- 5.7 Summary -- Further Reading: Measurement and Quantification -- Exercises -- Term Assignments -- Exercises-Further Reading Section -- Term Assignments-Further Reading Section -- Chapter 6 Verification of Productivity Models -- 6.1 Introduction -- 6.2 Criteria Describing the Relationships Across Variables -- 6.2.1 Simple Criteria -- 6.2.2 Practical Interpretation of Criteria Values -- 6.2.3 More Advanced Criteria -- 6.3 Verification of the Assumptions of the Models -- 6.3.1 Three Key Conditions Often Required -- 6.3.2 Sample Size -- 6.4 Evaluation of Models by Their Own Builders -- 6.5 Models Already Built-Should You Trust Them? -- 6.5.1 Independent Evaluations: Small-Scale Replication Studies -- 6.5.2 Large-Scale Replication Studies -- 6.6 Lessons Learned: Distinct Models by Size Range -- 6.6.1 In Practice, Which is the Better Model? -- 6.7 Summary -- Exercises -- Term Assignments -- Chapter 7 Verification of the Adjustment Phase -- 7.1 Introduction -- 7.2 Adjustment Phase in the Estimation Process -- 7.2.1 Adjusting the Estimation Ranges -- 7.2.2 The Adjustment Phase in the Decision-Making Process: Identifying Scenarios for Managers -- 7.3 The Bundled Approach in Current Practices -- 7.3.1 Overall Approach -- 7.3.2 Detailed Approach for Combining the Impact of Multiple Cost Drivers in Current Models -- 7.3.3 Selecting and Categorizing Each Adjustment: The Transformation of Nominal Scale Cost Drivers into Numbers.
7.4 Cost Drivers as Estimation Submodels! -- 7.4.1 Cost Drivers as Step Functions -- 7.4.2 Step Function Estimation Submodels with Unknown Error Ranges -- 7.5 Uncertainty and Error Propagation -- 7.5.1 Error Propagation in Mathematical Formulas -- 7.5.2 The Relevance of Error Propagation in Models -- Exercises -- Term Assignments -- Part III Building Estimation Models: Data Collection and Analysis -- Chapter 8 Data Collection and Industry Standards: The ISBSG Repository -- 8.1 Introduction: Data Collection Requirements -- 8.2 The International Software Benchmarking Standards Group -- 8.2.1 The ISBSG Organization -- 8.2.2 The ISBSG Repository -- 8.3 ISBSG Data Collection Procedures -- 8.3.1 The Data Collection Questionnaire -- 8.3.2 ISBSG Data Definitions -- 8.4 Completed ISBSG Individual Project Benchmarking Reports: Some Examples -- 8.5 Preparing to Use the ISBSG Repository -- 8.5.1 ISBSG Data Extract -- 8.5.2 Data Preparation: Quality of the Data Collected -- 8.5.3 Missing Data: An Example with Effort Data -- Further Reading 1: Benchmarking Types -- Further Reading 2: Detailed Structure of the ISBSG Data Extract -- Exercises -- Term Assignments -- Chapter 9 Building and Evaluating Single Variable Models -- 9.1 Introduction -- 9.2 Modestly, One Variable at a Time -- 9.2.1 The Key Independent Variable: Software Size -- 9.2.2 Analysis of the Work-Effort Relationship in a Sample -- 9.3 Data Preparation -- 9.3.1 Descriptive Analysis -- 9.3.2 Identifying Relevant Samples and Outliers -- 9.4 Analysis of the Quality and Constraints of Models -- 9.4.1 Small Projects -- 9.4.2 Larger Projects -- 9.4.3 Implication for Practitioners -- 9.5 Other Models by Programming Language -- 9.6 Summary -- Exercises -- Term Assignments -- Chapter 10 Building Models with Categorical Variables -- 10.1 Introduction -- 10.2 The Available Dataset.
10.3 Initial Model with a Single Independent Variable -- 10.3.1 Simple Linear Regression Model with Functional Size Only -- 10.3.2 Nonlinear Regression Models with Functional Size -- 10.4 Regression Models with Two Independent Variables -- 10.4.1 Multiple Regression Models with Two Independent Quantitative Variables -- 10.4.2 Multiple Regression Models with a Categorical Variable: Project Difficulty -- 10.4.3 The Interaction of Independent Variables -- Exercises -- Term Assignments -- Chapter 11 Contribution of Productivity Extremes in Estimation -- 11.1 Introduction -- 11.2 Identification of Productivity Extremes -- 11.3 Investigation of Productivity Extremes -- 11.3.1 Projects with Very Low Unit Effort -- 11.3.2 Projects with Very High Unit Effort -- 11.4 Lessons Learned for Estimation Purposes -- Exercises -- Term Assignments -- Chapter 12 Multiple Models from a Single Dataset -- 12.1 Introduction -- 12.2 Low and High Sensitivity to Functional Size Increases: Multiple Models -- 12.3 The Empirical Study -- 12.3.1 Context -- 12.3.2 Data Collection Procedures -- 12.3.3 Data Quality Controls -- 12.4 Descriptive Analysis -- 12.4.1 Project Characteristics -- 12.4.2 Documentation Quality and Its Impact on Functional Size Quality -- 12.4.3 Unit Effort (in Hours) -- 12.5 Productivity Analysis -- 12.5.1 Single Model with the Full Dataset -- 12.5.2 Model of the Least Productive Projects -- 12.5.3 Model of the Most Productive Projects -- 12.6 External Benchmarking with the ISBSG Repository -- 12.6.1 Project Selection Criteria and Samples -- 12.6.2 External Benchmarking Analysis -- 12.6.3 Further Considerations -- 12.7 Identification of the Adjustment Factors for Model Selection -- 12.7.1 Projects with the Highest Productivity (i.e., the Lowest Unit Effort) -- 12.7.2 Lessons Learned -- Exercises -- Term Assignments.
Chapter 13 Re-Estimation: A Recovery Effort Model.
Description based on publisher supplied metadata and other sources.
Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2024. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries.
There are no comments on this title.