Cited by 106Software Engineering ResearchSoftware Engineering Techniques and PracticesLogic, programming, and type systems

Use, disuse, and misuse of automated refactorings

Vakilian, Mohsen, Chen, Nicholas, Negara, Stas, Rajkumar, Balaji Ambresh, Bailey, Brian P., Johnson, Ralph E.·2012·2012 34th International Conference on Software Engineering (ICSE)

Abstract

Though refactoring tools have been available for more than a decade, research has shown that programmers underutilize such tools. However, little is known about why programmers do not take advantage of these tools. We have conducted a field study on programmers in their natural settings working on their code. As a result, we collected a set of interaction data from about 1268 hours of programming using our minimally intrusive data collectors. Our quantitative data show that programmers prefer lightweight methods of invoking refactorings, usually perform small changes using the refactoring tool, proceed with an automated refactoring even when it may change the behavior of the program, and rarely preview the automated refactorings. We also interviewed nine of our participants to provide deeper insight about the patterns that we observed in the behavioral data. We found that programmers use predictable automated refactorings even if they have rare bugs or change the behavior of the program. This paper reports some of the factors that affect the use of automated refactorings such as invocation method, awareness, naming, trust, and predictability and the major mismatches between programmers' expectations and automated refactorings. The results of this work contribute to producing more effective tools for refactoring complex software.

Integrity signals

Registry

Crossref · 10.1109/icse.2012.6227190

Cites

32 of 32 references verified0 citation errors · 0 not checkable

Statistics

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

Claims the paper makes

This paper’s full text isn’t openly available, 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?

  • Prior studies reported that software architects and developers primarily rely on manual efforts for large-scale refactoring activities, with minor support from disjoint tools.

    “Prior studies also reported that software architects and developers primarily rely on manual efforts for large-scale refactoring activities, with minor support from disjoint tools [37, 71, 104].”

Cites

Flagged first, then by citations

Cited by

Sorted by citations

Authors
Vakilian, M., Chen, N., Negara, S., Rajkumar, B. A., Bailey, B. P., & Johnson, R. E.
Affiliations
University of Illinois Urbana-Champaign (US)
Venue
2012 34th International Conference on Software Engineering (ICSE)
Publisher
IEEE
Published
2012-06
Pages
233-243
ISSN
0270-5257 (ISSN-L)
OpenAlex
W3151395068
Cited by
106
References
32
Citations by year
2025: 2 · 2024: 5 · 2023: 10 · 2022: 8 · 2021: 6 · 2020: 15 · 2019: 7 · 2018: 8 · 2017: 12 · 2016: 5 · 2015: 9 · 2014: 5 · 2013: 10 · 2012: 4
FWCI
7.04
Type
conference paper
Language
en
Open access
closed
Locations
ACM/IEEE International Conference on Software Engineering: Companion Proceedings (ICSE-Companion) (publishedVersion)
Funders
National Science Foundation
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 › Logic, programming, and type systems
Keywords
automated refactoring, refactoring tools, programmer behavior, tool misuse, software maintenance

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