Software Estimation Checklist

   How to assess the credibility of software
        cost and schedule estimates

               Gerrit Klaschke
References
   SEI report: Carnegie Mellon University,
    Software Engineering Institute Special
    Report, CMU/SEI-95-SR-004
   QSM’s Exhibit A: A Manager’s checklist for
    validating software cost and schedule
    estimates. www.qsm.com
Software Estimation Checklist
   Estimate Objectives
       Are the objectives of the estimate clear and correct and in
        writing?
       Is the lifecycle been clearly defined?
       Are included and excluded tasks clearly defined and are the task
        objectives consistent with the objectives of the estimate?
   Has the task been appropriately sized?
       Has a structured process been used to estimate the size of the
        product and size of the reuse?
       Is the process documented?
       Are the definitions, measures, and rules used to describe the
        size and reuse consistent with the requirements of the model
        used to estimate cost and schedule?
Software Estimation Checklist
   Are the estimated cost and schedule consistent with demonstrated
    accomplishments on other projects?
        Is there a structured process and/or estimation tool in use for relating
         estimates to actual costs and schedules of complete work? In writing?
         Was it followed?
        Have the costs and schedule models that were used been calibrated to
         relevant historical data?
   Have the factors that affect the estimate been identified and
    explained?
        A written summary of parameter values and their rationales should
         accompany the estimate.
        Have all assumptions been identified and explained.
        Have all uncertainties in parameter values been identified and
         quantified?
        Has a risk analysis been performed, and risks that affect cost of
         schedule been identified and documented?
Software Estimation Checklist
   Have steps been taken to ensure the integrity of the estimating
    process?
        Have the groups that will be doing the work accepted the estimate as
         an achievable target?
        Have people from related but different projects or disciplines been
         involved in preparing the estimate and have memorandums of
         agreement been completed and signed with those organizations whose
         contributions will affect cost or schedule?
   Is the organization’s historical evidence capable of supporting a
    reliable estimate?
        Is there a historical database of completed projects that was generated
         from captured effort and cost data while a project was ongoing?
        Have past projects held postmortems at the completion of a project to
         capture the events that affected costs and schedules?
Software Estimation Checklist
   Has the situation changed since the
    estimate was prepared?
       Has the estimate been invalidated by recent
        events, changing requirements, or
        management action (or inaction)?
       Is the estimate being used as the basis for
        assigning resources, deploying schedules, and
        making commitments?

Software Estimation Checklist

  • 1.
    Software Estimation Checklist How to assess the credibility of software cost and schedule estimates Gerrit Klaschke
  • 2.
    References  SEI report: Carnegie Mellon University, Software Engineering Institute Special Report, CMU/SEI-95-SR-004  QSM’s Exhibit A: A Manager’s checklist for validating software cost and schedule estimates. www.qsm.com
  • 3.
    Software Estimation Checklist  Estimate Objectives  Are the objectives of the estimate clear and correct and in writing?  Is the lifecycle been clearly defined?  Are included and excluded tasks clearly defined and are the task objectives consistent with the objectives of the estimate?  Has the task been appropriately sized?  Has a structured process been used to estimate the size of the product and size of the reuse?  Is the process documented?  Are the definitions, measures, and rules used to describe the size and reuse consistent with the requirements of the model used to estimate cost and schedule?
  • 4.
    Software Estimation Checklist  Are the estimated cost and schedule consistent with demonstrated accomplishments on other projects?  Is there a structured process and/or estimation tool in use for relating estimates to actual costs and schedules of complete work? In writing? Was it followed?  Have the costs and schedule models that were used been calibrated to relevant historical data?  Have the factors that affect the estimate been identified and explained?  A written summary of parameter values and their rationales should accompany the estimate.  Have all assumptions been identified and explained.  Have all uncertainties in parameter values been identified and quantified?  Has a risk analysis been performed, and risks that affect cost of schedule been identified and documented?
  • 5.
    Software Estimation Checklist  Have steps been taken to ensure the integrity of the estimating process?  Have the groups that will be doing the work accepted the estimate as an achievable target?  Have people from related but different projects or disciplines been involved in preparing the estimate and have memorandums of agreement been completed and signed with those organizations whose contributions will affect cost or schedule?  Is the organization’s historical evidence capable of supporting a reliable estimate?  Is there a historical database of completed projects that was generated from captured effort and cost data while a project was ongoing?  Have past projects held postmortems at the completion of a project to capture the events that affected costs and schedules?
  • 6.
    Software Estimation Checklist  Has the situation changed since the estimate was prepared?  Has the estimate been invalidated by recent events, changing requirements, or management action (or inaction)?  Is the estimate being used as the basis for assigning resources, deploying schedules, and making commitments?