Presentation is loading. Please wait.

Presentation is loading. Please wait.

Copyright 1995-2008, Dennis J. Frailey CSE7315 – Software Project Management CSE7315 M19 - Version 8.01 SMU CSE 7315 Planning and Managing a Software Project.

Similar presentations


Presentation on theme: "Copyright 1995-2008, Dennis J. Frailey CSE7315 – Software Project Management CSE7315 M19 - Version 8.01 SMU CSE 7315 Planning and Managing a Software Project."— Presentation transcript:

1 Copyright 1995-2008, Dennis J. Frailey CSE7315 – Software Project Management CSE7315 M19 - Version 8.01 SMU CSE 7315 Planning and Managing a Software Project Module 19 Some Popular Effort Estimation Models

2 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 2 Objectives of This Module  To describe the Intermediate Cocomo estimating model  To discuss other popular estimating models

3 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 3 The Big Picture for Cost Estimating Estimate Size Estimate Effort and Cost Estimate Schedule Evaluate Source Information Statement of Work Requirements Constraints Standards Processes History etc. WBSSize Effort & Cost Schedule OK Complete Detailed Planning Revise & Negotiate Not OK

4 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 4 Intermediate Cocomo 1 Where where EAF = E 1 *E 2 *...*E n E i s are effort multipliers corresponding to a set of common cost drivers. –The nominal value of each E i = 1. –E i = 1 implies the cost driver does not apply –E i > 1 implies increased cost –E i < 1 implies decreased cost Effort = EAF * a * Size b 1) This model is often known as Cocomo 81

5 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 5 Effort Multipliers  Typical values range between 0.6 & 1.66  Preset values are established for each factor  All Cocomo multipliers together can affect cost and schedule estimates by 10 times or more!

6 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 6 Typical Table of Effort Multipliers

7 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 7 EAF Effort Adjustment Factor  EAF is the product of the effort multipliers  A value of 1 would represent a relatively easy software effort, perhaps with no cost drivers

8 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 8 EAF Effort Adjustment Factor (continued)  A value of 1 - 1.5 is typical today for a commercial software effort  A value of 1.5 - 2.0 is typical today for a real-time effort or a government project

9 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 9 EAF Has Improved Over the Years  The values typically reported by software projects were once a lot larger (in the 3-4 range), but due to improvements in practices and processes, they have gotten a lot better.

10 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 10 Intermediate Cocomo - “a” & “b” The “mode” is the general type of software Effort = EAF * a * Size b

11 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 11 Intermediate Cocomo Software Types (Modes) Organic –Fairly easy software –software development team is familiar with application, language, and tools. –Typically from 2-50 KLOC Semi-Detached –Average software, average team –Typically 50-300 KLOC

12 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 12 Intermediate Cocomo Software Types (Modes) (continued) Embedded –Severe constraints, real time, etc. –No stated size range, but model is known to fail under 10 KLOC NOTE: the origin of the names is obscure, and not considered significant, even by Barry Boehm, who invented Cocomo.

13 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 13 Cocomo II Extension  In Cocomo II, there are formulas based on characteristics of the application that allow you to estimate the “a” and “b” values more precisely.  But the best way is always to calibrate to your own data

14 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 14  Cocomo only accounts for the main tasks of software development.  It also includes certain amounts of management, CM, and QA  In Cocomo II, the latter amounts are larger than in older versions System Analysis Software Requirements System Int &Test Software Design Software Code Software Int &Test Tasks Included in Cocomo

15 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 15  Cocomo does not include –System level tasks –Software requirements definition and analysis –System integration and test  Including software support of this activity –Management above the software project level System Analysis Software Requirements System Int &Test Software Design Software Code Software Int &Test Tasks Excluded From Cocomo

16 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 16 Division of Labor (Effort) Cocomo Assumes: Effort is divided as: 15-20% Design 50-65% Code and Unit Test 20-30% Integration and Test  These are ranges  You must determine your values –The only way to tell is to measure

17 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 17 Remember, Cocomo Excludes Requirements Analysis and System Integration If you add 20% to the total for requirements and integration support, it becomes (roughly): 15-17% Requirements Analysis 10-15% Design 35-50% Code and Unit Test 15-25% Integration and Test

18 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 18 The Frailey Percent Question  If you read that “25%” of the effort is devoted to some function, ask yourself the “Frailey Percent Question”: “25% of WHAT?”  25% of total project effort?  25% of technical development effort?  25% of software development effort?  25% of programming effort?  etc.

19 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 19 Assumptions for Time  The percent of time spent in each process phase is different from the percent of effort  The percent of time is more heavily tilted toward requirements analysis and design –You typically have fewer people doing requirements and design than you have in later phases

20 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 20 Percentages for Time  Specifics depend on the process being used  Typical numbers for time: 15-25% Requirements 25-30% Design 30-45% Code 10-20% Integration and Test

21 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 21 Various Sources Report Different Ratios for Time Grady and Caswell (of Hewlett-Packard) compare five different sources (p34, 35 - see reference at end of module)  Differences stem from: –Type of software being developed –Schedule compression –Organizational differences –Process and Methods

22 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 22 Hewlett-Packard Recommendations  Measure actuals  Count everything (overtime, etc.)

23 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 23 Process, Methods, and Tools Tools COSTAR, REVIC SLIM SOFTCOST Methods (Models) COCOMO, PUTNAM, ET. AL. Process (Purpose) EFFORT ESTIMATING

24 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 24 Cocomo Tool Information CoCo Pro Available through ICONIX Software Engineering Inc. For more information on CoCoPro: HTTP://WWW.ICONIXSW.COM/ Spec_Sheets/CoCoPro.html

25 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 25 Cocomo Tool Information (continued) REVIC - A free tool Available through USAF Cost Analysis Agency SOFTEST - an updated version For more information on REVIC or SOFTEST: http://sepo.spawar.navy.mil Or you may have to search the web.

26 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 26 Cocomo Tool Information (continued)  SOFTCOST-R / COSTAR  Available through Resource Calculations Inc. For more information: http://www.softstarsystems.com

27 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 27 Additional Cocomo II Information Under development at University of Southern California, Cocomo II project. For More Information on Cocomo II: HTTP://SUNSET.USC.EDU/ research/COCOMOII/index.html For More Information on Cocomo II: HTTP://SUNSET.USC.EDU/ research/COCOMOII/index.html

28 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 28 Other Effort Estimation Models

29 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 29 Architecture of Spreadsheet Model Based Effort Estimate Other Effort Estimates... Historical Size Estimate Software Reuse Analysis Size / Reuse EffortEffort and Cost Schedules Final Effort Estimate Productivity Based Effort Estimate Generic Schedule Effort Schedule Labor Schedule Cost Schedule Other Size Estimates... Final Size Estimate Delphi Size Estimate

30 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 30 Other Popular Cost/Schedule Estimation Models  Putnam’s Model -- (SLIM)  Shen and Conti -- (COPMO)  Lockheed/Martin -- (Price-S)  Galorath, Inc -- (SEER-SEM)

31 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 31 SLIM (1) Size is measured in lines of code (or can be thousands if C k is adjusted) Effort is measured in staff-years C k is a “state of technology” constant, reflecting use of modern practices, team experience, and software development tools. Compare with Cocomo adjustment factors. t is the development time, in years. (1) Putnam, IEEE Trans. on SW Engineering, July, 1978. Size = C k * Effort 1/3 * t 4/3

32 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 32 Other SLIM Information  EFFORT is for entire life cycle, including maintenance  Development Effort =.39 * EFFORT, according to Putnam For more information on SLIM: HTTP://WWW.QSM.COM

33 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 33 Copmo (1) Effort = Programming Effort + Coordination Effort The values of the constants a, b, c, and d must determined by regression analysis on actual project data The important issue here is the impact of staff size on management/coordination effort (1) Conte, S.D., et. al. Software Engineering Metrics and Models. Effort = a + b * Size + c * (Staff) d

34 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 34 Price-S  This is a very complex, proprietary model, based on extensive analysis of many kinds of software projects  The parameters are similar to Cocomo’s adjustment factors, but can be very sensitive  For example, experience level of personnel can affect estimates by 5 times or more

35 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 35 Price-S Additional Information Now supplied by PRICE Systems, a Lockheed- Martin Company The product is called the PRICE S Software Estimating Suite For more information on PRICE-S: HTTP://WWW.PRICESYSTEMS.COM

36 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 36 SEER-SEM  This is a proprietary model, sold by Galorath, Inc., based on analysis of many kinds of software projects  The model also has elements for size estimation and project management  For example, one can use SEER tools to track progress and risks

37 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 37 SEER-SEM Additional Information Galorath, Incorporated El Segundo, California 310-414-3222 For more information on SEER-SEM: HTTP:// www.galorath.com/

38 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 38 Software Maintenance Estimating  Usually this is done in a “bottom up” manner, such as: –Estimated number of changes * average cost per change or –Level of effort (“n” people per year for “m” years -- total cost = n*m)  Sometimes it is done on a “cost per transaction” basis

39 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 39 An Issue with Effort Estimating Methods based on Size  How can you know the size before you have designed the software -- and maybe before you even know its requirements?

40 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 40 Dealing with Uncertain Size Estimates  Generally speaking, you can predict size and cost better after design than you can before it  So re-estimation is a MUST for effective risk management  Methods not based on size, such as wideband delphi or “bottom up” effort estimating, should be considered to supplement size-dependent methods

41 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 41 Grady, Robert B. and Deborah L. Caswell, Software Metrics: Establishing a Company-Wide Program. An Issue with All Effort Estimating Methods  You can manipulate the method to get any answer you want –Grady and Caswell report that typical estimates are 20-25% optimistic, even for experienced estimators –So you need to record your results, learn from your mistakes, and do better the next time

42 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 42 You Need to Track and Adjust Actuals vs. Estimates

43 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 43 Use Several Methods  At the very least, using several methods will increase your chances of being close to the right answer XXX

44 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 44 Remember the Goals of Estimating  Knowledge and insight are the real benefits of using different methods  Comparing the results of several methods will force you to resolve the discrepancies –This forces you to think about the issues –And produces more accurate estimates

45 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 45 Environmental Factors  Each model deals with factors beyond the basic issues of software development –Management –Coordination –Impact of experience –Stability of virtual machines –Etc.  But this may be the least well understood and most significant factor overall

46 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 46 Idealized View of Engineering Activities Verbal component grows with product complexity

47 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 47 Scope of Estimate Project Effort, Purchased Hardware, Purchased Software, Purchased Material, Purchased Services, Facilities, Training, Travel All Project Costs Project Effort System Development, Software Development, Hardware Development, Production, Deployment, Support, Operations, Disposition Software Development Planning, Requirements Specification, Software Development Covered by Estimate Software Development Covered By Estimate Preliminary Design, Detailed Design, Code & Unit Test, Integration & Test Project Effort, Purchased Hardware, Purchased Software, Purchased Material, Purchased Services, Facilities, Training, Travel All Project Costs Project Effort System Development, Software Development, Hardware Development, Production, Deployment, Support, Operations, Disposition Software Development Planning, Requirements Specification, Software Development Covered by Estimate Software Development Covered By Estimate Preliminary Design, Detailed Design, Code & Unit Test, Integration & Test

48 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 48 Module Summary  Intermediate Cocomo combines the Basic Cocomo equation with effort multipliers for cost drivers  Like most models, Cocomo excludes some tasks  Various other models are available  It is best to use several methods, compare results, and iterate your estimates

49 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 49 END OF MODULE 19

50 Copyright 1995-2008, Dennis J. Frailey CSE7315- Software Project Management CSE7315 M19 - Version 8.01 50 References Conte, S.D., et. al. Software Engineering Metrics and Models. Benjamin Cummings, 1986, p314. Grady, Robert B. and Deborah L. Caswell, Software Metrics: Establishing a Company- Wide Program. Englewood Cliffs, N.J., Prentice-Hall, Inc., 1987. ISBN 0-13- 821844-7. Putnam, Lawrence H., “A General Empirical Solution to the Macro Software Sizing and Estimating Problem,” IEEE Transactions on Software Engineering, July, 1978, p345.


Download ppt "Copyright 1995-2008, Dennis J. Frailey CSE7315 – Software Project Management CSE7315 M19 - Version 8.01 SMU CSE 7315 Planning and Managing a Software Project."

Similar presentations


Ads by Google