The Connection of the Bug Density and Maintainability of Classes

TitleThe Connection of the Bug Density and Maintainability of Classes
Publication TypeConference Paper
Year of Publication2014
AuthorsLadányi G, Hegedűs P, Ferenc R, Siket István, Gyimóthy T
Conference Name8th International Workshop on Software Quality and Maintainability
Date Publishedfeb
Conference LocationAntwerp, Belgium
KeywordsBug density, Bug prediction, Class level maintainability, ColumbusQM, ISO/IEC 25010, Software maintainability
Abstract

Measuring software product maintainability is a central issue in software engineering which led to a number of different practical quality models. Besides system level assessments it is also desirable that these models provide technical quality information at source code element level (e.g. classes, methods) to aid the improvement of the software. Although many existing models give an ordered list of source code elements that should be improved, it is unclear how these improvements affect other important quality indicators of the system, e.g. bug density. In this paper we empirically investigate the connection of bug numbers in the classes of different open-source systems and the class level maintainability measures of our ColumbusQM probabilistic quality model using open-access bug datasets. We show that classes with lower maintainability score contain significantly more bugs than more maintainable classes. Moreover, in terms of correctness and completeness, ColumbusQM competes with statistical and machine learning prediction models especially trained on the bug data using product metrics as predictors. This is a great achievement in the light of that our model needs no training and its purpose is different (e.g. to estimate testability, or development costs) than those of the bug prediction models. In summary, we show that improving the maintainability of a software according to the suggestions of our quality model will expectedly also reduce its bug density.