Tampere University of Technology

TUTCRIS Research Portal

On the Definition of Microservice Bad Smells

Research output: Contribution to journalArticleScientificpeer-review


Original languageEnglish
Pages (from-to)56-62
Number of pages7
JournalIEEE Software
Issue number3
Publication statusPublished - 1 May 2018
Publication typeA1 Journal article-refereed


Code smells and architectural smells (also called bad smells) are symptoms of poor design that can hinder code understandability and decrease maintainability. Several bad smells have been defined in the literature for both generic architectures and specific architectures. However, cloud-native applications based on microservices can be affected by other types of issues. In order to identify a set of microservice-specific bad smells, researchers collected evidence of bad practices by interviewing 72 developers with experience in developing systems based on microservices. Then, they classified the bad practices into a catalog of 11 microservice-specific bad smells frequently considered harmful by practitioners. The results can be used by practitioners and researchers as a guideline to avoid experiencing the same difficult situations in the systems they develop.

ASJC Scopus subject areas


  • anti-pattern, antipattern, architectural smell, bad smell, cloud computing, code smell, microservice, software development, software engineering

Publication forum classification

Field of science, Statistics Finland