An empirical study of refactoringchallenges and benefits at microsoft

M Kim, T Zimmermann… - IEEE Transactions on …, 2014 - ieeexplore.ieee.org
IEEE Transactions on Software Engineering, 2014ieeexplore.ieee.org
It is widely believed that refactoring improves software quality and developer productivity.
However, few empirical studies quantitatively assess refactoring benefits or investigate
developers' perception towards these benefits. This paper presents a field study of
refactoring benefits and challenges at Microsoft through three complementary study
methods: a survey, semi-structured interviews with professional software engineers, and
quantitative analysis of version history data. Our survey finds that the refactoring definition in …
It is widely believed that refactoring improves software quality and developer productivity. However, few empirical studies quantitatively assess refactoring benefits or investigate developers' perception towards these benefits. This paper presents a field study of refactoring benefits and challenges at Microsoft through three complementary study methods: a survey, semi-structured interviews with professional software engineers, and quantitative analysis of version history data. Our survey finds that the refactoring definition in practice is not confined to a rigorous definition of semantics-preserving code transformations and that developers perceive that refactoring involves substantial cost and risks. We also report on interviews with a designated refactoring team that has led a multi-year, centralized effort on refactoring Windows. The quantitative analysis of Windows 7 version history finds the top 5 percent of preferentially refactored modules experience higher reduction in the number of inter-module dependencies and several complexity measures but increase size more than the bottom 95 percent. This indicates that measuring the impact of refactoring requires multi-dimensional assessment.
ieeexplore.ieee.org
以上显示的是最相近的搜索结果。 查看全部搜索结果