Run-Time Cohesion Metrics: An Empirical Investigation
نویسندگان
چکیده
Cohesion is one of the fundamental measures of the ’goodness’ of a software design. The most accepted and widely studied object-oriented cohesion metric is Chidamber and Kemerer’s Lack of Cohesion in Methods measure. However due to the nature of object-oriented programs, static design metrics fail to quantify all the underlying dimensions of cohesion, as program behaviour is a function of it operational environment as well as the complexity of the source code. For these reasons two run-time object-oriented cohesion metrics are described in this paper, and applied to Java programs from the SPECjvm98 benchmark suite. A statistical analysis is conducted to assess the fundamental properties of the measures and investigate whether they are redundant with respect to the static cohesion metric. Results to date indicate that run-time cohesion metrics can provide an interesting and informative qualitative analysis of a program and complement existing static cohesion metrics.
منابع مشابه
Toward a definition of run-time object-oriented metrics
This position paper outlines a programme of research based on the quantification of run-time elements of Java programs. In particular, we adapt two common objectoriented metrics, coupling and cohesion, so that they can be applied at run-time. We demonstrate some preliminary results of our analysis on programs from the SPEC JVM98 benchmark suite.
متن کاملA Novel Class, Object and Inheritance based Coupling Measure (COICM) to Find Better OOP Paradigm using JAVA
The extent of coupling and cohesion in an objectoriented system has implications for its external quality. Various static coupling and cohesion metrics have been proposed and used in past empirical investigations; however none of these have taken the run-time properties of a program into account. As program behavior is a function of its operational environment as well as the complexity of the s...
متن کاملRevisiting Class Cohesion: An empirical investigation on several systems
Class cohesion is considered as one of most important object-oriented software attributes. Cohesion refers to the degree of relatedness between members in a class. High cohesion is a desirable property of classes. Several metrics have been proposed in literature in order to measure class cohesion in object-oriented systems. They capture class cohesion in terms of connections between members wit...
متن کاملAn empirical investigation into the dimensions of run-time coupling in Java programs
Software quality is an important external software attribute that is difficult to measure objectively. Several studies have identified a clear empirical relationship between static coupling metrics and software quality. However due to the nature of object-oriented programs, static metrics fail to quantify all the underlying dimensions of coupling, as program behaviour is a function of its opera...
متن کاملMeasuring Software Component Reusability by Coupling and Cohesion Metrics
This paper proposes a set of new static metrics of coupling and cohesion developed to assess the reusability of Java components retrieved from the Internet by a software component search engine. These metrics differ from the majority of established metrics in three respects: they measure the degree to which entities are coupled or resemble each other, they quantitatively take account of indirec...
متن کامل