Empirical Evaluation of Bug Proneness Index Algorithm

Empirical Evaluation of Bug Proneness Index Algorithm

Nayeem Ahmad Bhat, Sheikh Umar Farooq
Copyright: © 2020 |Pages: 18
DOI: 10.4018/IJOSSP.2020070102
OnDemand:
(Individual Articles)
Available
$37.50
No Current Special Offers
TOTAL SAVINGS: $37.50

Abstract

Researchers have devised and implemented different bug prediction approaches that use different metrics to predict bugs in software modules. However, the focus of research has been on proposing new approaches/models to predict bugs rather than on validating performance of existing approaches. In this paper, the authors evaluate and validate the findings of an algorithm that predicts the bug proneness index (bug score) of the software classes/modules. The algorithm uses normalized marginal R square values of software metrics as weights to the normalized metrics to compute bug proneness index (bug score). The experiment was performed on Eclipse JDT Core and reports significant improvements in F-measure of their algorithm as compared to the multiple linear regression. The authors found that there was no improvement in F-measure of evaluated algorithm compared to multiple linear regression. The use of marginal R square values as weights to the metrics in linear functions in the evaluated model instead of regression coefficients had no performance boost compared to the multiple linear regression.
Article Preview
Top

1. Introduction

Identifying and fixing bugs is one of the difficult and time-consuming tasks in software development lifecycle (SDLC). Our failure to manage the complexity and identify the bug prone modules results in the projects that are late, over budget and deficient in their implicit and stated quality requirements. One promising approach for detecting bugs in software before release is to use defect prediction techniques. The prediction techniques intend to predict bug score (probability of bugs, number of bugs) of different modules of the software. The aim is to get a ranked/prioritized list of different modules so that bug detection and fixing effort can be allocated in an optimal manner.

The bug prediction problem has been researched thoroughly (Bernstein et al., 2007; D’Ambros et al., 2010; El Emam et al., 2001; Graves et al., 2000; Gyimothy et al., 2005; Herzig, 2014; Kim et al., 2007; Nagappan & Ball, 2005b; Ratzinger et al., 2008). Using historical data (data extracted from Software Change Metric (SCM) and/or bug tracking systems like CVS/Subversion, Bugzilla/Jira) of the project, the task is to predict the bug score of the software modules in future releases. In the past, a variety of models have been designed to tackle the problem, relying on diverse information, such as code metrics (Basili et al., 1996; Hassan, 2009; Nagappan et al., 2006; Nagappan & Ball, 2005a; Zimmermann et al., 2007) (lines of code, response for class, coupling between objects, complexity), process metrics (Di Nucci et al., 2017, 2015; Graves et al., 2000; Mnkandla & Mpofu, 2016; Moser et al., 2008; Rahman & Devanbu, 2013; Van Rysselberghe, 2008; Zimmermann et al., 2007) (number of changes, number of refactorings) or past defects (Felix & Lee, 2017; Hassan & Holt, 2005; Joshi et al., 2007; Kim et al., 2007; Zimmermann et al., 2007). The major focus of research mostly has been on proposing new models/techniques to predict bugs rather than on validating performance of existing approaches. Validation of existing approaches is very important before their results are generalized and used in practice. This becomes more important when some method/technique claims to outperform any or all of the usual established problem-solving approaches in a problem domain.

Complete Article List

Search this Journal:
Reset
Volume 15: 1 Issue (2024): Forthcoming, Available for Pre-Order
Volume 14: 1 Issue (2023)
Volume 13: 4 Issues (2022): 1 Released, 3 Forthcoming
Volume 12: 4 Issues (2021)
Volume 11: 4 Issues (2020)
Volume 10: 4 Issues (2019)
Volume 9: 4 Issues (2018)
Volume 8: 4 Issues (2017)
Volume 7: 4 Issues (2016)
Volume 6: 1 Issue (2015)
Volume 5: 3 Issues (2014)
Volume 4: 4 Issues (2012)
Volume 3: 4 Issues (2011)
Volume 2: 4 Issues (2010)
Volume 1: 4 Issues (2009)
View Complete Journal Contents Listing