The effects of fault counting methods on fault model quality

Over the past few years, we have been developing software fault predictors based on a system's measured structural evolution. We have previously shown there is a significant linear relationship between code chum, a set of synthesized metrics, and the rate at which faults are inserted into the system in terms of number of faults per unit change in code chum. A limiting factor in this and other investigations of a similar nature has been the absence of a quantitative, consistent, and repeatable definition of what constitutes a fault. The rules for fault definition were not sufficiently rigorous to provide unambiguous, repeatable fault counts. Within the framework of a space mission software development effort at the Jet Propulsion Laboratory (JPL) we have developed a standard for the precise enumeration of faults. This new standard permits software faults to be measured directly from configuration control documents. Our results indicate that reasonable predictors of the number of faults inserted into a software system can be developed from measures of the system's structural evolution. We compared the new method of counting faults with two existing techniques to determine whether the fault counting technique has an effect on the quality of the fault models constructed from those counts. The new fault definition provides higher quality fault models than those obtained using the other definitions of fault

[1]  Taghi M. Khoshgoftaar,et al.  Regression modelling of software quality: empirical investigation☆ , 1990 .

[2]  Norman F. Schneidewind Software metrics model for integrating quality control and prediction , 1997, Proceedings The Eighth International Symposium on Software Reliability Engineering.

[3]  John C. Munson,et al.  Estimating Rates of Fault Insertion and Test Effectiveness in Software Systems , 1998 .

[4]  John C. Munson,et al.  Software evolution: code delta and code churn , 2000, J. Syst. Softw..

[5]  Glenn Reeves,et al.  Software architecture themes in JPL's mission data system , 1999 .

[6]  John C. Munson,et al.  Finding Fault with Faults: A Case Study , 1997 .

[7]  Glenn Reeves,et al.  Software architecture themes in JPL's Mission Data System , 1999, 2000 IEEE Aerospace Conference. Proceedings (Cat. No.00TH8484).

[8]  Jessica Keyes,et al.  IEEE Standard Dictionary of Measures to Produce Reliable Software , 2002 .

[9]  A. P. Nikora,et al.  A practical software fault measurement and estimation framework , 2001 .

[10]  Chris F. Kemerer,et al.  A Metrics Suite for Object Oriented Design , 2015, IEEE Trans. Software Eng..

[11]  Swapna S. Gokhale,et al.  Regression Tree Modeling For The Prediction Of Software Quality , 1997 .

[12]  John C. Munson,et al.  Understanding the nature of software evolution , 2003, International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings..

[13]  Taghi M. Khoshgoftaar,et al.  MODELING SOFTWARE QUALITY WITH CLASSIFICATION TREES , 2001 .

[14]  John C. Munson,et al.  Software Engineering Measurement , 2003 .

[15]  Norman F. Schneidewind,et al.  Investigation of logistic regression as a discriminant of software quality , 2001, Proceedings Seventh International Software Metrics Symposium.

[16]  John C. Munson,et al.  Developing fault predictors for evolving software systems , 2003, Proceedings. 5th International Workshop on Enterprise Networking and Computing in Healthcare Industry (IEEE Cat. No.03EX717).

[17]  Standard Glossary of Software Engineering Terminology , 1990 .

[18]  Taghi M. Khoshgoftaar,et al.  An application of zero-inflated Poisson regression for software fault prediction , 2001, Proceedings 12th International Symposium on Software Reliability Engineering.

[19]  John C. Munson,et al.  Determining fault insertion rates for evolving software systems , 1998, Proceedings Ninth International Symposium on Software Reliability Engineering (Cat. No.98TB100257).

[20]  John C. Munson,et al.  Toward a quantifiable definition of software faults , 2002, 13th International Symposium on Software Reliability Engineering, 2002. Proceedings..

[21]  R. Cranley,et al.  Multivariate Analysis—Methods and Applications , 1985 .