Based on Chapter 5 of the book [McConnell 2006]

Slides:



Advertisements
Similar presentations
Statistics Are Fun! Analysis of Variance
Advertisements

BCOR 1020 Business Statistics Lecture 21 – April 8, 2008.
RESOURCE MEASUREMENT: PRODUCTIVITY, TEAMS AND TOOLS.
University of Southern California Center for Systems and Software Engineering © 2009, USC-CSSE 1 An Analysis of Changes in Productivity and COCOMO Cost.
So are how the computer determines the size of the intercept and the slope respectively in an OLS regression The OLS equations give a nice, clear intuitive.
Measures of Central Tendency
Cost Estimation Van Vliet, chapter 7 Glenn D. Blank.
University of Toronto Department of Computer Science © 2001, Steve Easterbrook CSC444 Lec22 1 Lecture 22: Software Measurement Basics of software measurement.
© The McGraw-Hill Companies, Software Project Management 4th Edition Software effort estimation Chapter 5.
AP Statistics Chapters 0 & 1 Review. Variables fall into two main categories: A categorical, or qualitative, variable places an individual into one of.
1 ECE 453 – CS 447 – SE 465 Software Testing & Quality Assurance Lecture 22 Instructor Paulo Alencar.
Project Management Estimation. LOC and FP Estimation –Lines of code and function points were described as basic data from which productivity metrics can.
Estimating Copyright © 2006 Patrick McDermott UC Berkeley Extension McConnell, Steve, Software Estimation: Demystifying the Black Art,
A Brief Introduction to COCOMO Hossein Saiedian EECS810: Software Engineering.
Management & Development of Complex Projects Course Code MS Project Management Perform Qualitative Risk Analysis Lecture # 25.
Lecture 4 Software Metrics
1 / 23 CS 709B Advanced Software Project Management and Development Software Estimation - II Based on Chapter 4 of the book [McConnell 2006] Steve McConnell,
Cost Estimation What is estimated? –resources (humans, components, tools) –cost (person-months) –schedule (months) Why? –Personnel allocation –Contract.
Project Estimation Model By Deepika Chaudhary. Factors for estimation Initial estimates may have to be made on the basis of a high level user requirements.
Objectives 2.1Scatterplots  Scatterplots  Explanatory and response variables  Interpreting scatterplots  Outliers Adapted from authors’ slides © 2012.
This material is approved for public release. Distribution is limited by the Software Engineering Institute to attendees. Sponsored by the U.S. Department.
Software Project Estimation IMRAN ASHRAF
University of Southern California Center for Systems and Software Engineering © 2010, USC-CSSE 1 Trends in Productivity and COCOMO Cost Drivers over the.
Function Points Synthetic measure of program size used to estimate size early in the project Easier (than lines of code) to calculate from requirements.
Estimating “Size” of Software There are many ways to estimate the volume or size of software. ( understanding requirements is key to this activity ) –We.
INFO 637Lecture #71 Software Engineering Process II Product Implementation INFO 637 Glenn Booker.
Week 6 Dr. Jenne Meyer.  Article review  Rules of variance  Keep unaccounted variance small (you want to be able to explain why the variance occurs)
Rating Very Very Extra Cost Drivers Low Low Nominal High High High Product Attributes Required software reliability Database size.
1 Grade 3-8 English Language Arts Results Student Growth Tracked Over Time: 2006 – 2009 Grade-by-grade testing began in The tests and data.
Chapter 9: Introduction to the t statistic. The t Statistic The t statistic allows researchers to use sample data to test hypotheses about an unknown.
CHAPTER 3 – Numerical Techniques for Describing Data 3.1 Measures of Central Tendency 3.2 Measures of Variability.
(8) Potential required for planning with management Top-Down Estimating Method: Top-down estimating method is also called Macro Model. Using it, estimation.
Chapter 8: Estimating with Confidence
Chapter 8: Estimating with Confidence
Literature Review: Conception to Completion
Basic Practice of Statistics - 5th Edition
The Effects on Development
Modified from Sharon Guffy
Step 4: Calculate TAM for Beachhead Market
Estimating with PROBE II
Constructive Cost Model
Data Analysis: Levels of measurement
The computation of the first estimates
Competition and Concentration
More on Estimation In general, effort estimation is based on several parameters and the model ( E= a + b*S**c ): Personnel Environment Quality Size or.
Summary descriptive statistics: means and standard deviations:
Cost Estimation Van Vliet, chapter 7 Glenn D. Blank.
Or are they really guidelines?
Chapter 13 – Economic Performance
What do they mean and how can I use them?
Chapter 8: Estimating with Confidence
Software Cost Estimation
Chapter 8: Estimating with Confidence
COnstructive COst MOdel
Chapter 8: Estimating with Confidence
Psych 231: Research Methods in Psychology
Part 4: Margins of Error Frank Porell
Chapter 8: Estimating with Confidence
CHAPTER 2: Basic Summary Statistics
Chapter 8: Estimating with Confidence
Software Effort Estimation
Chapter 8: Estimating with Confidence
BEC 30325: MANAGERIAL ECONOMICS
Chapter 8: Estimating with Confidence
Chapter 8: Estimating with Confidence
Chapter 8: Estimating with Confidence
Chapter 8: Estimating with Confidence
Chapter 8: Estimating with Confidence
Chapter 8: Estimating with Confidence
Objectives 6.1 Estimating with confidence Statistical confidence
Presentation transcript:

Based on Chapter 5 of the book [McConnell 2006] CS 709B Advanced Software Project Management and Development Software Estimation - III Based on Chapter 5 of the book [McConnell 2006] Steve McConnell, Software Estimation: Demystifying the Black Art, Microsoft Press, 2006 May 3, 2012

Outline Estimate Influences Project Size Kind of Software Being Developed Personnel Factors Programming Language Other Project Influences

Project Size Size can be measured in Project size is the single most significant contributor to project costs, effort, and schedule Size can be measured in Lines of code (LOC) Function points Number of requirements, etc. Organizations don’t pay attention and: Estimate costs, effort and schedule without not knowing how big the software will be Do not adjust costs, effort and schedule when the software size is consciously increased

Project Size

Project Size In software, larger the groups of people involved, larger the communication overhead

Project Size The consequence is software’s diseconomy of scale Outside software, an economy of scale implies that the bigger you get (e.g., a plant), the smaller the cost per unit produced becomes In software, on the contrary, the larger the system becomes, the greater the cost per each unit will be

Project Size The diseconomy of scale in smaller projects

Project Size Aggravating factors in larger projects: project conditions that degrade productivity more quickly than average as project size increases

Project Size Nominal effort: 10K to 100K LOC: 13x Worst case growth: 10K to 100K LOC: 17x 10K to 1000K LOC: 300x

Project Size In conclusion, effort scales up exponentially with size (not linearly) The main implication of diseconomies of scale is that you cannot estimate correctly a new project based on past projects if they differ significantly in size To compute the impact of diseconmies of scale, use software tools, e.g., the author’s Construx Estimate (free download) In similar size projects the diseconomies of scale can be however ignored

Project Size About the same size projects are defined as being a factor of 3 from largest to smallest. In such projects you can safely use a ratio-based estimate, such as LOC/staff month

Kind of Software

Kind of Software Accounting for the industry you are working in: Use results in Table 5-2 as a starting point. Note ranges are large, with a typical factor of 10 between high and low ends Use an estimating model such as Cocomo II, but remember not to use to many control knobs Use historical data from your organization (best approach) The kind of software you are developing is the second-most significant contributor to project effort and schedule

Personnel Factors Personnel factors can swing a project estimate by as much as factor of 22 (ranked worst on right vs. ranked right on left, on all categories)

Personnel Factors Numerous studies since 1960s have shown 10:1 to 20:1 differences in individual and team performances Implications: You cannot accurately estimate a project if you don’t have some idea of who will be doing the work Most accurate estimations are when you know who specifically will be doing the work that you estimate Within a particular organization there is not that much variation though (less than 10:1) because both top-tier and bottom-tier developers tend to migrate towards groups of similar skills

Programming Language The programming language used affects the estimates in four ways: Team’s experience with the language has an impact of about 40% on the overall productivity rate Some languages generate more functionality per LOC than others (Table 5-3) The associated tool support and environment can vary effort up to 50% (from best to worst) Interpreted languages tend to be more productive (about 2 times) than compiled languages

Programming Language

Other Factors (Cocomo II) Subjectivity creeping in Cocomo II is due more to “usage failure” than to “method failure” Cocomo II has conducted the most statistically rigorous analysis of factors incorporated Cocomo II’s adjustment factors help gain an understanding of different project influences The method includes Effort Multipliers (EMs) Table 5-4 contains EMs from “Very Low” (e.g. 1.22) to “Very High” (e.g. 0.81) The Influence Factor is the ratio Very Low/Very High (e.g., 1.51) and indicates the degree of the factor’s influence on the overall estimate

Other Factors (Cocomo II)

Other Factors (Cocomo II)

Other Factors (Cocomo II)

Other Factors (Cocomo II)

Other Factors (Cocomo II)