Gal A. Kaminka: Publications

Sorted by DateClassified by Publication TypeClassified by TopicGrouped by Student (current)Grouped by Former Students

CLEAN++: Code Smells Extraction for C++

Tom Mashiach, Bruno Sotto-Mayor, Gal A. Kaminka, and Meir Kalech. CLEAN++: Code Smells Extraction for C++. In Proceedings of the International Conference on Mining Software Repositories (MSR), pp. 441–445, 2023.

Download

[PDF]162.6kB  

Abstract

The extraction of features is an essential step in the process of mining software repositories.An important feature that has been actively studied in the field of mining software repositories is bad code smells.Bad code smells are patterns in the source code that indicate an underlying issue in the design and implementation of the software.Several tools have been proposed to extract code smells.However, currently, there are no tools that extract a significant number of code smells from software written in C++. Therefore, we propose \TOOL (Code smeLls ExtrActioN for C++). It is an extension of a robust static code analysis tool that implements 35 code smells.To evaluate \TOOL, we ran it over \PROJECTS open-source projects and wrote test cases to validate each code smell. Also, we converted the test cases to Java and used two Java tools to validate the effectiveness of our tool.In the end, we confirmed that the \TOOL is successful at detecting code smells.

Additional Information

BibTeX

@inproceedings{msr23,
 author = {Tom Mashiach and Bruno Sotto-Mayor and Gal A. Kaminka and Meir Kalech},
 title = {{CLEAN++}: Code Smells Extraction for {C++}},
 booktitle = {Proceedings of the International Conference on Mining Software Repositories (MSR)},
 year = {2023},
 pages = {441--445},
  wwwnote = {},
  abstract = {
 The extraction of features is an essential step in the process of mining software repositories.
An important feature that has been actively studied in the field of mining software repositories is bad code smells.
Bad code smells are patterns in the source code that indicate an underlying issue in the design and implementation of the software.
Several tools have been proposed to extract code smells.
However, currently, there are no tools that extract a significant number of code smells from software written in C++. 
Therefore, we propose \TOOL\ (Code smeLls ExtrActioN for C++). 
It is an extension of a robust static code analysis tool that implements 35 code smells.
To evaluate \TOOL, we ran it over \PROJECTS\ open-source projects and wrote test cases to validate each code smell. 
Also, we converted the test cases to Java and used two Java tools to validate the effectiveness of our tool.
In the end, we confirmed that the \TOOL\ is successful at detecting code smells.
  }
}

Generated by bib2html.pl (written by Patrick Riley ) on Thu Feb 22, 2024 11:36:58