• Publications
  • Influence
Comparing and experimenting machine learning techniques for code smell detection
tl;dr
We experiment 16 different machine-learning algorithms on four code smells (Data Class, Large Class, Feature Envy, Long Method) and 74 software systems. Expand
  • 127
  • 21
  • Open Access
Automatic detection of bad smells in code: An experimental assessment
tl;dr
This paper reviews the current panorama of the tools for automatic code smell detection. Expand
  • 137
  • 8
  • Open Access
On applying machine learning techniques for design pattern detection
tl;dr
We exploit a specific design pattern model to apply machine learning techniques.We provide a large dataset containing manually checked design pattern instances. Expand
  • 47
  • 8
A tool for design pattern detection and software architecture reconstruction
tl;dr
We propose an Eclipse plug-in called MARPLE (Metrics and Architecture Reconstruction Plug-in for Eclipse), which supports both the detection of design patterns and software architecture reconstruction activities through the use of basic elements and metrics that are mechanically extracted from the source code. Expand
  • 72
  • 7
  • Open Access
Likelog: a logic programming language for flexible data retrieval
tl;dr
In this paper, a logic programming system, called Likelog, is derived, thorougly relying on similarity. Expand
  • 46
  • 7
An Experience Report on Using Code Smells Detection Tools
tl;dr
We describe our experience on using different tools for code smell detection, each one characterized by particular features. Expand
  • 61
  • 4
  • Open Access
Arcan: A Tool for Architectural Smells Detection
tl;dr
This paper describes an open-source tool called Arcan developed for the detection of architectural smells through an evaluation of architecture dependency issues. Expand
  • 40
  • 4
  • Open Access
DPB: A Benchmark for Design Pattern Detection Tools
tl;dr
We propose a benchmark web application for design pattern detection, based on a community driven evaluation, that can be used to compare the results produced by the tools. Expand
  • 27
  • 4
  • Open Access
Design Pattern Detection in Java Systems: A Dynamic Analysis Based Approach
tl;dr
In the context of reverse engineering, the recognition of design patterns provides additional information related to the rationale behind the design. Expand
  • 9
  • 4
Automatic Metric Thresholds Derivation for Code Smell Detection
tl;dr
We propose a data-driven (i.e., Benchmark-based) method to derive threshold values for code metrics, which can be used for implementing detection rules for code smells. Expand
  • 43
  • 3