Relationship Between Cohesion and Coupling Metrics for Object-Oriented Systems

Cohesion and coupling are regarded as fundamental features of the internal quality of object-oriented systems (OOS). Analyzing the relationships between cohesion and coupling metrics plays a significant role to develop efficient techniques for determining the external quality of an object-oriented system. Researchers have proposed several metrics to find cohesion and coupling in object-oriented systems. However, few of them have proposed an analysis of the relationship between cohesion and coupling. This paper empirically investigates the relationships among several cohesion and coupling metrics in object-oriented systems. This work attempts to find mutual relationships between those metrics by statistically analyzing the results of experiments. Three open-source Java systems were used for experimentation. The empirical study shows that cohesion and coupling metrics are inversely correlated.

[1]  Jitender Kumar Chhabra,et al.  Package level cohesion measurement in object-oriented software , 2011, Journal of the Brazilian Computer Society.

[2]  James F. Power,et al.  An empirical investigation into the dimensions of run-time coupling in Java programs , 2004, PPPJ.

[3]  A. Orso,et al.  Efficient and precise dynamic impact analysis using execute-after sequences , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[4]  Vojislav B. Misic,et al.  Cohesion is structural, coherence is functional: different views, different measures , 2001, Proceedings Seventh International Software Metrics Symposium.

[5]  Lionel C. Briand,et al.  A Precise Method-Method Interaction-Based Cohesion Metric for Object-Oriented Classes , 2012, TSEM.

[6]  Alejandro Zunino,et al.  Keeping Web Service interface complexity low using an OO metric-based early approach , 2016, 2016 XLII Latin American Computing Conference (CLEI).

[7]  Challa Bonja,et al.  Metrics for class cohesion and similarity between methods , 2006, ACM-SE 44.

[8]  Sallie M. Henry,et al.  Maintenance metrics for the object oriented paradigm , 1993, [1993] Proceedings First International Software Metrics Symposium.

[9]  James M. Bieman,et al.  Cohesion and reuse in an object-oriented system , 1995, SSR '95.

[10]  Yuming Zhou,et al.  Comments on ‘A cohesion measure for object‐oriented classes’ by Heung Seok Chae, Yong Rae Kwon and Doo Hwan Bae (Softw. Pract. Exper. 2000; 30:1405–1431) , 2001, Softw. Pract. Exp..

[11]  Chris F. Kemerer,et al.  Towards a metrics suite for object oriented design , 2017, OOPSLA '91.

[12]  A. Gupta,et al.  Investigating object-oriented design metrics to predict fault-proneness of software modules , 2012, 2012 CSI Sixth International Conference on Software Engineering (CONSEG).

[13]  Jehad Al Dallal Empirical Exploration for the Correlation between Class Object-Oriented Connectivity-Based Cohesion and Coupling , 2015 .

[14]  Doo-Hwan Bae,et al.  A cohesion measure for object‐oriented classes , 2000 .

[15]  Lionel C. Briand,et al.  Dynamic coupling measurement for object-oriented software , 2004, IEEE Transactions on Software Engineering.

[16]  Erik Arisholm Dynamic coupling measures for object-oriented software , 2002, Proceedings Eighth IEEE Symposium on Software Metrics.

[17]  Alejandro Zunino,et al.  Controlling complexity of web services interfaces through a metrics-driven approach , 2017, 2017 International Conference on Computing Networking and Informatics (ICCNI).

[18]  Santanu Kumar Rath,et al.  An empirical analysis of the effectiveness of software metrics and fault prediction model for identifying faulty classes , 2017, Comput. Stand. Interfaces.

[19]  Jehad Al Dallal Fault prediction and the discriminative powers of connectivity-based object-oriented class cohesion metrics , 2012, Inf. Softw. Technol..

[20]  Mourad Badri,et al.  Revisiting Class Cohesion: An empirical investigation on several systems , 2008, J. Object Technol..

[21]  Sandro Morasca,et al.  Defining and validating high-level design metrics , 1994 .

[22]  Premkumar T. Devanbu,et al.  An Investigation into Coupling Measures for C++ , 1997, Proceedings of the (19th) International Conference on Software Engineering.

[23]  Rudolf K. Keller,et al.  Cohesion as changeability indicator in object-oriented systems , 2001, Proceedings Fifth European Conference on Software Maintenance and Reengineering.

[24]  Kenneth L. Morris,et al.  Metrics for object-oriented software development environments , 1989 .

[25]  Varun Gupta Validation of dynamic coupling metrics for object-oriented software , 2011, SOEN.

[26]  James M. Bieman,et al.  Measuring Functional Cohesion , 1994, IEEE Trans. Software Eng..

[27]  Chris F. Kemerer,et al.  A Metrics Suite for Object Oriented Design , 2015, IEEE Trans. Software Eng..

[28]  Sallie M. Henry,et al.  Object-oriented metrics that predict maintainability , 1993, J. Syst. Softw..