Skip to main navigation Skip to search Skip to main content

Decomposing class responsibilities using distance-based method similarity

  • Junha Lee
  • , Dae Kyoo Kim
  • , Suntae Kim*
  • , Sooyong Park
  • *Corresponding author for this work
    • Oakland University
    • Sogang University

    Research output: Contribution to journalJournal articlepeer-review

    Abstract

    Cohesion is a design quality that has a great impact on the posterior development and maintenance. As software evolves, the cohesion of the system becomes weaker due to the changes introduced during evolution. Over evolution, a single responsibility class may be unintentionally assigned other responsibilities, which makes the class less cohesive and more complex and consequently increases the complexity of the entire system. There has been much work on decomposing class responsibilities based on internal class relationships such as method-attribute referencing and internal method calls. However, object-oriented systems involve significant external class relationships carrying important behavioral semantics, which should be taken into account in identifying class responsibilities. In this paper, we present a novel approach for identifying and decomposing classes responsibilities based on method similarity using both internal and external class relationships.We extend the existing work for measuring similarity of internal class relationships and present a distance-based method for measuring external class relationships. We evaluate the approach using three open source applications — JMeter, JHotDraw, and ArgoUML. The evaluation shows that the presented approach improves precision over the existing work. We validate the results using independent samples T-test and ANOVA applied to a set of hypotheses. The validation confirms that the results are statistically significant.

    Original languageEnglish
    Pages (from-to)612-630
    Number of pages19
    JournalFrontiers of Computer Science
    Volume10
    Issue number4
    DOIs
    StatePublished - 2016.08.1

    Keywords

    • class decomposition
    • cohesion
    • external relationships
    • identifying responsibility
    • method similarity

    Quacquarelli Symonds(QS) Subject Topics

    • Computer Science & Information Systems

    Fingerprint

    Dive into the research topics of 'Decomposing class responsibilities using distance-based method similarity'. Together they form a unique fingerprint.

    Cite this