Refactoring
By M. Fowler. Proceedings of the 24th International Conference on Software Engineering. ICSE 2002, 2002
2,889 citations recorded by the source corpus.
Subfields: Information Systems, Management Information Systems, Software
View Paper: https://www.semanticscholar.org/paper/a9279f45075b48610789145ce235ed6516d2778d
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Information Systems
- Uri Alon
- Eran Yahav
- David Lo
- Massimiliano Di Penta
- Omer Levy
- Nikolaos Tsantalis
- Ahmed E. Hassan
- Sven Apel
In Management Information Systems
- Bernd Weber
- Manfred Reichert
- Valeriy Vyatkin
- Victor N. Dubinin
- Craig Chambers
- Christian Kästner
- David Notkin
- D. Golovin
In Software
- David Lo
- Massimiliano Di Penta
- Nikolaos Tsantalis
- Ahmed E. Hassan
- Xin Xia
- Marco Tulio de Oliveira Valente
- Danilo Silva
- Uri Alon
Citations in the corpus
- ArchJava: connecting software architecture to implementation (2002, methodology): “detailed semantics of method forwarding and broadcast methods are given in the language reference manual on the ArchJava web site [ Arc02 ].”
- UMLDiff: an algorithm for object-oriented design differencing (2005, methodology): “UMLDiff, we have defined queries to elicit more complicated structural change patterns, such as refactorings [ 7 ].”
- An Exploratory Study of the Impact of Code Smells on Software Change-proneness (2009, methodology): “In the following, we study 29 code smells [5, 12 ], as shown in Table 1. We choose these smells because they are representative of problems with data, complexity, size, and the features provided by classes.”
- Developing Open-Source Scientific Practice * (2018, background): “There is an extensive and growing literature on stylistic aspects of good programming [3, 9, 17, 13, 21].”
- Why we refactor? confessions of GitHub contributors (2016, methodology): “Typically, this corresponds to a Long Method code smell [10], as illustrated in this comment:”
- A catalog of stream processing optimizations (2014, neutral): “refactorings [Fowler et al. 1999].”
- Refactoring of Execution Control Charts in Basic Function Blocks of the IEC 61499 Standard (2010, positive): “One such technique that has become important in software engineering in the recent years is refactoring [ 2 ].”
- code2vec: learning distributed representations of code (2018, background): “This application was previously shown to be of significant importance [Allamanis et al. 2015a; Fowler and Beck 1999; Høst and Østvold 2009].”
- Detecting object usage anomalies (2007, background): “Two of them were defects, five were code smells (meaning any program property that indicates something may go wrong [14]) and 84 pointed to code 1 3 5 7 9 11 13 15 17 19 21 23 1 2 5 10 20 50 20 0 50 0”
- Enabling Flexibility in Process-Aware Information Systems (2012, methodology): “RF1 is comparable to the Rename Method refactoring in software engineering (SE) [91].”
- Measuring Program Comprehension: A Large-Scale Field Study with Professionals (2018, background): “A large number of LOC in a class/ method is often a sign cause of an anti-patterns named god class/method, where one class/method controls too many processes in a software system [18].”