• Home
  • Search
  • Evaluation of Software Reusability Based on Coupling and Cohesion
  • Cite Icon3
  • https://doi.org/10.1142/s0218194018500420Copy DOI Icon

Evaluation of Software Reusability Based on Coupling and Cohesion

  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

Code reuse has become very popular among software developers in recent times since it saves time and resources. One of the significant difficulties to software reuse is the time pertaining to assess the fitness of the reusable code components. Over the recent years, code search engines have made momentous advancement in establishing the semantic suitability of software components for new usage scenarios. But the issue of evaluating software components based on their nonfunctional suitability has been overlooked to a large extent. The maintenance and reusability of software systems are highly influenced by the structural properties of system classes like complexity, size, coupling, cohesion, etc. The quality of object-oriented code or design artifacts is commonly measured by analyzing the structure of these artifacts in terms of the interdependencies of classes and components as well as their internal elements. In this paper, we perform an empirical analysis on Python packages for the two measures namely coupling and cohesion. The coupling score of a module is computed as module imports and the cohesion score of a module is evaluated as call dependency between classes and global functions of the module. Finally, the proposed work evaluates a package in terms of reusability score which is a cumulative score of the coupling scores and cohesion scores of all the modules within the package. The study has evaluated 15 different packages and five different releases of one single package for reusability. We have empirically tested that the Halstead’s effort metric is inversely proportional to the reusability score. The reusability score was validated using four code detuners. The proposed work was compared with the existing metrics namely cyclomatic complexity and maintainability Index showing satisfactory results.

Similar Papers
  • Conference Article
  • Citations8

Software Reuse Within the Earth Science Community

  • Jul 01, 2006
  • J Marshall +3
  • Research Article
  • Citations9

Automated classification and retrieval of reusable software components

  • Jan 04, 2008
  • Journal of the American Society for Information Science and Technology
  • Haining Yao +2
  • Research Article
  • Citations59

Software reuse analytics using integrated random forest and gradient boosting machine learning algorithm

  • Oct 27, 2020
  • Software: Practice and Experience
  • Amandeep Kaur Sandhu +1
  • Conference Article
  • Citations7

Process and products for software reuse in Ada

  • Jan 01, 1990
  • Sholom Cohen
  • Research Article
  • Citations150

Accelerating development with agent components

  • May 01, 2001
  • Computer
  • M.L Griss +1
  • Research Article
  • Citations32

Empirical analysis of the relationship between CC and SLOC in a large corpus of Java methods and C functions

  • Dec 09, 2015
  • Journal of Software: Evolution and Process
  • Davy Landman +3
  • Research Article
  • Citations12

Ranking software components for reuse based on non-functional properties

  • Jul 23, 2016
  • Information Systems Frontiers
  • Marcus Kessel +1
  • Research Article
  • Citations52

Importance of software component characterization for better software reusability

  • Jan 01, 2006
  • ACM SIGSOFT Software Engineering Notes
  • Nasib S Gill
  • Book Chapter
  • Citations1

Knowledge Engineering Support for Software Requirements, Architectures and Components

  • Jan 01, 2010
  • Muthu Ramachandran
  • Research Article
  • Citations7

Metrics for reusability of java language components

  • May 24, 2022
  • Journal of King Saud University - Computer and Information Sciences
  • Amit Rathee +1
  • Research Article
  • Citations1

Parameterized specifications for software reuse

  • Oct 01, 1992
  • ACM SIGSOFT Software Engineering Notes
  • Jingwen Cheng
  • Research Article
  • Citations9

A Mock-Up Tool for Software Component Reuse Repository

  • Apr 25, 2010
  • International Journal of Software Engineering & Applications
  • Niranjan P +1
  • Research Article
  • Citations1

Special issue on program comprehension

  • Jul 26, 2014
  • Empirical Software Engineering
  • Michael W Godfrey +1
  • Research Article
  • Citations1

A metadata driven process for assessing stability and reusability based on risk of change of software systems

  • Feb 06, 2023
  • Software: Practice and Experience
  • Bilal Mehboob +1
  • Research Article
  • Citations12

Neuro-Fuzzy Model to Estimate & Optimize Quality and Performance of Component Based Software Engineering

  • Apr 03, 2015
  • ACM SIGSOFT Software Engineering Notes
  • Gaurav Kumar +1
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.