Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1109/IWoR.2019.00010acmconferencesArticle/Chapter ViewAbstractPublication PagesaseConference Proceedingsconference-collections
research-article

On the customization of batch refactoring

Published: 28 May 2019 Publication History

Abstract

Refactorings are program transformations to improve code structure quality. Developers often apply these transformations in a batch, i.e., transformations in a sequence on a certain program location in order to achieve a specific goal. Either individual or batch refactorings often need to be customized to a particular program context. Otherwise, the developer may not be able to achieve his goal. Existing tools provide limited support for refactoring customization. IDE features do not allow developers to properly create their own custom refactoring. As a consequence, developers often feel reluctant to use these tools, and end up applying their refactorings manually. This position paper proposes an approach for developers to customize program transformations for their refactorings. The approach allows a developer to: (i) compose an individual or batch refactoring according to his context's needs, and (ii) reuse the custom refactorings in similar contexts. This novel approach has the potential to increase the use of automated refactoring, while allowing software companies to better tailor the IDE to their specific refactoring practices. From a research perspective, our approach motivates researchers to investigate better practices for refactoring customization.

References

[1]
M. Fowler, Refactoring, 1st ed. Addison-Wesley Professional, 1999.
[2]
E. Murphy-Hill, C. Parnin, and A. Black, "How we refactor, and how we know it," TSE'12, vol. 38, no. 1, pp. 5--18, 2012.
[3]
D. Cedrim, "Understanding and improving batch refactoring in software systems," Ph.D. dissertation, Pontifical Catholic University of Rio de Janeiro (PUC-Rio), 2018.
[4]
M. Kim, T. Zimmermann, and N. Nagappan, "An empirical study of refactoring challenges and benefits at Microsoft," TSE'14, vol. 40, no. 7, pp. 633--649, 2014.
[5]
M. Vakilian, N. Chen, S. Negara, B. A. Rajkumar, B. P. Bailey, and R. E. Johnson, "Use, disuse, and misuse of automated refactorings," in Proceedings of the 34th International Conference on Software Engineering. IEEE Press, 2012, pp. 233--243.
[6]
Y. Lin, X. Peng, Y. Cai, D. Dig, D. Zheng, and W. Zhao, "Interactive and guided architectural refactoring with search-based recommendation," in FSE'16, 2016, pp. 535--546.
[7]
Z. Xing and E. Stroulia, "Refactoring practice: How it is and how it should be supported-an eclipse case study," in ICSM'06. IEEE, 2006, pp. 458--468.
[8]
G. H. Pinto and F. Kamei, "What programmers say about refactoring tools?: An empirical investigation of stack overflow," in WRT'13. ACM, 2013, pp. 33--36.
[9]
S. R. Foster, W. G. Griswold, and S. Lerner, "WitchDoctor: IDE support for real-time auto-completion of refactorings," in ICSE'12. IEEE, 2012, pp. 222--232.
[10]
J. Oliveira, R. Gheyi, M. Mongiovi, G. Soares, M. Ribeiro, and A. Garcia, "Revisiting the refactoring mechanics," in IST'19, 2019.
[11]
A. Chávez, I. Ferreira, E. Fernandes, D. Cedrim, and A. Garcia, "How does refactoring affect internal quality attributes?" in SBES'17, 2017, pp. 74--83.
[12]
P. Meananeatra, "Identifying refactoring sequences for improving software maintainability," in ASE'12, 2012, pp. 406--409.
[13]
R. Rolim, "Learning syntactic program transformations from examples," in Proceedings of ICSE 2017.

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
IWOR '19: Proceedings of the 3rd International Workshop on Refactoring
May 2019
79 pages

Sponsors

Publisher

IEEE Press

Publication History

Published: 28 May 2019

Check for updates

Qualifiers

  • Research-article

Conference

ICSE '19
Sponsor:

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 49
    Total Downloads
  • Downloads (Last 12 months)4
  • Downloads (Last 6 weeks)0
Reflects downloads up to 30 Aug 2024

Other Metrics

Citations

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media