Abstract
In object oriented paradigm, cohesion of a class refers to the degree to which members of the class are interrelated. Metrics have been defined to measure cohesiveness of a class both at design and source code levels. In comparison to source code level class cohesion metrics, only a few design level class cohesion metrics have been proposed. Design level class cohesion metrics are based on the assumption that if all the methods of a class have access to similar para-meter types then they all process closely related information. A class with a large number of parameter types common in its methods is more cohesive than a class with less number of parameter types common in its methods. In this paper, we review the design level class cohesion metrics with a special focus on metrics which use similarity of parameter types of methods of a class as the basis of its cohesiveness. Basically three metrics fall in this category: Cohesion among Methods of a Class (CAMC), Normalized Hamming Distance (NHD), and Scaled NHD (SNHD). Keeping in mind the anomalies in the definitions of the existing metrics, a variant of the existing metrics is introduced. It is named NHD Modified (NHDM). An automated metric collection tool is used to collect the metric data from an open source software program. The metric data is then subjected to statistical analysis.
Highlights
In the object oriented paradigm, cohesion of a class refers to the degree to which members of the class are interrelated
We review the design level class cohesion metrics with a special focus on metrics which use similarity of parameter types of methods of a class as the basis of its cohesiveness
In this paper we review the design level class cohesion metrics based on the first assumption
Summary
In the object oriented paradigm, cohesion of a class refers to the degree to which members of the class are interrelated. Different class cohesion metrics defined at design level are based on different assumptions. It is further assumed that the set of attribute types accessed by a method is the intersection of this method’s parameter types and the set of parameter types of all the methods in the class [9,10]. 2) Another school of thought assumes that the set of attribute types accessed by a method is the intersection of the set of this method’s parameter types and the set of its class attribute types [11]. In this paper we review the design level class cohesion metrics based on the first assumption.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.