A Theoretical and Empirical Analysis of Three Slice-Based Metrics for Cohesion

A Theoretical and Empirical Analysis of Three Slice-Based Metrics for Cohesion
复制标题

DOI:
10.1142/s0218194010004888
复制
发表时间:
2010-08
期刊:
Int. J. Softw. Eng. Knowl. Eng.
影响因子:
--
通讯作者:
S. Counsell;T. Hall;David Bowes
S. Counsell;T. Hall;David Bowes
中科院分区:
其他
文献类型:
--
作者:
S. Counsell;T. Hall;David Bowes

文献摘要

相似文献

声音实证研究表明,我们应该从理论和实践的角度分析软件指标。本文介绍了调查对程序切片的两个基于凝聚力指标的优点进行调查的结果。紧密度和重叠度的指标是Weiser最初为程序范式提出的那些指标。我们将这两个指标与Counsell等人首先提出的OO范式进行比较和对比。基于锤子距离,并基于基于矩阵的符号。我们从理论上使用厨房的属性验证了这三个指标,然后在经验上验证了相同的三个指标。结果发现了一些指标的揭示特性。特别是,基于OO的指标是三个中最稳定的;模块长度不是基于锤距离度量的混杂因素。但是,这是两个基于切片的指标,支持Meyers和Binkley先前的工作。然而,发现模块切片的数量对两个基于切片的指标的值有更大的影响,它们彼此之间几乎完美的相关性表明它们可能正在测量相同的软件属性。我们计算并比较了三个指标,并使用第一组制造的,预定的模块作为初步分析,其次,其次,大约9000个函数来自Meyers和Binkley在其先前使用的多个版本的模块,并在其先前使用的binkley使用。经验研究。该研究的总体信息是,理论和经验分析的结合可以极大地帮助比较可行性,甚至可以选择一组指标或集合度量。更具体地说,尽管凝聚力是一种主观度量,但指标的某些属性比其他度量不那么理想,而这些“相对”特征可以区分指标,使它们的比较成为可能,并且其价值更加明显。
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.