17.7 Data Collection


Measurements of development activity increase the credibility of future estimates. In an early stage of a project's life cycle, all estimates of cost must make assumptions because of a lack of knowledge. Reestimates need to be performed following the completion of each increment. Making measurements an integral part of the everyday operation of the project and using them to plan and make decisions is an indicator of a high-maturity organization.

The following data should be collected:

  • Amount of legacy code replaced by an increment. Sizing data that represents the functionality replaced in the legacy system by the new system is used to improve the conversion ratio from legacy code to the new system.

  • Amount of new code developed during the increment. This data is used in the conversion ratio and cost model calibration. This could get more difficult with each increment because of the difficulty of differentiating new from previously developed code. A good configuration management system could eliminate this problem.

  • New requirements. New requirements may be introduced during an increment because of implementation differences in the new system or tweaking the functionality embedded in the legacy system. This information is used to track new growth, which is used in future planning.

  • Effort expended during the increment. This data is used to calibrate the cost model. The effort data collected needs to specify which labor categories are included, which phases are covered, whether contract labor and overtime are included, and, if possible, the effort for each major development activity, such as architecting, designing, coding, testing, and repairing.

  • Duration for each project phase. This data is used to calibrate the cost model. The duration data-collection procedures need to specify objective criteria for milestone completion. Ambiguous start- and end-phase dates produce useless duration data.

  • Quality data. Collect quality data, such as the number of defects discovered , the type of defect, the source phase of the defect, and the discovery phase of the defect. This data is used to make succeeding increments more efficient and, within an increment, to give a realistic projection of readiness for deployment.

  • Data conversion. Collect the effort and duration data for data conversion activities. This data needs to be collected and analyzed as soon as possible. The data is used to improve the engineering judgment used in the initial planning.

The initial estimates for the cost and duration may be only a rough order of magnitude in accuracy. Collecting data on pilot projects and on each increment will improve the quality of the estimates. This data should be used to check the assumptions in the estimates. The cost and duration should at least be reestimated based on past, demonstrated performance at the start of each increment.



Modernizing Legacy Systems
Modernizing Legacy Systems: Software Technologies, Engineering Processes, and Business Practices
ISBN: 0321118847
EAN: 2147483647
Year: 2003
Pages: 142

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net