On Using Machine Learning-Based Approaches for Recommending Identifier Renamings: A Systematic Literature Review
2022 (English)Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE credits
Student thesisAlternative title
Om användningen av maskininlärningsbaserade metoder för att rekommendera identifierare namnändringar : En systematisk litteraturöversikt (Swedish)
Abstract [en]
Identifiers play a key role in code quality and comprehension, as poorly named identifiers hinder the developers’ ability to understand, debug, and maintain programs. To address these issues, several studies have proposed methods to automatically rename low-quality or inconsistent identifiers. Recently, machine learning has been used to predict potential renaming opportunities for identifiers. However, there is none or little work done that reviews the key machine learning-based methods used to rename identifiers. To that end, this project aims to conduct a systematic literature review that will answer: a) what key machine learning-based approaches exist for recommeding renamings of identifiers; b) how accurate are the different approaches; and c) what datasets are used for their evaluation. As a result of the literature review, we selected 14 learning-based identifier renaming approaches published between 2014-2021. From the extracted data, we identified a total of 19 machine learning techniques, which we categorized into a taxonomy of "deep" and "shallow" learning. In this process, we found that a majority of studies since 2019 have used deep learning techniques. Specifically, two context-based approaches achieved the best performance in detecting and renaming inconsistent identifiers. As a result, we discussed how the use of different techniques might have influenced the performance, evaluation methods, and research practices in the area of rename refactoring.
Place, publisher, year, edition, pages
2022. , p. 35
Keywords [en]
identifier quality, identifier renaming, rename refactoring, machine learning, deep learning, code refactoring
National Category
Computer Sciences
Identifiers
URN: urn:nbn:se:lnu:diva-113624OAI: oai:DiVA.org:lnu-113624DiVA, id: diva2:1666322
Subject / course
Computer Science
Educational program
Software Development and Operations, 180 credits
Supervisors
Examiners
2022-06-092022-06-082022-06-09Bibliographically approved