LAUSR.org creates dashboard-style pages of related content for over 1.5 million academic articles. Sign Up to like articles & get recommendations!

Building empirical knowledge on the relationship between code smells and design patterns: An exploratory study

Photo by edhoradic from unsplash

Code smell is a concept describing potential problems in software design. In opposition, design pattern describes good design solutions in terms of maintainability and reusability. Code smell and design pattern… Click to show full abstract

Code smell is a concept describing potential problems in software design. In opposition, design pattern describes good design solutions in terms of maintainability and reusability. Code smell and design pattern might be perceived as metaphors supporting software design activity in terms of understanding and communication. However, empirical evaluation is needed to investigate their effect in terms of programming activity. Our objective is to build empirical knowledge on the relationship between code smells and design patterns. We carried out an exploratory study based on mining software repositories and in a baseline study addressing software evolution. In total, we analyzed 61 software. Their classes were identified as linked to both code smells and design patterns metaphors. Then, we analyzed the co‐occurrence of these metaphors. Our findings indicate that the relationship between smells and design patterns is software dependent. Some software present many smells linked to design patterns while for other software, smelly classes are not linked to design patterns. We also found that the instability metric weakly reflects this idea. Our study supports better understanding of the topic. It presents results in the opposite direction of expectations that the presence of smells is correlated with the absence of design patterns and vice versa.

Keywords: software; design patterns; smells design; design; study; code

Journal Title: Journal of Software: Evolution and Process
Year Published: 2022

Link to full text (if available)


Share on Social Media:                               Sign Up to like & get
recommendations!

Related content

More Information              News              Social Media              Video              Recommended



                Click one of the above tabs to view related content.