Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Test Estimation Techniques

37,063 views

Published on

Published in: Business

Test Estimation Techniques

  1. 1. Test Estimation Techniques…
  2. 2. What is Estimation? <ul><li>Is it a Science? </li></ul><ul><li>Is it art? </li></ul><ul><li>A bit of both - Design... </li></ul>
  3. 3. What is an Estimate ? <ul><li>An estimate is a forecast or prediction. </li></ul><ul><li>An Estimate is an approximation of what it would Cost. </li></ul><ul><li>A Rough Idea how long a Task would take to complete. </li></ul><ul><li>An Approximate calculation of Quantity or Degree or Worth. </li></ul>
  4. 4. How to measure - Estimate <ul><li>An Estimate is Effort required in terms of </li></ul><ul><ul><li>Time </li></ul></ul><ul><ul><li>Cost </li></ul></ul><ul><li>An Estimate is based on </li></ul><ul><ul><li>Past Experience/ Past Data </li></ul></ul><ul><ul><li>Available Documents/ Knowledge </li></ul></ul><ul><ul><li>Assumptions </li></ul></ul><ul><ul><li>Calculated Risks </li></ul></ul>
  5. 5. Why do we Estimate? <ul><li>Overshooting Budgets </li></ul><ul><li>Exceeding Timescales </li></ul><ul><li>Example of Overshooting Budgets and Timescales : </li></ul><ul><ul><li>A Standish Group survey of 8,000 software projects found that the average project exceeded its planned budget by 90 percent and its schedule by 120 percent . </li></ul></ul><ul><ul><li>Several industry studies have reported that fewer than half of software projects finish within their allotted schedules and budgets. </li></ul></ul>
  6. 6. Importance of Estimates Estimate too high Estimate too low Actual Schedule Estimated Schedule actual schedule = estimated schedule minimum actual schedule
  7. 7. Importance of Estimates Cont… <ul><li>A study conducted by KPMG Pete Marwick found these causes of software runaways: </li></ul><ul><li>Project Objectives Not Fully Specified (51%) </li></ul><ul><li>Bad Planning and Estimating (48%) </li></ul><ul><li>Technology New to the Organization (45%) </li></ul><ul><li>Inadequate/No Project Management Methodology (42%) </li></ul><ul><li>Insufficient Senior Staff on the Team (42%) </li></ul><ul><li>Poor Performance by Suppliers of Hardware/Software (42%) </li></ul>
  8. 8. <ul><li>Questions to be asked </li></ul><ul><li>Are the Requirements finalized? </li></ul><ul><li>If not then, How frequently the requirements change? </li></ul><ul><li>What are the Types of Testing required? </li></ul><ul><li>Are Test Assets already available? </li></ul><ul><li>If Test Assets are available, What Stage they are in ? </li></ul><ul><li>Is the Infrastructure for Testing ready? </li></ul><ul><li>Have the Assumptions/Risks been documented. </li></ul><ul><li>Are the Responsibilities clear. </li></ul>Estimation for Testing
  9. 9. Steps involved in Estimation Work out elapsed time / critical path Is the total reasonable Reassess tasks and / or effort Identify scope State assumptions Assess the tasks involved Estimate the effort for each task Calculate Total Effort No Yes Finish and Present the Estimate
  10. 10. Test Estimation Process <ul><li>Step 1 - Define Function Point </li></ul><ul><li>Step 2 - Give Weightage to all Function Points </li></ul><ul><li>Step 3 - Define an Estimate Per Function Point </li></ul><ul><li>Step 4 - Calculate Total Effort Estimate </li></ul>
  11. 11. Function Point Method <ul><li>What is a Function Point ? </li></ul><ul><ul><li>Function points are a measure of the size of computer applications and the projects that build them. </li></ul></ul><ul><ul><li>The size is measured from a functional, or user, point of view. </li></ul></ul><ul><ul><li>It is independent of the computer language, development methodology, technology or capability of the project team used to develop the application. </li></ul></ul><ul><li>Function Point can be based upon </li></ul><ul><ul><li>Use Cases </li></ul></ul><ul><ul><li>Test Scenarios/ Test Cases </li></ul></ul><ul><ul><li>Code </li></ul></ul>
  12. 12. Function Point Method – Step 1 <ul><ul><li>Define Function Points </li></ul></ul><ul><ul><li>Function Point is measured from a functional, or user, point of view. </li></ul></ul><ul><ul><li>It is independent of computer language, development methodology, technology or capability of the project team. </li></ul></ul><ul><ul><li>Based on Available Documents (SRS, Design etc.) </li></ul></ul><ul><ul><li>Also Based on Application knowledge and Application Domain </li></ul></ul><ul><ul><li>Can also be based upon Use Cases, Code, Test Scenarios </li></ul></ul>
  13. 13. Function Point Method – Step 2 <ul><ul><li>Give Weightage to all Function Points </li></ul></ul><ul><ul><li>Complex </li></ul></ul><ul><ul><ul><li>API/ Low level Interactions </li></ul></ul></ul><ul><ul><ul><li>Complex Batch Processes </li></ul></ul></ul><ul><ul><li>Medium </li></ul></ul><ul><ul><ul><li>Database Checks </li></ul></ul></ul><ul><ul><ul><li>Simple Batch Processes </li></ul></ul></ul><ul><ul><ul><li>Interaction between two or functionalities </li></ul></ul></ul><ul><ul><li>Simple </li></ul></ul><ul><ul><ul><li>GUI </li></ul></ul></ul><ul><ul><ul><li>Involving only One Functionality </li></ul></ul></ul>
  14. 14. Function Point Method – Step 3 <ul><ul><li>Define an Estimate Per Function Point </li></ul></ul><ul><ul><li>Based on similar Projects Experience. </li></ul></ul><ul><ul><li>Organization/Project Standards. </li></ul></ul>
  15. 15. Function Point Method – Step 4 <ul><ul><li>Total Effort Estimate = </li></ul></ul><ul><ul><li>Total Function Points * </li></ul></ul><ul><ul><li>Estimate defined Per Function Point </li></ul></ul>
  16. 16. Function Point Method - Example Medium Complex Simple Total Function Point Total 120 4.15 498 Weightage 1 3 5 Function Points 35 20 5 35 60 25 Estimate defined Per Function Point Total Estimated Effort( Person Hours)
  17. 17. To Conclude - Few Tips <ul><ul><li>Allow enough time to do a proper Project Estimate. </li></ul></ul><ul><ul><li>Use documented data from similar past Projects. </li></ul></ul><ul><ul><li>Use Own Estimates. </li></ul></ul><ul><ul><li>Use several different people to Estimate. </li></ul></ul><ul><ul><li>Re-Estimate the Project several times throughout its lifecycle. </li></ul></ul><ul><ul><li>Create a standardized estimation procedure. </li></ul></ul><ul><ul><li>Focus some effort on improving organization’s software Project estimation process. </li></ul></ul>
  18. 18. <ul><li>Define the scope </li></ul><ul><li>State your assumptions </li></ul><ul><li>Document your estimate </li></ul><ul><li>Assess if estimate is reasonable </li></ul><ul><li>Communicate - with requester and PM </li></ul><ul><li>Check actual effort against estimate </li></ul><ul><li>Use feedback next time </li></ul>Summary

×