Search engine for discovering works of Art, research articles, and books related to Art and Culture
ShareThis
Javascript must be enabled to continue!

Dynamic stacking ensemble for cross-language code smell detection

View through CrossRef
Code smells refer to poor design and implementation choices by software engineers that might affect the overall software quality. Code smells detection using machine learning models has become a popular area to build effective models that are capable of detecting different code smells in multiple programming languages. However, the process of building of such effective models has not reached a state of stability, and most of the existing research focuses on Java code smells detection. The main objective of this article is to propose dynamic ensembles using two strategies, namely greedy search and backward elimination, which are capable of accurately detecting code smells in two programming languages (i.e., Java and Python), and which are less complex than full stacking ensembles. The detection performance of dynamic ensembles were investigated within the context of four Java and two Python code smells. The greedy search and backward elimination strategies yielded different base models lists to build dynamic ensembles. In comparison to full stacking ensembles, dynamic ensembles yielded less complex models when they were used to detect most of the investigated Java and Python code smells, with the backward elimination strategy resulting in less complex models. Dynamic ensembles were able to perform comparably against full stacking ensembles with no significant detection loss. This article concludes that dynamic stacking ensembles were able to facilitate the effective and stable detection performance of Java and Python code smells over all base models and with less complexity than full stacking ensembles.
Title: Dynamic stacking ensemble for cross-language code smell detection
Description:
Code smells refer to poor design and implementation choices by software engineers that might affect the overall software quality.
Code smells detection using machine learning models has become a popular area to build effective models that are capable of detecting different code smells in multiple programming languages.
However, the process of building of such effective models has not reached a state of stability, and most of the existing research focuses on Java code smells detection.
The main objective of this article is to propose dynamic ensembles using two strategies, namely greedy search and backward elimination, which are capable of accurately detecting code smells in two programming languages (i.
e.
, Java and Python), and which are less complex than full stacking ensembles.
The detection performance of dynamic ensembles were investigated within the context of four Java and two Python code smells.
The greedy search and backward elimination strategies yielded different base models lists to build dynamic ensembles.
In comparison to full stacking ensembles, dynamic ensembles yielded less complex models when they were used to detect most of the investigated Java and Python code smells, with the backward elimination strategy resulting in less complex models.
Dynamic ensembles were able to perform comparably against full stacking ensembles with no significant detection loss.
This article concludes that dynamic stacking ensembles were able to facilitate the effective and stable detection performance of Java and Python code smells over all base models and with less complexity than full stacking ensembles.

Related Results

Hubungan Perilaku Pola Makan dengan Kejadian Anak Obesitas
Hubungan Perilaku Pola Makan dengan Kejadian Anak Obesitas
<p><em><span style="font-size: 11.0pt; font-family: 'Times New Roman',serif; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-langua...
Design of testing framework for code smell detection (OOPS) using BFO algorithm
Design of testing framework for code smell detection (OOPS) using BFO algorithm
Detection of bad smells refers to any indication in the program code of a execution that perhaps designate a issue, maintain the software and software evolution. Code Smell detecti...
Učinak poučavanja razrednomu jeziku u izobrazbi nastavnika njemačkoga
Učinak poučavanja razrednomu jeziku u izobrazbi nastavnika njemačkoga
The actual use of classroom language is principally limited to the classroom environment. As far as foreign language learning is concerned, the classroom often turns out to be the ...
An Exploratory Evaluation of Code Smell Agglomerations
An Exploratory Evaluation of Code Smell Agglomerations
Abstract Context. Code smell is a symptom of decisions about the system design or code that may degrade its modularity. For example, they may indicate inheritance misuse, ...
Exploring Smell Loss Patterns and Recovery Factors Among Covid-19 Patients in Benghazi, Libya
Exploring Smell Loss Patterns and Recovery Factors Among Covid-19 Patients in Benghazi, Libya
Objective: The main objective of this research is to investigate the recovery patterns and the demographic factors that affect patients with loss of smell post-COVID-19 disease in ...

Back to Top