Using COCOMO for Software Decisions - from COCOMO II Book, Section 2

Slides:



Advertisements
Similar presentations
Software Cost Estimation
Advertisements

COST ESTIMATION TECHNIQUES AND COCOMO. Cost Estimation Techniques 1-)Algorithmic cost modelling 2-)Expert judgement 3-)Estimation by analogy 4)-Parkinsons.
Evaluating a Software Architecture By Desalegn Bekele.
Cocomo II Constructive Cost Model [Boehm] Sybren Deelstra.
University of Southern California Center for Software Engineering CSE USC COSYSMO: Constructive Systems Engineering Cost Model Barry Boehm, USC CSE Annual.
University of Southern California Center for Software Engineering C S E USC Using COCOMO for Software Decisions - from COCOMO II Book, Section 2.6, 6.5.
COSYSMO Reuse Extension 22 nd International Forum on COCOMO and Systems/Software Cost Modeling November 2, 2007 Ricardo ValerdiGan Wang Garry RoedlerJohn.
May 11, 2004CS WPI1 CS 562 Advanced SW Engineering Lecture #5 Tuesday, May 11, 2004.
Introduction Wilson Rosa, AFCAA CSSE Annual Research Review March 8, 2010.
COSYSMO Reuse Extension 22 nd International Forum on COCOMO and Systems/Software Cost Modeling November 2, 2007 Ricardo ValerdiGan Wang Garry RoedlerJohn.
SOFTWARE PROJECT MANAGEMENT AND COST ESTIMATION © University of LiverpoolCOMP 319slide 1.
Measuring Dollar Savings from Software Process Improvement with COCOMO II Betsy Clark Software Metrics Inc. October 25, 2001 Acknowledgment: This presentation.
COSYSMO Reuse Extension COSYSMO Workshop – USC CSSE Annual Research Review March 17, 2008 Ricardo ValerdiGan Wang Garry RoedlerJohn Rieff Jared Fortune.
April 27, 2004CS WPI1 CS 562 Advanced SW Engineering Lecture #3 Tuesday, April 27, 2004.
Chapter 23 – Project planning Part 2. Estimation techniques  Organizations need to make software effort and cost estimates. There are two types of technique.
Cost Management Week 6-7 Learning Objectives
Information System Economics Software Project Cost Estimation.
COCOMO-SCORM: Cost Estimation for SCORM Course Development
Chapter 4 Components of the Software Quality Assurance System
Chapter 5 : Initiating and Planning Systems Development Projects.
By K Gopal Reddy.  Metrics in software are of two types.direct and indirect.  Function points as indirect metrics.  Function points are used to measure.
University of Southern California Center for Systems and Software Engineering Cost Estimation with COCOMO II Barry Boehm CS 510, Fall 2015 v3: Slide 10.
University of Southern California Center for Software Engineering C S E USC Using COCOMO for Software Decisions - from COCOMO II Book, Section 2.6 Barry.
University of Southern California Center for Software Engineering C S E USC Using COCOMO for Software Decisions - from COCOMO II Book, Section 2.6 Barry.
Software Project Planning Part II. Troutman's Postulates Profanity is the one language understood by all programmers. Not until a program has been in.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 26 Slide 1 Software cost estimation 2.
Estimation using COCOMO
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.
The COCOMO model An empirical model based on project experience. Well-documented, ‘independent’ model which is not tied to a specific software vendor.
Copyright © , Dennis J. Frailey, All Rights Reserved Day 2, Part 1, Page 1 1/11/2004 Day 2, Part 1 Estimating Software Size Section 2 Calculating.
Cost Estimation Cost Estimation “The most unsuccessful three years in the education of cost estimators appears to be fifth-grade arithmetic. »Norman.
+ Incremental Development Productivity Decline Ramin Moazeni, Daniel Link.
1 Using COCOMO for Software Decisions - from COCOMO II Book, Section 2.6, 6.5 LiGuo Huang Computer Science and Engineering Southern Methodist University.
(8) Potential required for planning with management Top-Down Estimating Method: Top-down estimating method is also called Macro Model. Using it, estimation.
COCOMO Software Cost Estimating Model Lab 4 Demonstrator : Bandar Al Khalil.
1 Agile COCOMO II: A Tool for Software Cost Estimating by Analogy Cyrus Fakharzadeh Barry Boehm Gunjan Sharman SCEA 2002 Presentation University of Southern.
THE FAMU-CIS ALUMNI SYSTEM
Using COCOMO for Software Decisions - from COCOMO II Book, Section 2.6
SOFTWARE PROJECT MANAGEMENT AND COST ESTIMATION
Productivity Data Analysis and Issues
Managing the System PPT SOURCE : Shari L. Pfleeger Joann M. Atlee.
Metrics and Terms SLOC (source lines of code)
Cost Estimation with COCOMO II
Tutorial: Software Cost Estimation Tools – COCOMO II and COCOTS
COCOMO II Overview CSCI 510 Fall 2013 (c) USC CSSE.
COCOMO II Overview Barry Boehm CSCI 510 Fall 2011 (c) USC CSSE
COCOMO II Overview Barry Boehm CSCI (c) USC CSSE 2018/9/19.
Constructive Cost Model
COCOMO II Overview Ray Madachy CSCI 510
SOFTWARE PROJECT MANAGEMENT AND COST ESTIMATION
SLOC and Size Reporting
Cost Estimation with COCOMO II
COCOMO Model Basic.
Using COCOMO for Software Decisions - from COCOMO II Book, Section 2
Cost Estimation with COCOMO II
Cost Estimation with COCOMO II
Cost Estimation with COCOMO II
COCOMO 2 COCOMO 81 was developed with the assumption that a waterfall process would be used and that all software would be developed from scratch. Since.
COCOMO II Overview LiGuo Huang Computer Science and Engineering
Cost Estimation with COCOMO II
Cost Estimation with COCOMO II
Ramin Moazeni Winsor Brown Barry Boehm
Using COCOMO for Software Decisions - from COCOMO II Book, Section 2.6
Multi-Build Software Cost Estimation Using COINCOMO
COCOMO II Overview Marilee Wheaton CSCI 510.
Center for Software and Systems Engineering,
Using COCOMO for Software Decisions - from COCOMO II Book, Section 2.6
Using COCOMO for Software Decisions - from COCOMO II Book, Section 2
Midterm 1 Content Q&A - COCOMO-Related Questions -- ICSM-Related Questions Barry Boehm CS 510, Fall 2014.
Presentation transcript:

Using COCOMO for Software Decisions - from COCOMO II Book, Section 2 Barry Boehm CS 510 Fall 2013

Outline COCOMO II Objective: Decision Support Example Company: UST, Inc. Auto Parts Frequent Software Decisions Investment; Business Case Analysis Setting Project Budgets and Schedules Performing Tradeoff Analysis Cost Risk Management Development vs. Reuse Legacy Software Phaseout Software Process Improvement Software Organizational Decisions Conclusions

UST, Inc. Auto Parts Company Large manufacturing company 200-person software organization Considering development of manufacturing control system (MCS) 100 KSLOC; nominal drivers ratings; $8K/PM Scaling exponent E=0.91+0.01(3.72+3.04+4.24+3.29+4.68)=1.10 Estimated effort and cost Effort=2.94*100^1.10 = 466 PM Cost = 466 PM * $8K/PM = $3.728M

UST, Inc. Auto Parts Company (Cont.) Plus Inception (6%) and Transition (12%) costs Acquisition Cost = $3.728*1.18 = $4.4M Annual Maintenance Cost Annual Software Change = 100*(0.20) = 20KSLOC Cost = 2.94*(20)^1.10*$8K=$635K

MCS Business Case Analysis MCS estimate to reduce manufacturing inventory 20% Enables more just-in-time arrival of suppliers components Current Manufacturing inventory valued at $80M Inventory carrying costs average around 25% Inventory control, property taxes, capital costs, etc. MCS savings in reduced inventory carrying costs = ($80)*(0.25)*(0.2)=$4M/Year MCS savings subtracts software maintenance cost =$4M-0.635M=$3.365M 5-year-ROI=5*$3.365M/$4.4M = 3.8 Well worth the investment

Setting Project Budget and Schedules TDEV=3.67*(PM)^[0.28+0.2*(E-0.91)] = 3.67*(466)^0.318 = 26 month Constructive phase schedule and effort (Table A.5) Effort=0.76*(466)=354 PM; Schedule=0.625*26=16.25 Month; Staff Level = 354/16.25=21.8 people Staff needed for construction activities (Table A, 11) Requirements = 21.8*0.08=1.7 people Product Design =21.8*0.16=3.5 people

Performing Tradeoff Analysis MCS Life-cycle Costs vs. Reliability Level RELY Rating Very Low Low Nominal High Very High Dev. Effort Mult. 0.82 0.92 1.0 1.10 1.26 Dev. Cost ($K) 3608 4048 4400 4940 5544 Maint. Effort Mult. 1.35 1.15 0.98 Maint. Cost (*2 for Nominal) 11,880 10,120 8,800 8,624 9,680 Life-cycle Cost 15,488 14,168 13,200 13,464 15,224

Value-Based Tradeoff Analysis Cost of Downtime = $38*(Downtime) RELY Rating Very Low Low Nominal High Very High Mean Time to Failure (hr) 1 10 300 10,000 300,000 Mean Time to Repair (hr) Avail= MTBF/(MTBF+MTTR) .50 .90 .997 0.9999 0.999997 Downtime .10 .003 0.0001 0.000003 Cost=$3B*Downtime $1500M $300M $10M $0.3M $0.01M SW Life-cycle Cost $15.5M $14.2M $13.2M $13.5M $15.2M Ownership Cost $1515M $314M $23.2M $13.8M

Outline COCOMO II Objective: Decision Support Example Company: UST, Inc. Auto Parts Frequent Software Decisions Investment; Business Case Analysis Setting Project Budgets and Schedules Performing Tradeoff Analysis Cost Risk Management Development vs. Reuse Legacy Software Phaseout Software Process Improvement Software Organizational Decisions Conclusions

Cost Risk Management Risk reserve for requirement volatility Estimate as high as 15% Resulting cost = 2.94*(100+15)^1.10*($8k)=$5130k Risk reserve = $5130k – 4400k = $730k Risk reserve for less experienced personal Average applications, Platform experience ½-level lower Resulting cost = $4400k*(1.05)*(1.045)=$4828k Risk reserve = $428k

Development vs. Reuse Possibility of reusing a 40 KSLOC component Reuse parameters not a strong match % design modified DM=40 % code modified CM=50 % integration redone IM=100 Understanding penalty SU=50 SW unfamiliarity UMFM=1.0 Adaptation of assessment AA =5% Equivalent new lines of code = 40k*[(0.4*40+0.3*50+0.3*100)/100+(5+50*1.0)/100] = 40k * (0.61 + 0.55) = 46.4KSLOC Not a good decision to reuse

Legacy Software Phaseout Candidate: Corporate property accounting system 50K COBOL program; 20% annual charge (10K) SU = 50: poorly structured, documented UNFM = 0.7: few people familiar with code Equivalent annual maintenance size = 10KSLOC * [1 + (50*0.7)/100] = 13.5 KSLOC/year 3 years: 40.5K SLOC Replacement could use MCS GUI, DBMS Only 20 KSLOC of new software needed SU = 25: better structured, documented UNFM = 0.4: New developers familiar with the code 20KSLOC * [1+ (25*0.4)/100] = 4.4 KSLOC/year 3 years + development = 3*4.4+20 = 33.2 KSLOC Better to phase out and replace legacy SW

Software Process Improvement UST currently at Process maturity Level 2 Planning & control, config. Management, guality assurance Cost to achieve level 3 (process group, training, product engr.) Process group: (2yr)*(4 persons)*($96K/yr) = $768K Training: (200 persons)*(3weeks)*($96K/Ω) = $1108K Contingency = $124K; Total = 268+1108+124 = $2000K Benefit: scale exponent reduced by .0468-.0312=.0156, to 1.10 – 0.0156 = 1.0844 From 100^1.10 = 158.5 to 100^1.0844 = 147.5, or 7% less effort Annual savings = (200 persons)*(96K/yr)(.07)=$1344K 5 year ROI = [5*$1344K-$2000K]/$2000K = 2.36 Again, well worth the investment

Conclusions COCOMO II is useful in many decision situations Support objective discussion and negotiation Most analysis can be done with hand calculator Simpler, easier to explain Usage builds shared understanding and trust