Software project estimation : the fundamentals for providng high quality information to decision makers / Alain Abran
- Author:
- Abran, Alain, 1949-
- Published:
- Hoboken, New Jersey : Wiley : IEEE, [2015]
- Physical Description:
- 1 online resource
- Access Online:
- ezaccess.libraries.psu.edu
- Contents:
- Machine generated contents note: 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 -- 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 -- 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 -- 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 -- 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 -- 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 -- 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 -- 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 -- 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 -- 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 -- 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 -- 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 -- 13.Re-Estimation: A Recovery Effort Model -- 13.1.Introduction -- 13.2.The Need for Re-Estimation and Related Issues -- 13.3.The Recovery Effort Model -- 13.3.1.Key Concepts -- 13.3.2.Ramp-Up Process Losses -- 13.4.A Recovery Model When a Re-Estimation Need is Recognized at Time T > 0 -- 13.4.1.Summary of Recovery Variables -- 13.4.2.A Mathematical Model of a Recovery Course in Re-Estimation -- 13.4.3.Probability of Underestimation -p(u) -- 13.4.4.Probability of Acknowledging the Underestimation on a Given Month -p(t) -- Exercises -- Term Assignments.
- Subject(s):
- ISBN:
- 9781118959312 electronic bk.
1118959310 electronic bk.
9781118959305 (Adobe PDF)
1118959302 (Adobe PDF)
9781118959329 (ePub)
1118959329 (ePub)
9781118954089 (pbk.)
1118954084 (pbk.) - Note:
- AVAILABLE ONLINE TO AUTHORIZED PSU USERS.
- Bibliography Note:
- Includes bibliographical references (pages 253-256) and index.
View MARC record | catkey: 15669189