Using process history to predict software quality
- 1 April 1998
- journal article
- research article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in Computer
- Vol. 31 (4) , 66-72
- https://doi.org/10.1109/2.666844
Abstract
Mission-critical systems must use reliable software. However, assuring software reliability often entails costly and time-consuming development processes. Software quality models can mitigate these costs by predicting module reliability early on, which lets developers focus improvement efforts on modules that require the most attention. Many software quality models use only product metrics such as lines of code or McCabe cyclomatic complexity. This product focus assumes that all modules have a similar process history. For systems that evolve, this assumption is not valid. Modules with similar product measurements may have different quality because of different development histories. For example, a reused module with many changes is likely to have more faults than a similar module with few changes. The authors have developed a quality model based solely on process-history variables. Their study posits that a module's history prior to integration can help predict the likelihood of fault discovery during integration and test. Such module reliability predictions can be used to focus review integration, and testing resources on high-risk areas of a system. They report their findings in a case study involving the Joint Surveillance Target Attack Radar System, an embedded, real-time military system developed by Northrop Grumman for the US Air Force in support of the US Army.Keywords
This publication has 9 references indexed in Scilit:
- The impact of costs of misclassification on software quality modelingPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- A validation of object-oriented design metrics as quality indicatorsIEEE Transactions on Software Engineering, 1996
- Early quality prediction: a case study in telecommunicationsIEEE Software, 1996
- Detection of fault-prone software modules during a spiral life cyclePublished by Institute of Electrical and Electronics Engineers (IEEE) ,1996
- The impact of software enhancement on software reliabilityIEEE Transactions on Reliability, 1995
- An empirical study of program quality during testing and maintenanceSoftware Quality Journal, 1994
- Projecting software defects from analyzing Ada designsIEEE Transactions on Software Engineering, 1992
- Empirically based analysis of failures in software systemsIEEE Transactions on Reliability, 1990
- A spiral model of software development and enhancementComputer, 1988