1 / 23

Introduction to Software Project Estimation I (Condensed)

Introduction to Software Project Estimation I (Condensed). Barry Schrag Software Engineering Consultant MCSD, MCAD, MCDBA barryschrag@hotmail.com Bellevue Community College. System Size: Function Points.

Download Presentation

Introduction to Software Project Estimation I (Condensed)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction to Software Project Estimation I (Condensed) Barry Schrag Software Engineering Consultant MCSD, MCAD, MCDBA barryschrag@hotmail.com Bellevue Community College

  2. System Size: Function Points • 1979, A.J. Albrecht of IBM published a Function Point metric as a ‘measure of software productivity’ or unit of work. • Used to size an application and estimate effort. • Count number of operations, apply weights and add up for FP total and multiply by productivity factor.

  3. Estimation Procedures • First Estimate Size • Count Function Points as a size measurement • Determine Productivity • Hours/FP • Calibrate using local history • Total Effort Hours • Size FP * Hours/FP

  4. System Size: Function Points • Albrecht considered five operations • The inputs to the application • The outputs from it • Inquiries by users • The data files that would be updated by the application • The interfaces to other applications

  5. The generic application Application Output simple data Data values in Output Calculated data Data store

  6. Modern Function Points • Empirical weighting factors became a standard • The number of inputs was weighted by 4 • The outputs by 5 • Inquiries by 4 • The data file updates by 10 • The interfaces by 7 • These weights change based on number of data fields used by each operation

  7. Generic Application Data values inExternal Input Application Output simple data Output Calculated data Data store (Internal Logical Files)

  8. External Outputs (EO) • An elementary process in which derived data passes across the boundary from inside to outside the application • e.g. a report where data is calculated

  9. External Inputs (EI) • Is an elementary process in which data crosses the boundary from outside to inside the application

  10. External inQuiry (EQ) • An elementary process with both input and output components that result in data retrieval from one or more internal logical files and external interface files • e.g. a report where data is pre-calculated

  11. Internal Logical Files (ILF) • A group of logically related data within the application boundary • e.g. storage location for the users profile, for product, system control info…

  12. Rating Logical Files Weight is adjusted by how many data elements are in the file. 10 is average weight.

  13. External Interface Files (EIF) • Data used for reference purposes which resides entirely outside the application and is maintained by another application • This is an Internal Logical File for another application

  14. Function Point Terms Diagram

  15. Calculate FP Count • The number of External Inputs __ *4= __ • The External Outputs __ *5= __ • External inQuiries __ *4= __ • The Internal Logical Files __ *10= __ • The External InterFaces __ *7= __ TOTAL FP Estimate = __ TOTAL Defects Estimate = FP * 5 = __

  16. Calculate FP count • The number of External Inputs 2*4= 8 • The External Outputs 2*5=10 • External inQuiries 2*4= 8 • The Internal Logical Files 1*10= 10 • The External InterFaces 1*7= 7 TOTAL FP Estimate = 43 TOTAL Defects Estimate = FP * 5 =215

  17. Hours to release TOTAL FP Estimate = 43 EFFORT = FP * process efficiency (hrs/fp) Now apply the variables -- • 43 function points * 12 hours/fp = • 516 hours to release • Note that 12 is a LOW estimate of process efficiency

  18. Historical Measurement • Thousands of projects • Consistent sizing with FPA • Record of time for each activity • Trends emerge • Some activities are not performed on every project • Cost for the activity doesn’t vary based on project type

  19. National Average Productivity Minimum = small team, maximum = big team (less productive)

  20. EFFORT is Estimated by • Perform organization calibration to get • Hours per Function Point • Historical Data gets better over time

  21. Estimation Influences Are • Additive Error due to Size  Effort hours  Schedule • Error in Size Estimate • Error in Effort Estimate • Productivity changes due to • New team size • Work tasks change • Hours available to work are altered

  22. Effort Estimation Issues • Effort = Size * Productivity • Productivity measured as hours/Function Point • Use local productivity Data and ISBSG averages • Team history and cohesion do affect results • Main point - Record hours worked

  23. Conclusion • Choose an estimating technique • Make it part of your process at each step and for each change requested • It can reveal process efficiency • Track error over time and use to predict cone of uncertainty in the next cycle

More Related