Semantic Coupling Between Classes: Corpora or Identifiers?

Ajienka, Nemitari and Capiluppi, Andrea (2016) Semantic Coupling Between Classes: Corpora or Identifiers? The ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM), 08/09/2016-09/09/2016, Ciudad Real, Spain, pp. 1-6, ISBN 978-1-4503-4427-2, DOI

ESEM_2016_measuring_conceptual.pdf - Accepted Version
Available under License Creative Commons Attribution Non-commercial No Derivatives.

Download (263kB) | Preview


Context: Conceptual coupling is a measure of how loosely or closely related two software artifacts are, by considering the semantic information embedded in the comments and identifiers. This type of coupling is typically evaluated using the semantic information from source code into a words corpus. The extraction of words corpora can be lengthy, especially when systems are large and many classes are involved. Goal: This study investigates whether using only the class identifiers (e.g., the class names) can be used to evaluate the conceptual coupling between classes, as opposed to the words corpora of the entire classes. Method: In this study, we analyze two Java systems and extract the conceptual coupling between pairs of classes, using (i) a corpus-based approach; and (ii) two identifier-based tools. Results: Our results show that measuring the semantic similarity between classes using (only) their identifiers is similar to using the class corpora. Additionally, using the identifiers is more efficient in terms of precision, recall, and computation time. Conclusions: Using only class identifiers to measure their semantic similarity can save time on program comprehension tasks for large software projects; the findings of this paper support this hypothesis, for the systems that were used in the evaluation and can also be used to guide researchers developing future generations of tools supporting program comprehension.

Item Type: Conference or Workshop Item (Proceedings)
Additional Information: Article No 40
Subjects: Q Science > QA Mathematics > QA76 Computer software
Divisions: Computing and Information Systems
Date Deposited: 06 Nov 2017 15:16

Archive staff only

Item control page Item control page