Skip to main navigation Skip to search Skip to main content

Distance metric based divergent change bad smell detection and refactoring scheme analysis

Research output: Contribution to journalArticlepeer-review

Abstract

Bad smells are signs of potential problems in codes. Bad smells decrease the design quality of software, so the codes are hard to analyze, understand, test or reuse. Divergent Change is a common and classical bad smell in object oriented programs. The detection of this bad smell is difficult, because the features of Divergent Change are not obvious, and the detecting and refactoring of this bad smell are on the later steps of software life cycle. In this paper, the detection method of Divergent Change bad smell based on distance metric and K-nearest neighbor clustering technology is proposed. The features of Divergent Change are analyzed and transformed to distances between enti- ties. Divergent Change bad smells are detected with the results of K-nearest neighbor clustering, and targeted refactoring schemes are provided. After comparisons with sim- ilar researches, the experiments results on open source programs show that the proposed method behaves well on refactoring evaluation with low time complexity.

Original languageEnglish
Pages (from-to)1519-1531
Number of pages13
JournalInternational Journal of Innovative Computing, Information and Control
Volume10
Issue number4
StatePublished - 2014
Externally publishedYes

Keywords

  • Bad smell detection
  • Entity distance
  • K-nearest neighbor clustering
  • Refactoring scheme

Fingerprint

Dive into the research topics of 'Distance metric based divergent change bad smell detection and refactoring scheme analysis'. Together they form a unique fingerprint.

Cite this