Ó Cinnéide, M;
Hemati Moghadam, I;
Harman, M;
Counsell, S;
Tratt, L;
(2017)
An experimental search-based approach to cohesion metric evaluation.
Empirical Software Engineering
, 22
(1)
pp. 292-329.
10.1007/s10664-016-9427-7.
Preview |
Text
art%3A10.1007%2Fs10664-016-9427-7.pdf - Published Version Download (2MB) | Preview |
Abstract
In spite of several decades of software metrics research and practice, there is little understanding of how software metrics relate to one another, nor is there any established methodology for comparing them. We propose a novel experimental technique, based on search-based refactoring, to ‘animate’ metrics and observe their behaviour in a practical setting. Our aim is to promote metrics to the level of active, opinionated objects that can be compared experimentally to uncover where they conflict, and to understand better the underlying cause of the conflict. Our experimental approaches include semi-random refactoring, refactoring for increased metric agreement/disagreement, refactoring to increase/decrease the gap between a pair of metrics, and targeted hypothesis testing. We apply our approach to five popular cohesion metrics using ten real-world Java systems, involving 330,000 lines of code and the application of over 78,000 refactorings. Our results demonstrate that cohesion metrics disagree with each other in a remarkable 55 % of cases, that Low-level Similarity-based Class Cohesion (LSCC) is the best representative of the set of metrics we investigate while Sensitive Class Cohesion (SCOM) is the least representative, and we discover several hitherto unknown differences between the examined metrics. We also use our approach to investigate the impact of including inheritance in a cohesion metric definition and find that doing so dramatically changes the metric.
Type: | Article |
---|---|
Title: | An experimental search-based approach to cohesion metric evaluation |
Open access status: | An open access version is available from UCL Discovery |
DOI: | 10.1007/s10664-016-9427-7 |
Publisher version: | http://dx.doi.org/10.1007/s10664-016-9427-7 |
Language: | English |
Additional information: | © 2016 The Author(s). This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made. |
UCL classification: | UCL UCL > Provost and Vice Provost Offices > UCL BEAMS UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science > Dept of Computer Science |
URI: | https://discovery-pp.ucl.ac.uk/id/eprint/1489868 |
Archive Staff Only
View Item |