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