4.6 Article

Software evolution: the lifetime of fine-grained elements

期刊

PEERJ COMPUTER SCIENCE
卷 -, 期 -, 页码 -

出版社

PEERJ INC
DOI: 10.7717/peerj-cs.372

关键词

Software evolution; Code decay; Software aging; Hazard rate; Repository mining

资金

  1. European Union [825328]

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

Statistical analysis of source code element lifetime events revealed that code lines have a longer lifespan, with younger lines more likely to be modified or deleted. This behavior appears to be independent from specific characteristics of lines or tokens, as factors influencing their longevity across projects could not be determined.
A model regarding the lifetime of individual source code lines or tokens can estimate maintenance effort, guide preventive maintenance, and, more broadly, identify factors that can improve the efficiency of software development. We present methods and tools that allow tracking of each line's or token's birth and death. Through them, we analyze 3.3 billion source code element lifetime events in 89 revision control repositories. Statistical analysis shows that code lines are durable, with a median lifespan of about 2.4 years, and that young lines are more likely to be modified or deleted, following a Weibull distribution with the associated hazard rate decreasing over time. This behavior appears to be independent from specific characteristics of lines or tokens, as we could not determine factors that influence significantly their longevity across projects. The programing language, and developer tenure and experience were not found to be significantly correlated with line or token longevity, while project size and project age showed only a slight correlation.

作者

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

评论

主要评分

4.6
评分不足

次要评分

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

推荐

暂无数据
暂无数据