DocumentCode :
1401125
Title :
Quantitative analysis of faults and failures in a complex software system
Author :
Fenton, Norman E. ; Ohlsson, Niclas
Author_Institution :
Dept. of Comput. Sci., Queen Mary & Westfield Coll., London, UK
Volume :
26
Issue :
8
fYear :
2000
fDate :
8/1/2000 12:00:00 AM
Firstpage :
797
Lastpage :
814
Abstract :
The authors describe a number of results from a quantitative study of faults and failures in two releases of a major commercial software system. They tested a range of basic software engineering hypotheses relating to: the Pareto principle of distribution of faults and failures; the use of early fault data to predict later fault and failure data; metrics for fault prediction; and benchmarking fault data. For example, we found strong evidence that a small number of modules contain most of the faults discovered in prerelease testing and that a very small number of modules contain most of the faults discovered in operation. We found no evidence to support previous claims relating module size to fault density nor did we find evidence that popular complexity metrics are good predictors of either fault-prone or failure-prone modules. We confirmed that the number of faults discovered in prerelease testing is an order of magnitude greater than the number discovered in 12 months of operational use. The most important result was strong evidence of a counter-intuitive relationship between pre- and postrelease faults; those modules which are the most fault-prone prerelease are among the least fault-prone postrelease, while conversely, the modules which are most fault-prone postrelease are among the least fault-prone prerelease. This observation has serious ramifications for the commonly used fault density measure. Our results provide data-points in building up an empirical picture of the software development process
Keywords :
software metrics; software performance evaluation; software reliability; Pareto principle; basic software engineering hypotheses; benchmarking; commercial software system; complex software system faults; complexity metrics; counter-intuitive relationship; data-points; early fault data; failure data; failure-prone modules; fault density; fault density measure; fault prediction; fault-prone postrelease; fault-prone prerelease; module size; operational use; postrelease faults; prerelease testing; quantitative analysis; quantitative study; software development process; software metrics; Benchmark testing; Computer industry; Density measurement; Failure analysis; Phase measurement; Programming; Software engineering; Software metrics; Software systems; Software testing;
fLanguage :
English
Journal_Title :
Software Engineering, IEEE Transactions on
Publisher :
ieee
ISSN :
0098-5589
Type :
jour
DOI :
10.1109/32.879815
Filename :
879815
Link To Document :
بازگشت