HOUSTON COMMUNITY  SAIGONTECH                                    COLLEGE SYSTEMSAIGON INSTITUTE OF    TECHNOLOGY          ...
Objectives                                          HOUSTON COMMUNITY  SAIGONTECH                                COLLEGE S...
Cost estimation objectives                                                           HOUSTON COMMUNITY  SAIGONTECH        ...
SAIGONTECH                      Software cost components                 HOUSTON COMMUNITY                                ...
SAIGONTECHSAIGON INSTITUTE OF    TECHNOLOGY                      Costing and pricing                HOUSTON COMMUNITY     ...
SAIGONTECH                        Productivity Measures                  HOUSTON COMMUNITY                                ...
SAIGONTECH                        Lines of Codes       HOUSTON COMMUNITY                                               COL...
SAIGONTECHSAIGON INSTITUTE OF    TECHNOLOGY                           Function points          HOUSTON COMMUNITY          ...
SAIGONTECHSAIGON INSTITUTE OF                          Function points               HOUSTON COMMUNITY                    ...
SAIGONTECH                      Factors affecting productivity                         HOUSTON COMMUNITY                  ...
SAIGONTECH                      Estimation techniques   HOUSTON COMMUNITY                                                C...
SAIGONTECHSAIGON INSTITUTE OF                      Expert judgement      HOUSTON COMMUNITY                                ...
SAIGONTECH                      Estimation by analogy   HOUSTON COMMUNITY                                                C...
SAIGONTECHSAIGON INSTITUTE OF                      Parkinsons Law    HOUSTON COMMUNITY                                    ...
SAIGONTECHSAIGON INSTITUTE OF                      Pricing to win    HOUSTON COMMUNITY                                    ...
SAIGONTECH                      Top-down estimation   HOUSTON COMMUNITY                                              COLLE...
SAIGONTECH                      Bottom-up estimation   HOUSTON COMMUNITY                                               COL...
SAIGONTECHSAIGON INSTITUTE OF    TECHNOLOGY                      Estimation methods                  HOUSTON COMMUNITY    ...
SAIGONTECH                      Algorithmic cost modelling   HOUSTON COMMUNITY                                            ...
Examples of cost models        HOUSTON COMMUNITY  SAIGONTECH                                           COLLEGE SYSTEMSAIGO...
Examples of cost models   HOUSTON COMMUNITY  SAIGONTECH                                      COLLEGE SYSTEMSAIGON INSTITUT...
SAIGONTECH                        The COCOMO model                              HOUSTON COMMUNITY                         ...
SAIGONTECH                      The COCOMO model                             HOUSTON COMMUNITY                            ...
SAIGONTECHSAIGON INSTITUTE OF    TECHNOLOGY                      BASIC COCOMO Formula                    HOUSTON COMMUNITY...
SAIGONTECHSAIGON INSTITUTE OF    TECHNOLOGY                      COCOMO examples                HOUSTON COMMUNITY         ...
SAIGONTECHSAIGON INSTITUTE OF                      Intermediate COCOMO   HOUSTON COMMUNITY                                ...
Effort Multipliers                                                                                                      HO...
SAIGONTECH                      Advanced COCOMO model              HOUSTON COMMUNITY                                      ...
Analyst capability effort multiplier   HOUSTON COMMUNITY  SAIGONTECHSAIGON INSTITUTE OF    TECHNOLOGY                     ...
SAIGONTECHSAIGON INSTITUTE OF    TECHNOLOGY                      Model tuning       HOUSTON COMMUNITY                     ...
SAIGONTECHSAIGON INSTITUTE OF                      Staffing requirements   HOUSTON COMMUNITY                              ...
SAIGONTECHSAIGON INSTITUTE OF    TECHNOLOGY                                                                               ...
SAIGONTECHSAIGON INSTITUTE OF    TECHNOLOGY                      Software Equation           HOUSTON COMMUNITY            ...
SAIGONTECHSAIGON INSTITUTE OF    TECHNOLOGY                      Technology Factor                       HOUSTON COMMUNITY...
SAIGONTECHSAIGON INSTITUTE OF    TECHNOLOGY                        Key points                    HOUSTON COMMUNITY        ...
SAIGONTECHSAIGON INSTITUTE OF                      Key points               HOUSTON COMMUNITY                             ...
SAIGONTECHSAIGON INSTITUTE OF                      Seminar Report         HOUSTON COMMUNITY                               ...
SAIGONTECHSAIGON INSTITUTE OF                      Reference              HOUSTON COMMUNITY                               ...
Upcoming SlideShare
Loading in...5
×

Software cost estimation

10,605

Published on

Software Engineering

0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
10,605
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
470
Comments
0
Likes
5
Embeds 0
No embeds

No notes for slide

Software cost estimation

  1. 1. HOUSTON COMMUNITY SAIGONTECH COLLEGE SYSTEMSAIGON INSTITUTE OF TECHNOLOGY SOFTWARE COST ESTIMATION SEMINAR FOR COOP EDUCATION ITSE 1380, ITNW 1380 FALL 2005 1
  2. 2. Objectives HOUSTON COMMUNITY SAIGONTECH COLLEGE SYSTEMSAIGON INSTITUTE OF TECHNOLOGY • To introduce cost and schedule estimation • To discuss the problems of productivity estimation • To describe several cost estimation techniques • To discuss the utility of algorithmic cost modeling and its applicability in the software process 2
  3. 3. Cost estimation objectives HOUSTON COMMUNITY SAIGONTECH COLLEGE SYSTEMSAIGON INSTITUTE OF TECHNOLOGY • Budget To know what you will spend • Controls A lever to control the project • Differential analysis Monitor progress by comparing planned with estimated costs • Cost database Make future estimation better • Marry costing to management Cost estimation and planning/scheduling are closely related activities 3
  4. 4. SAIGONTECH Software cost components HOUSTON COMMUNITY COLLEGE SYSTEMSAIGON INSTITUTE OF TECHNOLOGY • Hardware and software costs • Travel and training costs • Effort costs (the dominant factor in most projects) •salaries of engineers involved in the project •costs of building, heating, lighting •costs of networking and communications •costs of shared facilities (e.g library, staff restaurant, etc.) •costs of pensions, health insurance, etc. 4
  5. 5. SAIGONTECHSAIGON INSTITUTE OF TECHNOLOGY Costing and pricing HOUSTON COMMUNITY COLLEGE SYSTEM • Estimating Cost • Costs for developer, not buyer • We need our costs to manage and assess • Estimating Price • There is not a simple relationship between the development cost and the price charged to the customer. • Broader organisational, economic, political and business considerations influence the price charged. 5
  6. 6. SAIGONTECH Productivity Measures HOUSTON COMMUNITY COLLEGE SYSTEMSAIGON INSTITUTE OF TECHNOLOGY • Size-related measures • Must be based on some output from the software process • Delivered source code • Object code instructions • Function-related measures • Based on an estimate of the functionality of the delivered software. • Function-points are the best known of this type of measure 6
  7. 7. SAIGONTECH Lines of Codes HOUSTON COMMUNITY COLLEGE SYSTEMSAIGON INSTITUTE OF TECHNOLOGY LOC = NCLOC + CLOC • LOC: lines of code • NCLOC: non-commented line of code • CLOC: commented line of code • KLOC = one thousand of line of code 7
  8. 8. SAIGONTECHSAIGON INSTITUTE OF TECHNOLOGY Function points HOUSTON COMMUNITY COLLEGE SYSTEM • Based on a combination of program characteristics • external inputs and outputs • user interactions • external interfaces • files used by the system • A weight is associated with each of these • The function point count is computed by multiplying each raw count by the weight and summing all values 8
  9. 9. SAIGONTECHSAIGON INSTITUTE OF Function points HOUSTON COMMUNITY COLLEGE SYSTEM TECHNOLOGY • Function point count modified by complexity of the project • FPs can be used to estimate LOC depending on the average number of LOC per FP for a given language • FPs are very subjective •Depend on the estimator •FP cannot generally be counted automatically 9
  10. 10. SAIGONTECH Factors affecting productivity HOUSTON COMMUNITY COLLEGE SYSTEMSAIGON INSTITUTE OF TECHNOLOGY Factor Description Application domain Knowledge of the application domain is essential for experience effective software development. Engineers who already understand a domain are likely to be the most productive. Process quality The development process used can have a significant effect on productivity. This is covered in Chapter 31. Project size The larger a project, the more time required for team communications. Less time is available for development so individual productivity is reduced. Technology support Good support technology such as CASE tools, supportive configuration management systems, etc. can improve productivity. Working environment A quiet working environment with private work areas contributes to improved productivity. 10
  11. 11. SAIGONTECH Estimation techniques HOUSTON COMMUNITY COLLEGE SYSTEMSAIGON INSTITUTE OF TECHNOLOGY • Expert judgement • Estimation by analogy • Parkinson’s Law • Pricing to win • Top-down estimation • Bottom-up estimation • Algorithmic cost modelling 11
  12. 12. SAIGONTECHSAIGON INSTITUTE OF Expert judgement HOUSTON COMMUNITY COLLEGE SYSTEM TECHNOLOGY • One or more experts in both software development and the application domain use their experience to predict software costs. Process iterates until some consensus is reached. • Advantages: Relatively cheap estimation method. Can be accurate if experts have direct experience of similar systems • Disadvantages: May be very costly 12
  13. 13. SAIGONTECH Estimation by analogy HOUSTON COMMUNITY COLLEGE SYSTEMSAIGON INSTITUTE OF TECHNOLOGY • The cost of a project is computed by comparing the project to a similar project inthe same application domain • Advantages: Accurate if project data available • Disadvantages: Impossible if no comparable project has been tackled. Needs systematically maintained cost database 13
  14. 14. SAIGONTECHSAIGON INSTITUTE OF Parkinsons Law HOUSTON COMMUNITY COLLEGE SYSTEM TECHNOLOGY • The project costs whatever resources are available • Advantages: No overspending • Disadvantages: System is usually unfinished 14
  15. 15. SAIGONTECHSAIGON INSTITUTE OF Pricing to win HOUSTON COMMUNITY COLLEGE SYSTEM TECHNOLOGY • The project costs whatever the customer has to spend on it • Advantages: You get the contract • Disadvantages: The probability that the customer gets the system he or she wants is small. Costs do not accurately reflect the work required 15
  16. 16. SAIGONTECH Top-down estimation HOUSTON COMMUNITY COLLEGE SYSTEMSAIGON INSTITUTE OF TECHNOLOGY • Approaches may be applied using a top-down approach. Start at system level andwork out how the system functionality is provided • Takes into account costs such as integration, configuration management and documentation • Can underestimate the cost of solving difficult low-level technical problems 16
  17. 17. SAIGONTECH Bottom-up estimation HOUSTON COMMUNITY COLLEGE SYSTEMSAIGON INSTITUTE OF TECHNOLOGY • Start at the lowest system level. The cost of each component is estimated individually.These costs are summed to give final cost estimate • Accurate method if the system has been designed in detail • May underestimate costs of system level activities such as integration and documentation 17
  18. 18. SAIGONTECHSAIGON INSTITUTE OF TECHNOLOGY Estimation methods HOUSTON COMMUNITY COLLEGE SYSTEM – Each method has strengths and weaknesses – Estimation should be based on several methods – If these do not return approximately the same result, there is insufficient information available – Some action should be taken to find out more in order to make more accurate estimates – Pricing to win is sometimes the only applicable method 18
  19. 19. SAIGONTECH Algorithmic cost modelling HOUSTON COMMUNITY COLLEGE SYSTEMSAIGON INSTITUTE OF TECHNOLOGY • Cost is estimated as a mathematical function of product, project and processattributes whose values are estimated by project managers • The function is derived from a study of historical costing data • Most commonly used product attribute for cost estimation is LOC (code size) • Most models are basically similar but withdifferent attribute values 19
  20. 20. Examples of cost models HOUSTON COMMUNITY SAIGONTECH COLLEGE SYSTEMSAIGON INSTITUTE OF TECHNOLOGY • General form: E = A + B × SC • E: Effort cost; S: Size; A, B, C: constants Examples: E = 5.2 x (KLOC)0.91 Walston-Felix Model E = 5.5 + 0.73 x (KLOC)1.16 Bailey-Basili Model E = 3.2 x (KLOC)1.05 COCOMO Basic Model E = 5.288 x (KLOC)1.047 Doty Model for KLOC > 9 20
  21. 21. Examples of cost models HOUSTON COMMUNITY SAIGONTECH COLLEGE SYSTEMSAIGON INSTITUTE OF TECHNOLOGY Cost models using FP as a primary input include (Pressman, 1997): E = -12.39 + 0.0545 FP Albrecht and Gaffney Model E = 60.62 x 7.728 x 10-8 FP3 Kemerer Model E = 585.7 + 15.12 FP Matson, Barnett, and Mellichamp Model 21
  22. 22. SAIGONTECH The COCOMO model HOUSTON COMMUNITY COLLEGE SYSTEMSAIGON INSTITUTE OF TECHNOLOGY • Developed at TRW, a US defense contractor • Based on a cost database of more than 60 different projects • Exists in three stages •Basic -Gives a ball-park estimate based on product attributes •Intermediate -modifies basic estimate using project and process attributes •Advanced -Estimates project phases and parts separately 22
  23. 23. SAIGONTECH The COCOMO model HOUSTON COMMUNITY COLLEGE SYSTEMSAIGON INSTITUTE OF TECHNOLOGY • Three modes: – Organic mode: relatively simple projects in which small teams work to a set of informal requirements – Semidetached mode: an intermediate project in which mixed teams must work to a set of rigid and less than rigid requirements – Embedded mode:a project that must operate within a tight set of constraints (ie. flight control software for aircraft). 23
  24. 24. SAIGONTECHSAIGON INSTITUTE OF TECHNOLOGY BASIC COCOMO Formula HOUSTON COMMUNITY COLLEGE SYSTEM E = a(KLOC)b TDEV = cEd Mode a b c d Organic mode 2.4 1.05 2.5 0.38 Semi-detached 3.0 1.12 2.5 0.35 Embedded 3.6 1.20 2.5 0.32 24
  25. 25. SAIGONTECHSAIGON INSTITUTE OF TECHNOLOGY COCOMO examples HOUSTON COMMUNITY COLLEGE SYSTEM • Organic mode project, KLOC = 32 PM = 2.4 (32)1.05 = 91 person months TDEV = 2.5 (91)0.38 = 14 months N = 91/15 = 6.5 people 25
  26. 26. SAIGONTECHSAIGON INSTITUTE OF Intermediate COCOMO HOUSTON COMMUNITY COLLEGE SYSTEM TECHNOLOGY • Takes basic COCOMO as starting point • Identifies personnel, product, computer and project attributes which affect cost • Multiplies basic cost by attribute multipliers which may increase or decrease costs 26
  27. 27. Effort Multipliers HOUSTON COMMUNITY SAIGONTECH Cost Driver Description Rating COLLEGE SYSTEMSAIGON INSTITUTE OF TECHNOLOGY Very Low Low Nominal High Very High Extra High Product RELY Required software reliability 0.75 0.88 1.00 1.15 1.40 - DATA Database size - 0.94 1.00 1.08 1.16 - CPLX Product complexity 0.70 0.85 1.00 1.15 1.30 1.65 Computer TIME Execution time constraint - - 1.00 1.11 1.30 1.66 STOR Main storage constraint - - 1.00 1.06 1.21 1.56 VIRT Virtual machine volatility - 0.87 1.00 1.15 1.30 - TURN Computer turnaround time - 0.87 1.00 1.07 1.15 - Personnel ACAP Analyst capability 1.46 1.19 1.00 0.86 0.71 - AEXP Applications experience 1.29 1.13 1.00 0.91 0.82 - PCAP Programmer capability 1.42 1.17 1.00 0.86 0.70 - VEXP Virtual machine experience 1.21 1.10 1.00 0.90 - - LEXP Language experience 1.14 1.07 1.00 0.95 - - Project MODP Modern programming practices 1.24 1.10 1.00 0.91 0.82 - TOOL Software Tools 1.24 1.10 1.00 0.91 0.83 - SCED Development Schedule 1.23 1.08 1.00 1.04 1.10 - 27
  28. 28. SAIGONTECH Advanced COCOMO model HOUSTON COMMUNITY COLLEGE SYSTEMSAIGON INSTITUTE OF TECHNOLOGY • The Advanced COCOMO model computes effort as a function of program size and a set of cost drivers weighted according to each phase of the software lifecycle. The Advanced model applies the Intermediate model at the component level, and then a phase-based approach is used to consolidate the estimate (Fenton, 1997). • The 4 phases used in the detailed COCOMO model are: requirements planning and product design (RPD), detailed design (DD), code and unit test (CUT), and integration and test (IT). Each cost driver is broken down by phase as in the example shown in Table 6 (Boehm, 1981). 28
  29. 29. Analyst capability effort multiplier HOUSTON COMMUNITY SAIGONTECHSAIGON INSTITUTE OF TECHNOLOGY for Advanced COCOMO COLLEGE SYSTEM Cost Driver Rating RPD DD CUT IT Very Low 1.80 1.35 1.35 1.50 Low 0.85 0.85 0.85 1.20 ACAP Nominal 1.00 1.00 1.00 1.00 High 0.75 0.90 0.90 0.85 Very High 0.55 0.75 0.75 0.70 29
  30. 30. SAIGONTECHSAIGON INSTITUTE OF TECHNOLOGY Model tuning HOUSTON COMMUNITY COLLEGE SYSTEM • All numbers in cost model are organization specific. The parameters of the model must be modified to adapt it to local needs • A statistically significant database of detailed cost information is necessary 30
  31. 31. SAIGONTECHSAIGON INSTITUTE OF Staffing requirements HOUSTON COMMUNITY COLLEGE SYSTEM TECHNOLOGY • Staff required can’t be computed by dividing the development time by the requiredschedule • The number of people working on a project varies depending on the phase of the project • The more people who work on the project, the more total effort is usually required • Very rapid build-up of people often correlates with schedule slippage 31
  32. 32. SAIGONTECHSAIGON INSTITUTE OF TECHNOLOGY Rayleigh curve HOUSTON COMMUNITY COLLEGE SYSTEM file:///F:/AAS PROGRAM/COOP-Fall 2005/Software Cost Estimation Metrics and Models_files/Rayleigh.gif 32
  33. 33. SAIGONTECHSAIGON INSTITUTE OF TECHNOLOGY Software Equation HOUSTON COMMUNITY COLLEGE SYSTEM • Putnam used some empirical observations about productivity levels to derive the software equation from the basic Rayleigh curve formula (Fenton, 1997). The software equation is expressed as: 1 4 Size = CE 3 t 3 • where C is a technology factor, E is the total project effort in person years, and t is the elapsed time to delivery in years. 33
  34. 34. SAIGONTECHSAIGON INSTITUTE OF TECHNOLOGY Technology Factor HOUSTON COMMUNITY COLLEGE SYSTEM The technology factor is a composite cost driver involving 14 components. It primarily reflects: • Overall process maturity and management practices • The extent to which good software engineering practices are used • The level of programming languages used • The state of the software environment • The skills and experience of the software team • The complexity of the application • The software equation includes a fourth power and therefore has strong implications for resource allocation on large projects. Relatively small extensions in delivery date can result in substantial reductions in effort (Pressman, 1997). 34
  35. 35. SAIGONTECHSAIGON INSTITUTE OF TECHNOLOGY Key points HOUSTON COMMUNITY COLLEGE SYSTEM • There is not a simple relationship between the price charged for a system and its development costs. • Factors affecting productivity include individual aptitude, domain experience, the development project, the project size, tool support and the working environment. • Software may be priced to gain a contract and the functionality adjusted to the price. 35
  36. 36. SAIGONTECHSAIGON INSTITUTE OF Key points HOUSTON COMMUNITY COLLEGE SYSTEM TECHNOLOGY • Different techniques of cost estimation should be used when estimating costs. • The COCOMO model takes project, product, personnel and hardware attributes into account when predicting effort required. • Algorithmic cost models support quantitative option analysis as they allow the costs of different options to be compared. • The time to complete a project is not proportional to the number of people working on the project. 36
  37. 37. SAIGONTECHSAIGON INSTITUTE OF Seminar Report HOUSTON COMMUNITY COLLEGE SYSTEM TECHNOLOGY • Select any Software Cost Estimation relating topic of your interest (may or may not presented in the seminar) • Write report having at least 2 pages • Use the form from Saigontech website • Each report must have a title • Indicate the Week # in each report • Indicate reference materials 37
  38. 38. SAIGONTECHSAIGON INSTITUTE OF Reference HOUSTON COMMUNITY COLLEGE SYSTEM TECHNOLOGY Software Engineering, A Practitioner’s Approach, 4nd Edition Roger S. Pressman, PhD. McGraw-Hill, 2002. Software Engineering Jan Sommerville 38
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×