Deep Learning With Class-Level Abstract Syntax Tree and Code Histories for Detecting Code Modification Requirements

dc.contributor.authorBüyük, O.O.
dc.contributor.authorNizam, Ali
dc.date.accessioned2023-10-06T10:13:50Z
dc.date.available2023-10-06T10:13:50Z
dc.date.issued2023en_US
dc.departmentFSM Vakıf Üniversitesi, Mühendislik Fakültesi, Bilgisayar Mühendisliği Bölümüen_US
dc.description.abstractImproving code quality is one of the most significant issues in the software industry. Deep learning is an emerging area of research for detecting code smells and addressing refactoring requirements. The aim of this study is to develop a deep learning-based system for code modification analysis to predict the locations and types of code modifications, while significantly reducing the need for manual labeling. We created an experimental dataset by collecting historical code data from opensource project repositories on the Internet. We introduce a novel class-level abstract syntax tree-based code embedding method for code analysis. A recurrent neural network was employed to effectively identify code modification requirements. Our system achieves an average accuracy of approximately 83% across different repositories and 86% for the entire dataset. These findings indicate that our system provides higher performance than the method-based and text-based code embedding approaches. In addition, we performed a comparative analysis with a static code analysis tool to justify the readiness of the proposed model for deployment. The correlation coefficient between the outputs demonstrates a significant correlation of 67%. Consequently, this research highlights that the deep learning-based analysis of code histories empowers software teams in identifying potential code modification requirements.en_US
dc.identifier.citationBÜYÜK, O.O. & Ali NİZAM."Deep Learning With Class-Level Abstract Syntax Tree and Code Histories for Detecting Code Modification Requirements". Journal of Systems and Software, 206. (2023).en_US
dc.identifier.doi10.1016/j.jss.2023.111851
dc.identifier.issn0164-1212
dc.identifier.issn1873-1228
dc.identifier.issue206en_US
dc.identifier.scopus2-s2.0-85172183926
dc.identifier.scopusqualityQ1
dc.identifier.urihttps://hdl.handle.net/11352/4656
dc.identifier.wosWOS:001097187200001
dc.identifier.wosqualityQ1
dc.indekslendigikaynakWeb of Science
dc.indekslendigikaynakScopus
dc.institutionauthorBüyük, O.O.
dc.institutionauthorNizam, Ali
dc.language.isoen
dc.publisherElsevieren_US
dc.relation.ispartofJournal of Systems and Software
dc.relation.publicationcategoryMakale - Uluslararası Hakemli Dergi - Kurum Öğretim Elemanıen_US
dc.rightsinfo:eu-repo/semantics/embargoedAccessen_US
dc.subjectRefactoringen_US
dc.subjectCode Smellen_US
dc.subjectRecurrent Neural Networken_US
dc.subjectAbstract Syntax Treeen_US
dc.subjectCode Embeddingen_US
dc.titleDeep Learning With Class-Level Abstract Syntax Tree and Code Histories for Detecting Code Modification Requirementsen_US
dc.typeArticle

Dosyalar

Orijinal paket

Listeleniyor 1 - 1 / 1
Yükleniyor...
Küçük Resim
İsim:
Büyük.pdf
Boyut:
1.81 MB
Biçim:
Adobe Portable Document Format
Açıklama:
Ana Makale

Lisans paketi

Listeleniyor 1 - 1 / 1
Yükleniyor...
Küçük Resim
İsim:
license.txt
Boyut:
1.44 KB
Biçim:
Item-specific license agreed upon to submission
Açıklama: