A Unified Framework for Cohesion Measurement in Object-Oriented Systems

被引:266
作者
Briand L.C. [1 ,2 ,3 ,4 ,5 ,6 ,7 ]
Daly J.W. [1 ,8 ,9 ]
Wüst J. [1 ,10 ]
机构
[1] Fraunhofer Inst. Exp. Software Eng., Kaiserslautern
[2] Qual. and Proc. Eng. Department, Fraunhofer Inst. Exp. Software Eng.
[3] NASA Goddard Space Flight Center, University of Maryland, Computer Science Corporation
[4] University of Strathclyde, Glasgow
[5] Fraunhofer Institute (FhG IESE), Kaiserslautern
关键词
Cohesion; Measurement; Object-oriented;
D O I
10.1023/A:1009783721306
中图分类号
学科分类号
摘要
The increasing importance being placed on software measurement has led to an increased amount of research developing new software measures. Given the importance of object-oriented development techniques, one specific area where this has occurred is cohesion measurement in object-oriented systems. However, despite a very interesting body of work, there is little understanding of the motivation and empirical hypotheses behind many of these new measures. It is often difficult to determine how such measures relate to one another and for which application they can be used. As a consequence, it is very difficult for practitioners and researchers to obtain a clear picture of the state-of-the-art in order to select or define cohesion measures for object-oriented systems. This situation is addressed and clarified through several different activities. First, a standardized terminology and formalism for expressing measures is provided which ensures that all measures using it are expressed in a fully consistent and operational manner. Second, to provide a structured synthesis, a review of the existing approaches to measure cohesion in object-oriented systems takes place. Third, a unified framework, based on the issues discovered in the review, is provided and all existing measures are then classified according to this framework. Finally, a review of the empirical validation work concerning existing cohesion measures is provided. This paper contributes to an increased understanding of the state-of-the-art: a mechanism is provided for comparing measures and their potential use, integrating existing measures which examine the same concepts in different ways, and facilitating more rigorous decision making regarding the definition of new measures and the selection of existing measures for a specific goal of measurement. In addition, our review of the state-of-the-art highlights several important issues: (i) many measures are not defined in a fully operational form, (ii) relatively few of them are based on explicit empirical models as recommended by measurement theory, and (iii) an even smaller number of measures have been empirically validated; thus, the usefulness of many measures has yet to be demonstrated.
引用
收藏
页码:65 / 117
页数:52
相关论文
共 28 条
[1]  
Basili V.R., Briand L.C., Melo W.L., A validation of object-oriented design metrics as quality indicators, IEEE Transactions on Software Engineering, 22, 10, pp. 751-761, (1996)
[2]  
Bieman J.M., Kang B.-K., Cohesion and reuse in an object-oriented system, Proc. ACM Symp. Software Reusability (SSR'94), pp. 259-262, (1995)
[3]  
Briand L., Daly J., Wust J., A unified framework for coupling measurement in object-oriented systems, Technical Report ISERN 96-14, (1996)
[4]  
Briand L., El Emam K., Morasca S., Theoretical and empirical validation of software product measures, Technical Report ISERN 95-03, (1995)
[5]  
Briand L., Morasca S., Basili V., Measuring and assessing maintainability at the end of high-level design, IEEE Conference on Software Maintenance, (1993)
[6]  
Briand L., Morasca S., Basili V., Defining and validating high-level design metrics, Technical Report, (1994)
[7]  
Briand L., Morasca S., Basili V., Property-based software engineering measurement, IEEE Transactions of Software Engineering, 22, 1, pp. 68-86, (1996)
[8]  
Bunge M., Treatise on Basic Philosophy: Ontology I: The Furniture of the World, (1977)
[9]  
Bunge M., Treatise on Basic Philosophy: Ontology II: The World of Systems, (1979)
[10]  
Card D.N., Church V.E., Agresti W.W., An empirical study of software design practices, IEEE Transactions on Software Engineering, 12, 2, pp. 264-271, (1986)