4.5 Article

A survey on software smells

期刊

JOURNAL OF SYSTEMS AND SOFTWARE
卷 138, 期 -, 页码 158-173

出版社

ELSEVIER SCIENCE INC
DOI: 10.1016/j.jss.2017.12.034

关键词

Code smells; Software smells; Antipatterns; Software quality; Maintainability; Smell detection tools; Technical debt

资金

  1. SENECA project, Marie Sklodowska-Curie Innovative Training Networks (ITN-EID) [642954]
  2. Marie Curie Actions (MSCA) [642954] Funding Source: Marie Curie Actions (MSCA)

向作者/读者索取更多资源

Context: Smells in software systems impair software quality and make them hard to maintain and evolve. The software engineering community has explored various dimensions concerning smells and produced extensive research related to smells. The plethora of information poses challenges to the community to comprehend the state-of-the-art tools and techniques. Objective: We aim to present the current knowledge related to software smells and identify challenges as well as opportunities in the current practices. Method: We explore the definitions of smells, their causes as well as effects, and their detection mechanisms presented in the current literature. We studied 445 primary studies in detail, synthesized the information, and documented our observations. Results: The study reveals five possible defining characteristics of smells indicator, poor solution, violates best-practices, impacts quality, and recurrence. We curate ten common factors that cause smells to occur including lack of skill or awareness and priority to features over quality. We classify existing smell detection methods into five - groups metrics, rules/heuristics, history, machine learning, and optimization-based detection. Challenges in the smells detection include the tools' proneness to false-positives and poor coverage of smells detectable by existing tools. (C) 2017 Published by Elsevier Inc.

作者

我是这篇论文的作者
点击您的名字以认领此论文并将其添加到您的个人资料中。

评论

主要评分

4.5
评分不足

次要评分

新颖性
-
重要性
-
科学严谨性
-
评价这篇论文

推荐

暂无数据
暂无数据