4.5 Article

Why and how bug blocking relations are breakable: An empirical study on breakable blocking bugs

期刊

INFORMATION AND SOFTWARE TECHNOLOGY
卷 166, 期 -, 页码 -

出版社

ELSEVIER
DOI: 10.1016/j.infsof.2023.107354

关键词

Breakable blocking bugs; Blocking relations; Empirical study

向作者/读者索取更多资源

This study aims to explore the breakable blocking bugs (BBBs) through quantitative and qualitative analysis. The analysis reveals that BBBs have higher levels of involvement, longer fix time, and more complex source code compared to other bugs. The study also identifies four reasons for breaking blocking relationships between bugs and three measures adopted by developers to break these relationships.
Context: Blocking bugs prevents other bugs from being fixed, which is difficult to repair and negatively impacts software quality. During software maintenance, developers usually try to break the blocking relationship between blocking and blocked bugs, e.g., propose a temporary fix. Object: However, to our knowledge, no studies have investigated why and how blocking relations between bugs are breakable. In this study, we aim to construct an empirical analysis to explore breakable blocking bugs (BBBs). Method: Specifically, we employ quantitative and qualitative analysis to study these BBBs from two aspects. One is to investigate the characteristics of these bugs, and the other is to explore why and how developers break the blocking relationship between bugs during software maintenance. We build a dataset on five large-scale open-source projects and classify bugs into three types (BBBs, normal blocking bugs, and other bugs) to compare the differences between BBBs and other types of bugs. Results: We observe that BBBs have higher levels of involvement, take longer to fix, and involve more complex source code than other bugs. Moreover, we summarize four reasons blocking relationships between bugs are broken, i.e., partial association (41.87%), serious influence (26.40%), time pressure (19.73%), and flawed blocking (12.21%), and three measures developers adopt to break these blocking relationships, i.e., quick patch for blocking bugs (41.33%), quick patch for blocked bugs (38.67%), and ignore the blocking relation and fix blocked bugs directly (20.00%). Conclusion: Through these analyses, it is meaningful for software maintainers to have a deeper understanding of the characteristics and repair practices of BBBs, which will help solve these BBBs effectively in the future.

作者

我是这篇论文的作者
点击您的名字以认领此论文并将其添加到您的个人资料中。

评论

主要评分

4.5
评分不足

次要评分

新颖性
-
重要性
-
科学严谨性
-
评价这篇论文

推荐

暂无数据
暂无数据