Software smell detection techniques: A systematic literature review

Amjad AbuHassan, Mohammad Alshayeb*, Lahouari Ghouti

*Corresponding author for this work

Research output: Contribution to journalReview articlepeer-review

18 Scopus citations


Software smells indicate design or code issues that might degrade the evolution and maintenance of software systems. Detecting and identifying these issues are challenging tasks. This paper explores, identifies, and analyzes the existing software smell detection techniques at design and code levels. We carried out a systematic literature review (SLR) to identify and collect 145 primary studies related to smell detection in software design and code. Based on these studies, we address several questions related to the analysis of the existing smell detection techniques in terms of abstraction level (design or code), targeted smells, used metrics, implementation, and validation. Our analysis identified several detection techniques categories. We observed that 57% of the studies did not use any performance measures, 41% of them omitted details on the targeted programing language, and the detection techniques were not validated in 14% of these studies. With respect to the abstraction level, only 18% of the studies addressed bad smell detection at the design level. This low coverage urges for more focus on bad smell detection at the design level to handle them at early stages. Finally, our SLR brings to the attention of the research community several opportunities for future research.

Original languageEnglish
Article numbere2320
JournalJournal of software: Evolution and Process
Issue number3
StatePublished - Mar 2021

Bibliographical note

Funding Information:
A. AbuHassan and M. Alshayeb would like to acknowledge the support provided by the Deanship of Scientific Research at King Fahd University of Petroleum and Minerals. L. Ghouti acknowledges the support of Prince Sultan University.

Publisher Copyright:
© 2020 John Wiley & Sons, Ltd.


  • antipatterns
  • code refactoring
  • code smells
  • design smells
  • smell detection
  • software smells

ASJC Scopus subject areas

  • Software


Dive into the research topics of 'Software smell detection techniques: A systematic literature review'. Together they form a unique fingerprint.

Cite this