1 / 27

Software Estimating with Functional Metrics

Q. P. Management. Group, Inc. Software Estimating with Functional Metrics. Scott Goldfarb Q/P Management Group, Inc. 10 Bow Street Stoneham, MA 02180 Tel: (781) 438-2692 FAX: (781) 438-5549 Webpage: www.QPMG.com. Q. P. Management. Group, Inc.

hija
Download Presentation

Software Estimating with Functional Metrics

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. Q P Management Group, Inc. Software Estimatingwith Functional Metrics Scott Goldfarb Q/P Management Group, Inc. 10 Bow Street Stoneham, MA 02180 Tel: (781) 438-2692 FAX: (781) 438-5549 Webpage: www.QPMG.com

  2. Q P Management Group, Inc. Software Estimatingwith Functional Metrics The methodologies reflected in the enclosed material, including the benchmark comparisons, are confidential and proprietary information of Q/P Management Group, Inc. and are for the internal use of addressee only.

  3. Objectives - Estimating with Functional Metrics • Provide a top down estimating approach that can be used early in the life cycle • Base the estimate on customer requirements and constraints • Consider the technical environment, project characteristics and past performance • Communicate accurate estimates that can be easily updated as the situation changes

  4. A Top Down Estimating Approach • Top Down • Determine detailed estimates from available totals • Size functionality to be delivered • Based on past performance and quantitative information Functional Metrics Estimating model, and repository of past performance Generated estimates

  5. Project Estimation Influences Functional Size Quality Cost Project Attributes Estimating Process Effort Technical Characteristics Schedule Business Pressure

  6. Four Steps to Better Estimates 1. Function Point Analysis - gives the size of the project based on the user perspective of functional requirements. 2. Evaluation of Project Attributes - analyzes the factors, in addition to size, that impact the productivity of projects. 3. Establish Productivity Rating - analyzes size data and project attribute information in order to establish the appropriate productivity rate based on historical data. 4. Develop Estimate - develops and documents estimate of effort, cost and schedule based on the established productivity rate.

  7. The Estimating Process Step 1. Step 2. Prepare for the Estimate Function Point Analysis Evaluate Project Attributes Data Warehouse of Estimates & Actuals Iterative Process Estimate Step 3. Establish Productivity Rate Communicate the Estimate Develop Estimate Step 4.

  8. Functionality as viewed from the users’ perspective Step 1: Function Point Analysis - Quantify Software Size Application Being Considered External Input External Interface Files External Output Internal Logical File External Inquiry (EO) Other Applications (EI)

  9. Lines of Code versus Function Points • Lines of Code • Lines of code was the best core measure of the 70’s • Most applications have operators, not users • Coded lines of code • Limited number of languages (COBOL, Assembler) within organization • Mind set was “code driven” • Function Points • Function Points is the best core measure of the 90’s and beyond • User focus • Paint an application (copy, click, drag, drop), some coding with heavy reuse • Dozens of languages and technologies in most organizations • Mind set is “functionality & value driven”

  10. A Function Point Count is Established Based on Functional Requirements • Function Types Example Count • Data Functions • Internal Logical Files - Empl. Files (3) - 45 FPs • - Trans. Files (3) - 30 FPs • External Interface Files - Password Files - 5 FPs • - HRM Data Base - 5 FPs • Transactional Functions • External Inputs - Timesheet Trans. - 3 FPs • - Deductions - 4 FPs • External Outputs - P/R Report - 4 FPs • - Checks - 7 FPs • External Inquiry - N&A Inquiry - 3 FPs • - Check Register - 6 FPs • TOTAL = 112 Function Points

  11. Step 2. Evaluation of Project Attributes Technical Environment • Platform - Mainframe, PC, C/S etc • Software Use - Internal, Commercial, Government etc • Development Method- Traditional, OOD, Web etc. • Development Type - New Development, Enhancement Project Characteristics • Personnel and Management • Process and Methods • Technology and Tools • Environment and Support

  12. Why Evaluate Project Attributes? • Productivity rates will vary by Technical Environment • PC higher productivity vs. C/S lower productivity • New development higher than enhancement • Project Characteristics have a significant impact on productivity and quality • Make-up of project team • Adequacy of processes and tools • Project constraints and requirements • Assess project risk • Continuous process improvement • Identify new opportunities • Measure the impact of new initiatives

  13. Project Characteristics Impact % Impact on Project Project Attributes Effort and Schedule Personnel Management +/- 100% Process and Methods +/- 75% Technology and Tools +/- 50% Environment and Support +/- 25%

  14. Project Characteristics - Adjustment Factor Example Score Weighted Project Score Influence Personnel Management 1-Low 1.5 I/S Personnel Knowledge and Experience 2 1.25 1.25 User Personnel Knowledge and Experience 3-Avg. 1 Personnel Management and Support 4 0.83 5-High 0.75 Process and Methods 1-Low 1.38 Development Methods and Techniques 2 1.19 Project Management Methods and Tech 3-Avg 1 Q/A and Control Methods and Tech 4 0.89 .89 Measurement Methods and Techniques 5-High 0.72 Multiply the weighted scores together. This is your effort and schedule Adjustment Factor1.11

  15. You can customize the Attribute influences to reflect your own particular environment Customization / Calibration Project Attributes • An advantage of this technique is that you can identify the influencing ratio you feel are appropriate. • By weighting these influencing factors the estimates can become more reliable and accurate. • Adjustments should be based on an analysis of past projects and their influencing factors

  16. Productivity rates vary by size - analyze your past performance Enhancement Project Productivity Step 3. Establish Productivity Rating FP/Hour Project Function Point Size

  17. Productivity Rates are Established based onHistorical Data and/or External Benchmarks Project History Database - Client Server New Development Size Effort P-Rate Schedule Benchmark by Size Category (FPs) Months FP/Mo.Months FP Range P-Rate Schedule 100 6 17 2 110 7 16 3 115 6 19 3 150 9 17 3 100-150 17 FP/Mo 2.75 Mo. 160 10 16 4 170 12 14 4 175 16 11 5 176 5 35 6 151-200 16 FP/Mo 4.75 Mo. 255 20 13 7 262 25 10 8 270 30 9 9 274 35 8 10 279 36 8 11 201-300 9 FP/Mo 9.00 Mo. 305 42 7 12 406 48 8 10 480 65 7 13 301-400 8 FP/Mo 12.00 Mo.

  18. External Benchmark Data is Available (Public and Proprietary) Major Considerations for Evaluating Benchmark Data • What is the size of the database? • How current is the data? • What types of organizations are represented? (sector, size, technology, maturity, geography) • How consistent and accurate is the information? • Time accounting and cost standards • Function points vs. Line of Code size • Defect definition and timing

  19. Step 4: Develop Estimate Function Point Estimate Project X – 112 FPs Historical Rates Effort = 6.5 Months Schedule Duration = 2.75 Months Productivity =17 FPs/Mo. • Project Attributes • Client Server • New Development • Below Average Personnel Management • Above Average Process and Methods • Project Characteristics Adjustment Factor • = 1.11 • = 1.11 Project Estimate Based on Standard Rates from Historical Data Effort = 6.5 months Schedule = 2.75 months Productivity Rate = 17 FP/Mo. Project Estimate Based on Adjusted Rates Effort = 7.2 months Schedule = 3.05 months Productivity Rate = 15 FP/Mo.

  20. Calibration and Refinement Must define your terms carefully, and recognize what is most susceptible to inconsistent reporting of measures. Where necessary adjust (calibrate) the estimate to conform with the project situation. • Define the Chart of Accounts • Estimate by Phase/Activity as appropriate • Carefully define cost components • Consider reuse • Consider scope creep and requirement clarity • Adjust for schedule compression

  21. Scope Creep - A Special Consideration • As projects progress, new requirements not considered previously become identified, this is known as “scope creep”. • On average projects encounter scope creep of approximately 35% from requirements definition to implementation. • Small project (<100FPs) 5-15% • Large projects (>1500FPs) 50-200% • By using techniques such as a clarity of requirements risk assessment while conducting a function point count, scope creep can be anticipated more accurately.

  22. Other Considerations for Estimating • Overstaffing may reduce schedule duration but will always increase effort and cost • Accuracy improves with detail • Use a number of estimating techniques for improved accuracy • Do not underestimate the impact of project size on productivity rates • Complexity • Management overhead • Cost is derivative of effort plus travel, hardware, software, training, miscellaneous • Consider trade-offs between staff size and schedule duration • Use ranges to communicate estimates

  23. Documenting the Estimate • Purpose of the estimate • Identify the estimates • Identify the level of accuracy of the estimate • Identify the assumptions and interpretations • Identify the techniques and approaches used • Identify the estimation models used • Identify the trigger for the next estimate

  24. Communication - The Estimate Report Table of Contents • Project Background and Description • Sponsor and Participant Information • Project Scope • Estimation Methodology • Project Constraints • Project Assumptions • Function Point Analysis • Attribute Evaluation • Estimate • Issues and Recommendations • Summary

  25. Summary • Estimating is primarily a communications process • Understanding and communicating assumptions is key • Size has the greatest impact on effort and schedule • Function points are the best measure of size • Estimating improves with experience • Estimates are only as accurate as the requirements • Historical data greatly improves estimating accuracy • Calibration is required for greater accuracy

  26. Estimation with Functional Metrics Benefits • Identify and quantify size based on the customers perspective • Estimate early in the development process • Quantify and manage change of scope • Base agreements on measured data • Monitor progress compared to estimates • Recognize requirements problems early and take corrective action • Improve communications • Repeatable

  27. Getting Started • Get educated on using functional metrics as an estimating and management tool - spread the word • Get trained in detailed Function Point Analysis or utilize external expertise • Look for opportunities to apply function points (pilot) • Defining requirements • Estimating projects • Evaluating COTS and vendors • Establish a measurement repository • Historical project performance statistics • External benchmark data • Establish an ongoing process • Integrate with life cycle and organizational activities • Develop expertise

More Related