How Does Library Migration Impact Software Quality and Comprehension? An Empirical Study

ICSR(2020)

引用 10|浏览1
暂无评分
摘要
The process of migration between different third-party software libraries, while being an typical library reuse practice, is complex, time consuming and error-prone. Typically, during a library migration process, developers opt to replace methods from a retired library with other methods from a new library without altering the software behavior. However, the extent to which the process of migrating to new libraries will be rewarded with improved software quality is still unknown. In this paper, our goal is to study the impact of library API migration on software quality. We conducted a large-scale empirical study on 9 popular API migrations, collected from a corpus of 57,447 open-source Java projects. We computed the values of commonly-used software quality metrics before and after a migration occurs. The statistical analysis of the obtained results provides evidence that library migrations are likely to improve different software quality attributes including significantly reduced coupling, increased cohesion, and improved code readability. Furthermore, we released an online portal that helps software developers to understand the impact of a library migration on software quality and recommend migration examples that adopt best design and implementation practices to improve software quality. Finally, we provide the software engineering community with a large scale dataset to foster research in software library migration.
更多
查看译文
关键词
API migration,Software quality,Code comprehension
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要