An Empirical Study on Bug Severity Estimation Using Source Code Metrics and Static Analysis

06/26/2022
by   Ehsan Mashhadi, et al.
0

In the past couple of decades, significant research efforts are devoted to the prediction of software bugs (i.e., defects). These works leverage a diverse set of metrics, tools, and techniques to predict which classes, methods, lines, or commits are buggy. However, most existing work in this domain treats all bugs the same, which is not the case in practice. The more severe the bugs the higher their consequences. Therefore, it is important for a defect prediction method to estimate the severity of the identified bugs, so that the higher severity ones get immediate attention. In this paper, we provide a quantitative and qualitative study on two popular datasets (Defects4J and Bugs.jar), using 10 common source code metrics, and also two popular static analysis tools (SpotBugs and Infer) for analyzing their capability in predicting defects and their severity. We studied 3,358 buggy methods with different severity labels from 19 Java open-source projects. Results show that although code metrics are powerful in predicting the buggy code (Lines of the Code, Maintainable Index, FanOut, and Effort metrics are the best), they cannot estimate the severity level of the bugs. In addition, we observed that static analysis tools have weak performance in both predicting bugs (F1 score range of 3.1 their severity label (F1 score under 2 characteristics of the severe bugs to identify possible reasons behind the weak performance of code metrics and static analysis tools in estimating the severity. Also, our categorization shows that Security bugs have high severity in most cases while Edge/Boundary faults have low severity. Finally, we show that code metrics and static analysis methods can be complementary in terms of estimating bug severity.

READ FULL TEXT
research
09/06/2023

Method-Level Bug Severity Prediction using Source Code Metrics and LLMs

In the past couple of decades, significant research efforts are devoted ...
research
02/23/2021

A System for 3D Reconstruction Of Comminuted Tibial Plafond Bone Fractures

High energy impacts at joint locations often generate highly fragmented,...
research
11/02/2020

Employing Partial Least Squares Regression with Discriminant Analysis for Bug Prediction

Forecasting defect proneness of source code has long been a major resear...
research
06/02/2023

A systematic literature review on the code smells datasets and validation mechanisms

The accuracy reported for code smell-detecting tools varies depending on...
research
07/01/2022

Is this bug severe? A text-cum-graph based model for bug severity prediction

Repositories of large software systems have become commonplace. This mas...
research
09/24/2020

On the Relationship between Refactoring Actions and Bugs: A Differentiated Replication

Software refactoring aims at improving code quality while preserving the...
research
09/20/2021

From None to Severe: Predicting Severity in Movie Scripts

In this paper, we introduce the task of predicting severity of age-restr...

Please sign up or login with your details

Forgot password? Click here to reset