Withdraw
Loading…
Use, Disuse, and Misuse of Automated Refactorings (Extended Version)
Vakilian, Mohsen; Chen, Nicholas; Negara, Stas; Rajkumar, Balaji Ambresh; Bailey, Brian P.; Johnson, Ralph E.
Loading…
Permalink
https://hdl.handle.net/2142/27730
Description
- Title
- Use, Disuse, and Misuse of Automated Refactorings (Extended Version)
- Author(s)
- Vakilian, Mohsen
- Chen, Nicholas
- Negara, Stas
- Rajkumar, Balaji Ambresh
- Bailey, Brian P.
- Johnson, Ralph E.
- Issue Date
- 2011-10-21
- Keyword(s)
- Software engineering
- Software maintenance
- Programming environments
- Human factors
- User interfaces
- Human computer interaction
- 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.
- Type of Resource
- text
- Language
- en
- Permalink
- http://hdl.handle.net/2142/27730
Owning Collections
Manage Files
Loading…
Edit Collection Membership
Loading…
Edit Metadata
Loading…
Edit Properties
Loading…
Embargoes
Loading…