Home > Research > Publications & Outputs > A theoretical and empirical analysis of three s...

Links

Text available via DOI:

View graph of relations

A theoretical and empirical analysis of three slice-based metrics for cohesion

Research output: Contribution to Journal/MagazineJournal articlepeer-review

Published

Standard

A theoretical and empirical analysis of three slice-based metrics for cohesion. / Counsell, S.; Hall, T.; Bowes, D.
In: International Journal of Software Engineering and Knowledge Engineering, Vol. 20, No. 5, 2010, p. 609-636.

Research output: Contribution to Journal/MagazineJournal articlepeer-review

Harvard

Counsell, S, Hall, T & Bowes, D 2010, 'A theoretical and empirical analysis of three slice-based metrics for cohesion', International Journal of Software Engineering and Knowledge Engineering, vol. 20, no. 5, pp. 609-636. https://doi.org/10.1142/S0218194010004888

APA

Counsell, S., Hall, T., & Bowes, D. (2010). A theoretical and empirical analysis of three slice-based metrics for cohesion. International Journal of Software Engineering and Knowledge Engineering, 20(5), 609-636. https://doi.org/10.1142/S0218194010004888

Vancouver

Counsell S, Hall T, Bowes D. A theoretical and empirical analysis of three slice-based metrics for cohesion. International Journal of Software Engineering and Knowledge Engineering. 2010;20(5):609-636. doi: 10.1142/S0218194010004888

Author

Counsell, S. ; Hall, T. ; Bowes, D. / A theoretical and empirical analysis of three slice-based metrics for cohesion. In: International Journal of Software Engineering and Knowledge Engineering. 2010 ; Vol. 20, No. 5. pp. 609-636.

Bibtex

@article{28d2f2d33cd745a28fa927446ae3f131,
title = "A theoretical and empirical analysis of three slice-based metrics for cohesion",
abstract = "Sound empirical research suggests that we should analyze software metrics from a theoretical and practical perspective. This paper describes the result of an investigation into the respective merits of two cohesion-based metrics for program slicing. The Tightness and Overlap metrics were those originally proposed by Weiser for the procedural paradigm. We compare and contrast these two metrics with a third metric for the OO paradigm first proposed by Counsell et al. based on Hamming Distance and based on a matrix-based notation. We theoretically validated the three metrics using the properties of Kitchenham and then empirically validated the same three metrics; some revealing properties of the metrics were found as a result. In particular, that the OO-based metric was the most stable of the three; module length was not a confounding factor for the Hamming Distance-based metric; it was however for the two slice-based metrics supporting previous work by Meyers and Binkley. The number of module slices however, was found to be an even stronger influence on the values of the two slice-based metrics, whose near perfect correlation with each other suggests that they may be measuring the same software attribute. We calculated and then compared the three metrics using first, a set of manufactured, pre-determined modules as a preliminary analysis and second, approximately nine thousand functions from the modules of multiple versions of the Barcode system, used previously by Meyers and Binkley in their empirical study. The over-arching message of the research is that a combination of theoretical and empirical analysis can help significantly in comparing the viability and indeed choice of a metric or set of metrics. More specifically, although cohesion is a subjective measure, there are certain properties of a metric that are less desirable than others and it is these 'relative' features that distinguish metrics, make their comparison possible and their value more evident.",
keywords = "slicing, cohesion, metrics, OO",
author = "S. Counsell and T. Hall and D. Bowes",
year = "2010",
doi = "10.1142/S0218194010004888",
language = "English",
volume = "20",
pages = "609--636",
journal = "International Journal of Software Engineering and Knowledge Engineering",
issn = "0218-1940",
publisher = "World Scientific Publishing Co. Pte Ltd",
number = "5",

}

RIS

TY - JOUR

T1 - A theoretical and empirical analysis of three slice-based metrics for cohesion

AU - Counsell, S.

AU - Hall, T.

AU - Bowes, D.

PY - 2010

Y1 - 2010

N2 - Sound empirical research suggests that we should analyze software metrics from a theoretical and practical perspective. This paper describes the result of an investigation into the respective merits of two cohesion-based metrics for program slicing. The Tightness and Overlap metrics were those originally proposed by Weiser for the procedural paradigm. We compare and contrast these two metrics with a third metric for the OO paradigm first proposed by Counsell et al. based on Hamming Distance and based on a matrix-based notation. We theoretically validated the three metrics using the properties of Kitchenham and then empirically validated the same three metrics; some revealing properties of the metrics were found as a result. In particular, that the OO-based metric was the most stable of the three; module length was not a confounding factor for the Hamming Distance-based metric; it was however for the two slice-based metrics supporting previous work by Meyers and Binkley. The number of module slices however, was found to be an even stronger influence on the values of the two slice-based metrics, whose near perfect correlation with each other suggests that they may be measuring the same software attribute. We calculated and then compared the three metrics using first, a set of manufactured, pre-determined modules as a preliminary analysis and second, approximately nine thousand functions from the modules of multiple versions of the Barcode system, used previously by Meyers and Binkley in their empirical study. The over-arching message of the research is that a combination of theoretical and empirical analysis can help significantly in comparing the viability and indeed choice of a metric or set of metrics. More specifically, although cohesion is a subjective measure, there are certain properties of a metric that are less desirable than others and it is these 'relative' features that distinguish metrics, make their comparison possible and their value more evident.

AB - Sound empirical research suggests that we should analyze software metrics from a theoretical and practical perspective. This paper describes the result of an investigation into the respective merits of two cohesion-based metrics for program slicing. The Tightness and Overlap metrics were those originally proposed by Weiser for the procedural paradigm. We compare and contrast these two metrics with a third metric for the OO paradigm first proposed by Counsell et al. based on Hamming Distance and based on a matrix-based notation. We theoretically validated the three metrics using the properties of Kitchenham and then empirically validated the same three metrics; some revealing properties of the metrics were found as a result. In particular, that the OO-based metric was the most stable of the three; module length was not a confounding factor for the Hamming Distance-based metric; it was however for the two slice-based metrics supporting previous work by Meyers and Binkley. The number of module slices however, was found to be an even stronger influence on the values of the two slice-based metrics, whose near perfect correlation with each other suggests that they may be measuring the same software attribute. We calculated and then compared the three metrics using first, a set of manufactured, pre-determined modules as a preliminary analysis and second, approximately nine thousand functions from the modules of multiple versions of the Barcode system, used previously by Meyers and Binkley in their empirical study. The over-arching message of the research is that a combination of theoretical and empirical analysis can help significantly in comparing the viability and indeed choice of a metric or set of metrics. More specifically, although cohesion is a subjective measure, there are certain properties of a metric that are less desirable than others and it is these 'relative' features that distinguish metrics, make their comparison possible and their value more evident.

KW - slicing

KW - cohesion

KW - metrics

KW - OO

U2 - 10.1142/S0218194010004888

DO - 10.1142/S0218194010004888

M3 - Journal article

VL - 20

SP - 609

EP - 636

JO - International Journal of Software Engineering and Knowledge Engineering

JF - International Journal of Software Engineering and Knowledge Engineering

SN - 0218-1940

IS - 5

ER -