An Empirical Study on the Interplay between Semantic Coupling and Co-Change of software classes

Nemitari Ajienka, Andrea Capiluppi, Steve Counsell

Research output: Contribution to journalArticle

2 Citations (Scopus)
75 Downloads (Pure)

Abstract

Software systems continuously evolve to accommodate new features and interoperability relationships between artifacts point to increasingly relevant software change impacts. During maintenance, developers must ensure that related entities are updated to be consistent with these changes. Studies in the static change impact analysis domain have identified that a combination of source code and lexical information outperforms using each one when adopted independently. However, the extraction of lexical information and the measure of how loosely or closely related two software artifacts are, considering the semantic information embedded in their comments and identifiers has been carried out using somewhat complex information retrieval (IR) techniques. The interplay between software semantic and change relationship strengths has also not been extensively studied. This work aims to fill both gaps by comparing the effectiveness of measuring semantic coupling of OO software classes using (i) simple identifier based techniques and (ii) the word corpora of the entire classes in a software system. Afterwards, we empirically investigate the interplay between semantic and change coupling. The empirical results show that: (1) identifier based methods have more computational efficiency but cannot always be used interchangeably with corpora-based methods of computing semantic coupling of classes and (2) there is no correlation between semantic and change coupling. Furthermore we found that (3) there is a directional relationship between the two, as over 70% of the semantic dependencies are also linked by change coupling but not vice versa.
Original languageEnglish
Pages (from-to)1791-1825
Number of pages35
JournalEmpirical Software Engineering
Volume23
Issue number3
Early online date20 Oct 2017
DOIs
Publication statusPublished - 1 Jun 2018

Keywords

  • Information retrieval (IR) Co-change Co-evolution Clustering Coupling Change impact analysis (CIA) Object-oriented (OO) Open-source software Software components Hidden dependencies (HD)
  • Information retrieval (IR)
  • Change impact analysis (CIA)
  • Object-oriented (OO)
  • Software components
  • Open-source software
  • Co-change
  • Hidden dependencies (HD)
  • Co-evolution
  • Coupling
  • Clustering

Fingerprint Dive into the research topics of 'An Empirical Study on the Interplay between Semantic Coupling and Co-Change of software classes'. Together they form a unique fingerprint.

  • Cite this