Cited by 231Software Engineering ResearchSoftware Engineering Techniques and PracticesAdvanced Software Engineering Methodologies

An Empirical Study of RefactoringChallenges and Benefits at Microsoft

Kim, Miryung, Zimmermann, Thomas, Nagappan, Nachiappan·2014·IEEE Transactions on Software Engineering

Abstract

Abstract—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 % 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%. This indicates that measuring the impact of refactoring requires multi-dimensional assessment. Index Terms—Refactoring; empirical study; software evolution; component dependencies; defects; churn. F 1

Integrity signals

Registry

Crossref · 10.1109/tse.2014.2318734

Cites

1 of 1 references verified0 citation errors · 0 not checkable

Statistics

Recomputing p-values needs the paper’s full text.

Claims the paper makes

We couldn’t retrieve this paper’s full text, so its claims and self-check weren’t run. The registry and citation checks still apply.

Claims other papers make about this one

Each is checked against this paper’s own text: does it say what the citing paper says it does?

Cites

Flagged first, then by citations

Cited by

Sorted by citations

Authors
Kim, M., Zimmermann, T., & Nagappan, N.
Venue
IEEE Transactions on Software Engineering
Published
2014-07-01
Volume
40
Issue
7
Pages
633-649
ISSN
  • 0098-5589 (ISSN-L)
  • 1939-3520
  • 2326-3881
OpenAlex
W2159725273
Cited by
231
References
1
Citations by year
2026: 8 · 2025: 21 · 2024: 20 · 2023: 21 · 2022: 21 · 2021: 24 · 2020: 36 · 2019: 25 · 2018: 16 · 2017: 15 · 2016: 13 · 2015: 9 · 2014: 2
FWCI
36.02
Type
journal article
Language
en
Open access
closed
Locations
IEEE Transactions on Software Engineering (publishedVersion)
Funders
  • National Science Foundation (CCF-1149391, CCF-1117902, CCF-1043810)
  • Microsoft SEIF
Topics
  • Physical Sciences › Computer Science › Information Systems › Software Engineering Research
  • Physical Sciences › Computer Science › Information Systems › Software Engineering Techniques and Practices
  • Physical Sciences › Computer Science › Artificial Intelligence › Advanced Software Engineering Methodologies
Keywords
refactoring, developer perceptions, software complexity, software evolution, Windows 7, defect reduction, customer churn, program size

About these checks

Registry, retraction, Cites and statistics results are computed, not judged, with one exception: a printed reference that no index lists is read once by a model before it counts as a citation error. Claims are extracted by a model and kept only when their quote appears verbatim in the text; each cited source is then checked, with a model’s help, for whether it says what the claim relies on. Those verdicts can be wrong — read the claim’s quote and the cited source before relying on one.

Statistics and arithmetic are recomputed, not judged.

Confidence bands are shown only for fields calibrated on our annotated test set. None is calibrated yet, so no band is shown.

What counts as a claim ›How we measure confidence ›How we check this ›

Are you an author, or do you see a problem with this page? Request a review