  Code smells are symptoms of poor design and implementation choices, which
might hinder comprehension, increase code complexity and fault-proneness and
decrease maintainability of software systems. The aim of our study was to
perform a triangulation of bibliometric and thematic analysis on code smell
literature production. The search was performed on Scopus (Elsevier,
Netherlands) database using the search string code smells which resulted in 442
publications. The Go-to statement was the first bad code smells identified in
software engineering history in 1968. The literature production trend has been
positive. The most productive countries were the United States, Italy and
Brazil. Eight research themes were identified: Managing software maintenance,
Smell detection-based software refactoring, Architectural smells, Improving
software quality with multi-objective approaches, Technical debt and its
instance, Quality improvement/assurance with mining software repositories,
Programming education, Integrating the concepts of anti-pattern, design defects
and design smells. Some research gaps also emerged, namely, New uncatalogued
smell identification; Smell propagation from architectural, design, code to
test, and other possible smells; and Identification of good smells. The results
of our study can help code smell researchers and practitioners understand the
broader aspects of code smells research and its translation to practice.
