Presentation is loading. Please wait.

Presentation is loading. Please wait.

Cost Estimation 2009. Cost Estimation “The most unsuccessful three years in the education of cost estimators appears to be fifth-grade arithmetic. »Norman.

Similar presentations


Presentation on theme: "Cost Estimation 2009. Cost Estimation “The most unsuccessful three years in the education of cost estimators appears to be fifth-grade arithmetic. »Norman."— Presentation transcript:

1 Cost Estimation 2009

2 Cost Estimation “The most unsuccessful three years in the education of cost estimators appears to be fifth-grade arithmetic. »Norman R. Augustine

3 Goal The cost estimation community is working to improve estimations so that sophisticated organizations can produce products with 5% of the estimated cost (instead of 10%).

4 Requirements for Estimations What are cost estimates used for?

5 Requirements for Estimations What are cost estimates used for? What are the important characteristics of a cost estimate?

6 Scenario A typical software development shop. A boss is speaking with the lead developer.

7 Definitions Estimate Target Commitment Plan

8 Estimate

9 Commitment Target: Commitment: Plan:

10 Terms Note that target, estimate, and commitment are not the same concept, and the dates given for these may differ.

11 Scenario 3 Suppose I give an estimate of 90 days.

12 Scenario 3: Bell curve What does it mean?

13 Scenario 3: What does this mean?

14 Accuracy and the cost of inaccuracy What is the cost of overestimating?

15 Accuracy and the cost of inaccuracy What is the cost of underestimating?

16 How are we doing? KSLOC is 1,000 lines of source code MSLOC is 1,000,000 lines of source code With your partner, what does this graph say?

17 Benefits of Accurate Estimates Improved status visibility Higher quality Better coordination with non-software functions Better budgeting Increased credibility for team Early risk information

18 Approaches to arriving at a number Count Compute Judge

19 Counting vs. Estimating Similarities: Differences:

20 Proxy A value that is used to represent some other value Example: Estimate the weight of the people in the airplane from the number of people in the airplane (requires that we also know the average weight of people)

21 Things we want to estimate in software Cost Resources Revenue

22 Sources of uncertainty Inaccurate information about project Inaccurate information about ability of project team Too much chaos in project Inaccuracies in estimation process

23 Wideband Delphi 1.Estimators prepare initial estimates 2.The estimators meet with a coordinator to discuss estimation issues 3.Estimators give their estimates to the coordinator anonymously 4.The estimates are summarized on an iteration form 5.Estimators meet to discuss differences 6.Estimators vote to accept the average. If any votes “no”, return to step 2

24 Wideband Delphi Votes and estimates are anonymous Reduces political pressure Coordinator must prevent dominant personalities from controlling discussions (Frequently, the most reserved person has the best insights)

25 Results of Wideband Delphi Estimation error cut by 40% compared to initial group average Accuracy improves in 80% of the cases Useful for early estimates, particularly with unfamiliar systems Not so useful for detailed estimates

26 LOC, SLOC, KSLOC, MSLOC Lines of code Standard measure of size Often a measure of cost (i.e., time)

27 Function Points Synthetic measure of program size used to estimate size early in the project Easier (than lines of code) to calculate from requirements Standards at the International Function Point Users Group (IFPUG) www.ifpug.orgwww.ifpug.org

28 FP Rules: #FPs depends on: External Inputs External Outputs External Queries Internal Logical Files External Interface Files

29 FP Rules: Complexity Multipliers Low Complexity Medium Complexity High Complexity External Inputs 346 External Outputs 457 External Queries 346 Internal Logical Files 41015 External Interface Files 5710

30 LOC vs FP (Boehm 2000, Stutzke 2005) LanguageLOC per FP Ada50 C128 C#55 C++55 Java55 Assembly213 Perl20 VB32

31 FP results Certified counters vary by 10% Untrained counters vary by much more The multipliers may or may not be useful (some research indicates unadjusted FPs are more closely correlated with effort) The LOC have on average a range of 3x wrt FPs

32 COCOMO II

33 COCOMO  COnstructive COst MOdel Model to help you reason about the cost and schedule implications of any software decisions you may need to make. –Project Budgets –Scheduling –Planning –Risk Management Decisions

34 COCOMO II Objective cost model for planning and executing software projects. Concerned with: –Software Development Effort –Software Cost –Software Schedule Estimation

35 COCOMO II Model Definition Two Models to be concerned with: –Post-Architecture Model –Early Design Model

36 COCOMO II Model Definition Two Models to be concerned with: –Post-Architecture Model – –Early Design Model –

37 COCOMO II Variables Sizing Variables –Source Lines of Code (SLOC) –Unadjusted Function Points (UFP) Cost Drivers Scale Factors

38 Sizing Variables Concerned with the Size (SLOC) of the product being developed. Looking at data that influences new code to better: –Estimate the amount of Effort –Estimate the amount of Calendar Time

39 SLOC Expressed in thousands of source line of code (KSLOC). Again, only looking at data that will influence effort based on: –New Code –Copied & Modified Code Historical data based on previous software project used to derive estimate.

40 Unadjusted Function Points Approach: values based upon functionality in a software project. Based on information available early in the software project life cycle. –Requirements Definition –SRS –Design Documents

41 Unadjusted Function Points Basically, looking at all external data and input control to the system. Looking at all possible outputs produced by the system. Looking for any file types that my be associated with the system.

42 Project Schedule

43 Effort Per Phase Schedule


Download ppt "Cost Estimation 2009. Cost Estimation “The most unsuccessful three years in the education of cost estimators appears to be fifth-grade arithmetic. »Norman."

Similar presentations


Ads by Google