Software Estimation Presented by – Dinesh Singh
Agenda Importance of Software Estimation Type of Estimation Estimation Tools/Techniques Which Technique to use and when Estimation Process  Estimation Tips Explanation of Few Technique  Estimation Metrics
Importance of Software Estimation Budgeting & Decision Making Forecast Profitability (IRR, NPV, Payback period, Benefit cost ratio , opportunity cost) Reliable Resource Planning & Scheduling Satisfied Customer Under Estimation lead to loss, over estimation may loose business Process Improvement Fuzzy estimates can only lead to fuzzy project plans
Type of Estimation ( Size, Efforts , Schedule and cost) Initiation (order of magnitude -25 to +75) Budgetary  (Planning -10 to +25) Definitive ( Requirement -5 to +10) Intermediate Post construction
Estimation Tools/Techniques Top Down Expert Judgment ( Experience & Historical data, Use Delphi method) Analogous ( On similar projects, Top down) Three point Analysis - (o+4m+p)/6 Reserve Analysis (Contingency, Management)  Bottom UP Function Point Analysis Use Case Point Object Point Analysis Program Complexity Method COCOMO-Constructive Cost Model (Based on LOC)
Which Technique to use and when Function Point Analysis/Expert/ three point/reserve /Analogous System is to be developed from scratch Scope is available at broad level only Person with high project management experience  Use Case Point / Object Point / PCM / Base sizing Functionality is clear up to screen level Enhancement of existing system  Scope is very clear  Person with good technical knowledge
Estimation Process Collect Initial Requirement Estimate Size Estimate Efforts Produce Schedule Approve Estimate Develop Product Approved Actual Analyse Estimation Process Historical Project Data Resource Availability
Tips Create Details Work Break down structure till manageable level Spend enough time to do proper Estimate Involve Developer  Use more than one people and technique to estimate separately ( for large projects) Use at least one estimation tool Mine historical information to tune your estimation capability Mention Dependencies and assumptions
Function Point Analysis (FPA) FPA ILF ( Logical Entity resides on internal system) e.g Customer Details  EIF ( External Entity referred by system) EI ( User interaction screen , it may have ILF) EQ ( Queries , does not update ILF or EIF) EO (Across Application eg XML, can update ILF &EIF) RET ( Normalization of the ILF & EIF) DET ( User recognized data element type) FTR ( Files used in transitions)
Function Point Analysis (FPA) ILF Function point EIF Function point 15 15 10 6 + RETs 15 10 7 2 - 5 RETs 10 7 7 1 RET 51+ DETs 20 - 50 DETs  1-19 DETs   10 10 7 6 + RETs 10 7 5 2 - 5 RETs 7 5 5 1 RET 51+ DETs 20 - 50 DETs  1-19 DETs  
Function Point Analysis (FPA) EI Function point 6 6 4 3 + FTRs 6 4 3 2 FTRs 4 3 3 1 FTR 16 + DETs 5 -15 DETs 1- 4 DETs  
Function Point Analysis (FPA) EO Function point 7 7 5 4 + FTRs 7 5 4 2 - 3 FTRs 5 4 4 1 FTR 20+ DETs 6- 19 DETs 1-5 DETs  
Function Point Analysis (FPA) EQ Function point 6 6 4 4 + FTRs 6 4 3 2 - 3 FTRs 4 3 3 1 FTR 20+ DETs 6-19 DETs 1-5 DETs  
Function Point Analysis (FPA) Function point calculation UFPC = Total of all function points  Degree of Influence on 14 points (Response time, transaction rate, ..) VAF = 0.65 + (TDI *0.01) Function point = UFPC * VAF Efforts Estimate 3 GL  - 0.5 to 1 FP/day 4 GL  -  1 to 1.5 FP/day 5 GL  - 2 to 5 FP/day
FPA Template OPE Template  Exercise & Demo
Three Magic formulae Three Magic formulae  Project Duration = 2.5 * (Cube Root of Work Months)  Optimum Staffing Size = Square Root of Work Months  Minimum Duration = 0.75 * (Cube Root of Work Months)
Estimation Metrics Effort Slippage- ( Actual – Planned)*100/Planned % Efforts used - Actual*100/Planned or budgeted % Rework efforts- Rework*100 / Total %Review & testing – Review & testing *100/ Total
Q & A
Thanks

Software Estimation

  • 1.
    Software Estimation Presentedby – Dinesh Singh
  • 2.
    Agenda Importance ofSoftware Estimation Type of Estimation Estimation Tools/Techniques Which Technique to use and when Estimation Process Estimation Tips Explanation of Few Technique Estimation Metrics
  • 3.
    Importance of SoftwareEstimation Budgeting & Decision Making Forecast Profitability (IRR, NPV, Payback period, Benefit cost ratio , opportunity cost) Reliable Resource Planning & Scheduling Satisfied Customer Under Estimation lead to loss, over estimation may loose business Process Improvement Fuzzy estimates can only lead to fuzzy project plans
  • 4.
    Type of Estimation( Size, Efforts , Schedule and cost) Initiation (order of magnitude -25 to +75) Budgetary (Planning -10 to +25) Definitive ( Requirement -5 to +10) Intermediate Post construction
  • 5.
    Estimation Tools/Techniques TopDown Expert Judgment ( Experience & Historical data, Use Delphi method) Analogous ( On similar projects, Top down) Three point Analysis - (o+4m+p)/6 Reserve Analysis (Contingency, Management) Bottom UP Function Point Analysis Use Case Point Object Point Analysis Program Complexity Method COCOMO-Constructive Cost Model (Based on LOC)
  • 6.
    Which Technique touse and when Function Point Analysis/Expert/ three point/reserve /Analogous System is to be developed from scratch Scope is available at broad level only Person with high project management experience Use Case Point / Object Point / PCM / Base sizing Functionality is clear up to screen level Enhancement of existing system Scope is very clear Person with good technical knowledge
  • 7.
    Estimation Process CollectInitial Requirement Estimate Size Estimate Efforts Produce Schedule Approve Estimate Develop Product Approved Actual Analyse Estimation Process Historical Project Data Resource Availability
  • 8.
    Tips Create DetailsWork Break down structure till manageable level Spend enough time to do proper Estimate Involve Developer Use more than one people and technique to estimate separately ( for large projects) Use at least one estimation tool Mine historical information to tune your estimation capability Mention Dependencies and assumptions
  • 9.
    Function Point Analysis(FPA) FPA ILF ( Logical Entity resides on internal system) e.g Customer Details EIF ( External Entity referred by system) EI ( User interaction screen , it may have ILF) EQ ( Queries , does not update ILF or EIF) EO (Across Application eg XML, can update ILF &EIF) RET ( Normalization of the ILF & EIF) DET ( User recognized data element type) FTR ( Files used in transitions)
  • 10.
    Function Point Analysis(FPA) ILF Function point EIF Function point 15 15 10 6 + RETs 15 10 7 2 - 5 RETs 10 7 7 1 RET 51+ DETs 20 - 50 DETs 1-19 DETs   10 10 7 6 + RETs 10 7 5 2 - 5 RETs 7 5 5 1 RET 51+ DETs 20 - 50 DETs 1-19 DETs  
  • 11.
    Function Point Analysis(FPA) EI Function point 6 6 4 3 + FTRs 6 4 3 2 FTRs 4 3 3 1 FTR 16 + DETs 5 -15 DETs 1- 4 DETs  
  • 12.
    Function Point Analysis(FPA) EO Function point 7 7 5 4 + FTRs 7 5 4 2 - 3 FTRs 5 4 4 1 FTR 20+ DETs 6- 19 DETs 1-5 DETs  
  • 13.
    Function Point Analysis(FPA) EQ Function point 6 6 4 4 + FTRs 6 4 3 2 - 3 FTRs 4 3 3 1 FTR 20+ DETs 6-19 DETs 1-5 DETs  
  • 14.
    Function Point Analysis(FPA) Function point calculation UFPC = Total of all function points Degree of Influence on 14 points (Response time, transaction rate, ..) VAF = 0.65 + (TDI *0.01) Function point = UFPC * VAF Efforts Estimate 3 GL - 0.5 to 1 FP/day 4 GL - 1 to 1.5 FP/day 5 GL - 2 to 5 FP/day
  • 15.
    FPA Template OPETemplate Exercise & Demo
  • 16.
    Three Magic formulaeThree Magic formulae Project Duration = 2.5 * (Cube Root of Work Months) Optimum Staffing Size = Square Root of Work Months Minimum Duration = 0.75 * (Cube Root of Work Months)
  • 17.
    Estimation Metrics EffortSlippage- ( Actual – Planned)*100/Planned % Efforts used - Actual*100/Planned or budgeted % Rework efforts- Rework*100 / Total %Review & testing – Review & testing *100/ Total
  • 18.
  • 19.