English
Related papers

Related papers: Recommending Extract Method Refactoring Based on C…

200 papers

Code refactoring is widely recognized as an essential software engineering practice to improve the understandability and maintainability of the source code. The Extract Method refactoring is considered as "Swiss army knife" of refactorings,…

Software Engineering · Computer Science 2023-12-21 Eman Abdullah AlOmar , Mohamed Wiem Mkaouer , Ali Ouni

The sound identification of refactoring opportunities is still an open problem in software engineering. Recent studies have shown the effectiveness of machine learning models in recommending methods that should undergo different refactoring…

Software Engineering · Computer Science 2021-07-23 David van der Leij , Jasper Binda , Robbert van Dalen , Pieter Vallen , Yaping Luo , Maurício Aniche

Refactoring is a critical task in software maintenance, and is usually performed to enforce better design and coding practices, while coping with design defects. The Extract Method refactoring is widely used for merging duplicate code…

Commit messages are the atomic level of software documentation. They provide a natural language description of the code change and its purpose. Messages are critical for software maintenance and program comprehension. Unlike documenting…

Software Engineering · Computer Science 2021-12-06 Eman Abdullah AlOmar , Jiaqian Liu , Kenneth Addo , Mohamed Wiem Mkaouer , Christian Newman , Ali Ouni , Zhe Yu

Although Extract Method is a key refactoring for improving program comprehension, refactoring tools for such purpose are often underused. To address this shortcoming, we present JExtract, a recommendation system based on structural…

Software Engineering · Computer Science 2015-06-22 Danilo Silva , Ricardo Terra , Marco Tulio Valente

Complex software can be hard to read, adapt, and maintain. Refactoring it can create cleaner and self-explanatory code. Refactoring tools try to guide developers towards better code, with more quality. However, most of them take too long to…

Software Engineering · Computer Science 2023-07-21 Sara Fernandes , Ademar Aguiar , André Restivo

Software refactoring plays an important role in increasing code quality. One of the most popular refactoring types is the Move Method refactoring. It is usually applied when a method depends more on members of other classes than on its own…

Software Engineering · Computer Science 2020-02-18 Zarina Kurbatova , Ivan Veselov , Yaroslav Golubev , Timofey Bryksin

Context. Source code refactoring is a well-established approach to improving source code quality without compromising its external behavior. Motivation. The literature described the benefits of refactoring, yet its application in practice…

Software Engineering · Computer Science 2024-07-26 Mikel Robredo , Matteo Esposito , Fabio Palomba , Rafael Peñaloza , Valentina Lenarduzzi

Refactoring is an indispensable practice of improving the quality and maintainability of source code in software evolution. Rename refactoring is the most frequently performed refactoring that suggests a new name for an identifier to…

Software Engineering · Computer Science 2023-05-30 Hao Liu , Yanlin Wang , Zhao Wei , Yong Xu , Juhong Wang , Hui Li , Rongrong Ji

Segmentation, a new approach based on successive edge contraction is introduced for extract method refactoring. It targets identification of distinct functionalities implemented within a method. Segmentation builds upon data and control…

Software Engineering · Computer Science 2019-08-14 Omkarendra Tiwari , Rushikesh K. Joshi

Automating the Extract Method refactoring (EMR) remains challenging and largely manual despite its importance in improving code readability and maintainability. Recent advances in open-source, resource-efficient Large Language Models (LLMs)…

Software Engineering · Computer Science 2025-10-31 Sivajeet Chand , Melih Kilic , Roland Würsching , Sushant Kumar Pandey , Alexander Pretschner

Catalogs of refactoring have key importance in software maintenance and evolution, since developers rely on such documents to understand and perform refactoring operations. Furthermore, these catalogs constitute a reference guide for…

Software Engineering · Computer Science 2022-11-17 Aline Brito , Andre Hora , Marco Tulio Valente

Automated source code refactoring, particularly extract method refactoring, is a crucial and frequently employed technique during software development. Despite its importance and frequent use by practitioners, current automated techniques…

Software Engineering · Computer Science 2024-12-25 Indranil Palit , Tushar Sharma

Widely used complex code refactoring tools lack a solid reasoning about the correctness of the transformations they implement, whilst interest in proven correct refactoring is ever increasing as only formal verification can provide true…

Software Engineering · Computer Science 2017-08-25 Dániel Horpácsi , Judit Kőszegi , Zoltán Horváth

Extract local variable is one of the most popular refactorings, and most IDEs and refactoring tools provide automated support for this refactoring. However, we find approximately 70% of the names recommended by these IDEs are different from…

Software Engineering · Computer Science 2025-07-02 Taiming Wang , Hui Liu , Yuxia Zhang , Yanjie Jiang

Excessively long methods, loaded with multiple responsibilities, are challenging to understand, debug, reuse, and maintain. The solution lies in the widely recognized Extract Method refactoring. While the application of this refactoring is…

Software Engineering · Computer Science 2024-06-03 Dorin Pomian , Abhiram Bellur , Malinda Dilhara , Zarina Kurbatova , Egor Bogomolov , Andrey Sokolov , Timofey Bryksin , Danny Dig

The responsibility of a method/function is to perform some desired computations and disseminate the results to its caller through various deliverables, including object fields and variables in output instructions. Based on this definition…

Software Engineering · Computer Science 2023-11-28 Alireza Ardalani , Saeed Parsa , Morteza Zakeri-Nasrabadi , Alexander Chatzigeorgiou

Proper naming of methods can make program code easier to understand, and thus enhance software maintainability. Yet, developers may use inconsistent names due to poor communication or a lack of familiarity with conventions within the…

Software Engineering · Computer Science 2023-08-25 Kisub Kim , Xin Zhou , Dongsun Kim , Julia Lawall , Kui Liu , Tegawendé F. Bissyandé , Jacques Klein , Jaekwon Lee , David Lo

Comprehensibility of source code is strongly affected by identifier names, therefore software developers need to give good (e.g. meaningful but short) names to identifiers. On the other hand, giving a good name is sometimes a difficult and…

Software Engineering · Computer Science 2019-07-15 Hiroshi Yonai , Yasuhiro Hayase , Hiroyuki Kitagawa

"Extract Method" refactoring is a technique for consolidating code clones. Parameterization approaches are used to extract a single method from multiple code clones that contain differences. This approach parameterizes expressions and…

Software Engineering · Computer Science 2025-12-29 Takuto Kawamoto , Yoshiki Higo
‹ Prev 1 2 3 10 Next ›