{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,25]],"date-time":"2026-04-25T07:33:37Z","timestamp":1777102417972,"version":"3.51.4"},"reference-count":87,"publisher":"Association for Computing Machinery (ACM)","issue":"5","content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Softw. Eng. Methodol."],"published-print":{"date-parts":[[2026,5,31]]},"abstract":"<jats:p>\n                    Refactoring is a crucial practice in software maintenance that aims at improving design and coding practices while addressing design flaws. The\n                    <jats:italic toggle=\"yes\">Extract Method<\/jats:italic>\n                    refactoring is particularly popular for consolidating duplicate code fragments into a single method. Various studies have explored ways to recommend\n                    <jats:italic toggle=\"yes\">Extract Method<\/jats:italic>\n                    refactoring opportunities using techniques such as program slicing, program dependency graph analysis, change history analysis, structural similarity, and feature extraction. Despite their effectiveness, these approaches often disrupt the developer\u2019s workflow, requiring them to pause their coding and assess the refactoring opportunities suggested throughout the project, without considering the specific development context. To enhance the adoption of\n                    <jats:italic toggle=\"yes\">Extract Method<\/jats:italic>\n                    refactoring, our previous work proposed\n                    <jats:sc>AntiCopyPaster<\/jats:sc>\n                    2.0 and investigated the effectiveness of detecting and extracting code clones without disrupting the developer\u2019s workflow. To address these limitations, we develop a new approach in this article that supports the detection of Type-1 and Type-2 clones using the Program Structure Interface (PSI) and includes a custom-built\n                    <jats:italic toggle=\"yes\">Extract Method<\/jats:italic>\n                    refactoring tool. We implement our approach using an IntelliJ IDEA extension plugin. Additionally, we integrated name recommendation models, including IntelliJ\u2019s built-in recommender and\n                    <jats:sc>Code2Vec<\/jats:sc>\n                    , to enhance the quality of method names and improve developer productivity. To evaluate the accuracy and usefulness of our approach, we conducted a qualitative study involving 13 developers. The results indicate that (1) developers appreciate the approach and are satisfied with various aspects of the plugin\u2019s functionality, (2) PSI effectively identifies clones by analyzing the structural and semantic aspects of the code, (3) IntelliJ\u2019s naming recommender often provides default generic names, while\n                    <jats:sc>code2vec<\/jats:sc>\n                    produces descriptive and relevant names based on the code context, (4) the performance of\n                    <jats:sc>AntiCopyPaster<\/jats:sc>\n                    remains stable regardless of the file size and the number of clones present, (5) despite different detection and correction mechanisms,\n                    <jats:sc>JDeodorant<\/jats:sc>\n                    and\n                    <jats:sc>AntiCopyPaster<\/jats:sc>\n                    were able to perform method extraction, and\n                    <jats:sc>AntiCopyPaster<\/jats:sc>\n                    features just-in-time detection and correction, and (6) our results show an improvement in code quality after performing\n                    <jats:italic toggle=\"yes\">Extract Method<\/jats:italic>\n                    refactoring with both refactoring tools. We envision that our\n                    <jats:sc>AntiCopyPaster<\/jats:sc>\n                    solution can streamline the\n                    <jats:italic toggle=\"yes\">Extract Method<\/jats:italic>\n                    refactoring process, enhancing both developer efficiency and code quality by seamlessly integrating Type-2 clone detection and name recommendation capabilities in the development workflow.\n                  <\/jats:p>","DOI":"10.1145\/3749100","type":"journal-article","created":{"date-parts":[[2025,7,23]],"date-time":"2025-07-23T16:19:33Z","timestamp":1753287573000},"page":"1-52","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":1,"title":["<scp>AntiCopyPaster<\/scp>\n                    3.0: Just-in-Time Clone Refactoring"],"prefix":"10.1145","volume":"35","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-1800-9268","authenticated-orcid":false,"given":"Eman Abdullah","family":"AlOmar","sequence":"first","affiliation":[{"name":"Stevens Institute\u00a0of\u00a0Technology, Hoboken, New Jersey, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0001-8733-0218","authenticated-orcid":false,"given":"Jacob","family":"Ashkenas","sequence":"additional","affiliation":[{"name":"Stevens Institute\u00a0of\u00a0Technology, Hoboken, New Jersey, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0008-5533-4426","authenticated-orcid":false,"given":"Robert","family":"Feliciano","sequence":"additional","affiliation":[{"name":"Stevens Institute\u00a0of\u00a0Technology, Hoboken, New Jersey, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0000-4191-4448","authenticated-orcid":false,"given":"Matthew","family":"Angelakos","sequence":"additional","affiliation":[{"name":"Stevens Institute\u00a0of\u00a0Technology, Hoboken, New Jersey, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0007-4152-1944","authenticated-orcid":false,"given":"Dimitrios","family":"Haralamppopoulos","sequence":"additional","affiliation":[{"name":"Stevens Institute\u00a0of\u00a0Technology, Hoboken, New Jersey, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0008-7445-1564","authenticated-orcid":false,"given":"Xing","family":"Qian","sequence":"additional","affiliation":[{"name":"Stevens Institute\u00a0of\u00a0Technology, Hoboken, New Jersey, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-6010-7561","authenticated-orcid":false,"given":"Mohamed Wiem","family":"Mkaouer","sequence":"additional","affiliation":[{"name":"University of Michigan-Flint, Flint, Michigan, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-4708-0362","authenticated-orcid":false,"given":"Ali","family":"Ouni","sequence":"additional","affiliation":[{"name":"ETS Montreal, University of Quebec, Montreal, Quebec, Canada"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2026,4,24]]},"reference":[{"key":"e_1_3_3_2_1","unstructured":"IWSC. 2022. Keynote. Retrieved from https:\/\/iwsc2022.github.io\/pages\/keynote.html"},{"key":"e_1_3_3_3_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2017.2658573"},{"key":"e_1_3_3_4_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.scico.2020.102475"},{"key":"e_1_3_3_5_1","first-page":"1","article-title":"An empirical study on the impact of code duplication-aware refactoring practices on quality metrics","author":"AlOmar Eman Abdullah","year":"2025","unstructured":"Eman Abdullah AlOmar. 2025. An empirical study on the impact of code duplication-aware refactoring practices on quality metrics. Information and Software Technology 182 (2025), 1\u201321.","journal-title":"Information and Software Technology"},{"key":"e_1_3_3_6_1","unstructured":"Eman Abdullah AlOmar Jacob Ashkenas Robert Feliciano Matthew Angelakos Dimitrios Haralamppopoulos Xing Qian Mohamed Wiem Mkaouer and Ali Ouni. 2025. ReplicationPackage. Retrieved from https:\/\/se4airesearch.github.io\/AntiCopyPaster-Website\/"},{"key":"e_1_3_3_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/3551349.3559537"},{"key":"e_1_3_3_8_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.infsof.2023.107169"},{"key":"e_1_3_3_9_1","doi-asserted-by":"crossref","unstructured":"Eman Abdullah AlOmar Benjamin Knobloch Thomas Kain Christopher Kalish Mohamed Wiem Mkaouer and Ali Ouni. 2024. AntiCopyPaster 2.0: Whitebox just-in-time code duplicates extraction. In Proceedings of the 2024 IEEE\/ACM 46th International Conference on Software Engineering: Companion Proceedings 84\u201388.","DOI":"10.1145\/3639478.3640035"},{"key":"e_1_3_3_10_1","first-page":"668","article-title":"Behind the intent of extract method refactoring: A systematic literature review","author":"AlOmar Eman Abdullah","year":"2023","unstructured":"Eman Abdullah AlOmar, Mohamed Wiem Mkaouer, and Ali Ouni. 2023b. Behind the intent of extract method refactoring: A systematic literature review. IEEE Transactions on Software Engineering 50 (2023), 668\u2013694.","journal-title":"IEEE Transactions on Software Engineering"},{"key":"e_1_3_3_11_1","doi-asserted-by":"publisher","DOI":"10.1109\/ESEM.2019.8870177"},{"key":"e_1_3_3_12_1","unstructured":"Uri Alon Shaked Brody Omer Levy and Eran Yahav. 2018. code2seq: Generating sequences from structured representations of code. arXiv:1808.01400. Retrieved from https:\/\/arxiv.org\/abs\/1808.01400"},{"key":"e_1_3_3_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/3290353"},{"key":"e_1_3_3_14_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2020.3021736"},{"key":"e_1_3_3_15_1","doi-asserted-by":"publisher","DOI":"10.5555\/553876"},{"key":"e_1_3_3_16_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-013-9256-x"},{"key":"e_1_3_3_17_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2007.70725"},{"key":"e_1_3_3_18_1","doi-asserted-by":"publisher","DOI":"10.1109\/SANER.2019.8668039"},{"key":"e_1_3_3_19_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2016.2645572"},{"key":"e_1_3_3_20_1","doi-asserted-by":"publisher","DOI":"10.1109\/32.295895"},{"key":"e_1_3_3_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/1985404.1985407"},{"key":"e_1_3_3_22_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-023-10292-0"},{"key":"e_1_3_3_23_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.infsof.2020.106347"},{"key":"e_1_3_3_24_1","volume-title":"Refactoring: Improving the Design of Existing Code","author":"Fowler Martin","year":"2018","unstructured":"Martin Fowler. 2018. Refactoring: Improving the Design of Existing Code. Addison-Wesley Professional."},{"key":"e_1_3_3_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/1368088.1368132"},{"key":"e_1_3_3_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/1808901.1808906"},{"key":"e_1_3_3_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/3468264.3473924"},{"key":"e_1_3_3_28_1","volume-title":"Effect Sizes for Research: A Broad Practical Approach","author":"Grissom Robert J.","year":"2005","unstructured":"Robert J. Grissom and John J. Kim. 2005. Effect Sizes for Research: A Broad Practical Approach. Mahwah, N.J.; London: Lawrence Erlbaum Associates. Formerly CIP."},{"key":"e_1_3_3_29_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-27033-3_10"},{"key":"e_1_3_3_30_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.1981.231113"},{"key":"e_1_3_3_31_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-24659-6_16"},{"key":"e_1_3_3_32_1","doi-asserted-by":"publisher","DOI":"10.5555\/1464378.1464382"},{"key":"e_1_3_3_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/1862372.1862390"},{"key":"e_1_3_3_34_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2007.30"},{"key":"e_1_3_3_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/1984732.1984735"},{"issue":"6","key":"e_1_3_3_36_1","first-page":"101405","article-title":"Basic methodology to detect code clones","volume":"20","author":"Kaur Harpreet","year":"2022","unstructured":"Harpreet Kaur. 2022. Basic methodology to detect code clones. NeuroQuantology 20, 6 (2022), 101405.","journal-title":"NeuroQuantology"},{"key":"e_1_3_3_37_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-011-9171-y"},{"key":"e_1_3_3_38_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-1-84800-044-5_3"},{"key":"e_1_3_3_39_1","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-47764-0_3"},{"key":"e_1_3_3_40_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2006.28"},{"key":"e_1_3_3_41_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE43902.2021.00060"},{"key":"e_1_3_3_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/2568225.2568298"},{"key":"e_1_3_3_43_1","doi-asserted-by":"publisher","DOI":"10.1145\/3133908"},{"key":"e_1_3_3_44_1","volume-title":"Object-Oriented Software Metrics: A Practical Guide","author":"Lorenz Mark","year":"1994","unstructured":"Mark Lorenz and Jeff Kidd. 1994. Object-Oriented Software Metrics: A Practical Guide. Prentice-Hall, Inc."},{"key":"e_1_3_3_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/375212.375233"},{"key":"e_1_3_3_46_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.1976.233837"},{"key":"e_1_3_3_47_1","first-page":"392","volume-title":"2015 IEEE\/ACM 37th IEEE International Conference on Software Engineering","author":"Meng Na","year":"2015","unstructured":"Na Meng, Lisa Hua, Miryung Kim, and Kathryn S. McKinley. 2015. Does automated refactoring obviate systematic editing?. In 2015 IEEE\/ACM 37th IEEE International Conference on Software Engineering. IEEE, 392\u2013402."},{"key":"e_1_3_3_48_1","doi-asserted-by":"publisher","DOI":"10.1145\/2729974"},{"key":"e_1_3_3_49_1","doi-asserted-by":"publisher","DOI":"10.1109\/SCAM.2014.11"},{"key":"e_1_3_3_50_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2019.110429"},{"key":"e_1_3_3_51_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2016.05.042"},{"key":"e_1_3_3_52_1","doi-asserted-by":"publisher","DOI":"10.1145\/1368088.1368146"},{"key":"e_1_3_3_53_1","doi-asserted-by":"publisher","DOI":"10.1145\/3377811.3380926"},{"key":"e_1_3_3_54_1","doi-asserted-by":"publisher","DOI":"10.18653\/v1\/2021.nlp4prog-1.6"},{"key":"e_1_3_3_55_1","doi-asserted-by":"publisher","DOI":"10.1145\/2932631"},{"key":"e_1_3_3_56_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-017-9535-z"},{"key":"e_1_3_3_57_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSME.2014.32"},{"key":"e_1_3_3_58_1","unstructured":"Dorin Pomian Abhiram Bellur Malinda Dilhara Zarina Kurbatova Egor Bogomolov Timofey Bryksin and Danny Dig. 2024a. Together we go further: LLMs and IDE static analysis for extract method refactoring. arXiv:2401.15298. Retrieved from https:\/\/arxiv.org\/abs\/2401.15298"},{"key":"e_1_3_3_59_1","doi-asserted-by":"publisher","DOI":"10.1145\/3663529.3663803"},{"issue":"115","key":"e_1_3_3_60_1","first-page":"64","article-title":"A survey on software clone detection research","volume":"541","author":"Roy Chanchal Kumar","year":"2007","unstructured":"Chanchal Kumar Roy and James R. Cordy. 2007. A survey on software clone detection research. Queen\u2019s School of Computing TR 541, 115 (2007), 64\u201368.","journal-title":"Queen\u2019s School of Computing TR"},{"key":"e_1_3_3_61_1","doi-asserted-by":"publisher","DOI":"10.1109\/WCRE.2008.54"},{"key":"e_1_3_3_62_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.scico.2009.02.007"},{"key":"e_1_3_3_63_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2022.111221"},{"key":"e_1_3_3_64_1","doi-asserted-by":"publisher","DOI":"10.1145\/2328876.2328883"},{"key":"e_1_3_3_65_1","doi-asserted-by":"publisher","DOI":"10.1145\/2597008.2597141"},{"key":"e_1_3_3_66_1","unstructured":"Danilo Silva Ricardo Terra and Marco T\u00falio Valente. 2015. JExtract: An eclipse plug-in for recommending automated Extract Method refactorings. arXiv:1506.06086. Retrieved from https:\/\/arxiv.org\/abs\/1506.06086"},{"key":"e_1_3_3_67_1","doi-asserted-by":"publisher","DOI":"10.1145\/2950290.2950305"},{"key":"e_1_3_3_68_1","doi-asserted-by":"publisher","DOI":"10.1145\/1639950.1640030"},{"key":"e_1_3_3_69_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.infsof.2012.06.011"},{"key":"e_1_3_3_70_1","doi-asserted-by":"publisher","DOI":"10.1109\/LIVE.2013.6617346"},{"key":"e_1_3_3_71_1","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1145\/3511430","volume-title":"15th Innovations in Software Engineering Conference","author":"Tiwari Omkarendra","year":"2022","unstructured":"Omkarendra Tiwari and Rushikesh Joshi. 2022. Identifying extract method rrefactorings. In 15th Innovations in Software Engineering Conference, 1\u201311."},{"key":"e_1_3_3_72_1","doi-asserted-by":"publisher","DOI":"10.1109\/CSMR.2009.23"},{"key":"e_1_3_3_73_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2011.05.016"},{"key":"e_1_3_3_74_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2020.3007722"},{"key":"e_1_3_3_75_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2015.2448531"},{"key":"e_1_3_3_76_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2017.14"},{"key":"e_1_3_3_77_1","doi-asserted-by":"publisher","DOI":"10.1145\/3468264.3473927"},{"key":"e_1_3_3_78_1","doi-asserted-by":"publisher","DOI":"10.1109\/SANER48275.2020.9054857"},{"key":"e_1_3_3_79_1","doi-asserted-by":"publisher","DOI":"10.1145\/3468264.3468567"},{"key":"e_1_3_3_80_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2017.2679752"},{"key":"e_1_3_3_81_1","doi-asserted-by":"publisher","DOI":"10.1145\/3551349.3560426"},{"key":"e_1_3_3_82_1","doi-asserted-by":"publisher","DOI":"10.1109\/ASE.2011.6100129"},{"key":"e_1_3_3_83_1","doi-asserted-by":"publisher","DOI":"10.1109\/CompComm.2017.8322986"},{"key":"e_1_3_3_84_1","doi-asserted-by":"publisher","DOI":"10.1109\/ISSRE.2017.35"},{"key":"e_1_3_3_85_1","doi-asserted-by":"publisher","DOI":"10.1109\/APSEC.2009.20"},{"key":"e_1_3_3_86_1","doi-asserted-by":"publisher","DOI":"10.1109\/IWoR.2019.00020"},{"key":"e_1_3_3_87_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSME.2018.00021"},{"key":"e_1_3_3_88_1","doi-asserted-by":"publisher","DOI":"10.1145\/3603109"}],"container-title":["ACM Transactions on Software Engineering and Methodology"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3749100","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,4,25]],"date-time":"2026-04-25T06:34:26Z","timestamp":1777098866000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3749100"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2026,4,24]]},"references-count":87,"journal-issue":{"issue":"5","published-print":{"date-parts":[[2026,5,31]]}},"alternative-id":["10.1145\/3749100"],"URL":"https:\/\/doi.org\/10.1145\/3749100","relation":{},"ISSN":["1049-331X","1557-7392"],"issn-type":[{"value":"1049-331X","type":"print"},{"value":"1557-7392","type":"electronic"}],"subject":[],"published":{"date-parts":[[2026,4,24]]},"assertion":[{"value":"2025-01-19","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2025-07-06","order":2,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2026-04-24","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}