The increasing complexity of software systems combined with the requirements for structured and modular designs have increased many fold the number of software elements developed and delivered on recent simulator programs. The increased number of elements plus the traditionally "soft" milestones used to measure progress has made monitoring software development and predicting future progress time consuming, subjective, and often unreliable.
A software progress tracking system which uses an earned point scheme has been successfully used to monitor software development on several large simulator programs. Points are assigned for each step in the software development cycle on a per element basis. The steps are "hard" milestones in which a generated product is accepted by program management. As the products are accepted the associated points are earned. The ratio of earned points to total possible points is compiled on an element, functional area, or total software system basis to determine progress achieved. A report generator program, usually resident on the simulator computational system, tabulates the data in a variety of management reports.
The system as implemented is flexible, highly automated, and is closely coupled to configuration management systems and software quality assurance procedures to ensure validity of data. The accumulated point values are quickly ascertained, objective, and based on the current state of program development. Simple calculations or comparisons of the accumulated point values provide an accurate measure of progress, deviation from schedule, and prediction of future progress.