Overview
In this activity, the Wideband Delphi technique is used to estimate the number of source lines of code (SLOC) that must be produced for a given computer software configuration item (CSCI). SLOC estimates are the primary input to most cost estimating models and are directly related to the software product, and, thus, facilitate comparing planned development versus actual results.
Roles and Responsibilities
The project software manager develops the SLOC estimate.
The software engineering process group (SEPG) members may be asked to participate in the estimating.
Experienced software developers and the software engineering manager (if assigned) may be asked to participate in the estimating.
Controls
The work breakdown structure (WBS) identifying the CSCI(s) to be estimated.
Inputs
Any available system requirements, design documentation, or other project descriptions which may aid in understanding the required functionality of the software to be developed.
Procedures
The SLOC estimate is iteratively developed. As more information about the project deliverables becomes available, the estimate is updated. For each CSCI identified in the WBS, the following steps are performed:
1) The project software manager selects experienced software developers, the software engineering manager and/or members of the SEPG to assist in estimating. These individuals should have experience in the project domain and the development language.
2) Each individual reviews any available system requirements, design documentation, or other project descriptions to familiarize themselves with the required CSCI functionality. SEPG members should identify any similar past projects and provide information on the actual SLOC counts for them.
3) The project software manager meets with the selected software developers and/or SEPG members to discuss the software project and any estimation issues. Then each member anonymously estimates (e.g., on slip of paper) the SLOC count for the CSCI.
4) The project software manager tabulates the results, and reviews them with the estimators, showing all estimates, the average, and the median. The results are discussed by the group, and steps 3 and 4 are repeated until the project software manager is satisfied with the estimate or range of estimates.
5) The SLOC estimate (or range) is then documented in the software metrics database.
Outputs
The estimated SLOC for each CSCI which are documented in the software metrics database.