In-Depth Analysis and Prediction of Coupling Metrics of Open Source Software Projects

In-Depth Analysis and Prediction of Coupling Metrics of Open Source Software Projects

Munish Saini, Raghuvar Arora, Sulaimon Oyeniyi Adebayo
Copyright: © 2022 |Pages: 16
DOI: 10.4018/JITR.301267
Article PDF Download
Open access articles are freely available for download

Abstract

This research was conducted to perform an in-depth analysis of the coupling metrics of 10 Open Source Software (OSS) projects obtained from the Comets dataset. More precisely, we analyze the dataset of object-oriented OSS projects (having 17 code related metrics such as coupling, complexity, and size metrics) to (1) examine the relationships among the coupling and other metrics (size, complexity), (2) analyze the pattern in the growth of software metrics, and (3) propose a model for prediction of coupling. To generalize the model of coupling prediction, we have applied different machine learning algorithms and validated their performance on similar datasets. The results indicated that the Random forests algorithm outperforms all other models. The relation analysis specifies the existence of strong positive relationships between the coupling, size, and complexity metrics while the pattern analysis pinpointed the increasing growth trend for coupling. The obtained outcomes will help the developers, project managers, and stakeholders in better understating the state of software health
Article Preview
Top

1. Introduction

The measurement of software metrics (Fenton et al., 2002) helps in analyzing and evaluating the Open Source Software (OSS) projects. The development paradigm (Feller & Fitzgerald, 2000) of OSS projects raises many questions when compared with that of proprietary software projects (Tapscott & Caston, 1993). Moreover, in recent times the shift is observed in the software development paradigm from proprietary software to the OSS development paradigm (Tapscott & Caston, 1993). The software quality is one of the major concerns, while the developer proposes or use the OSS development model. Many researchers have performed the fine-grained (Pascarella et al., 2019) as well as coarse-grained (Zendler et al., 2001) analysis to tackle the quality issue of the OSS development. The quality of software determines the strength of software in terms of low defect density (Slaughter et al., 1998) and ultimately it will decide the success or the failure of the OSS project (Lee et al., 2009). The software metrics obtained from the source code measures the different aspects of software development. These metrics help in evaluating the strength and the weakness of the code such as it is observed that as the software evolves the complexity of the software project increases (Daniel et al., 2009).

Quah & Thwin (2003) predicted the software metrics (number of defects and the number of lines changes) for object-oriented software projects. In the present study, we aim to extend the work of Quah & Thwin (2003) by performing the prediction of coupling metrics of object-oriented OSS projects. The coupling is the measure of the inter-module dependency or association (Allen et al., 2001). For quality software development, we expect to have low coupling between the modules. The coupling helps in quantifying internal software quality (Offutt et al., 1993). Sousa et al. (2019) analyzed the evolution behavior of coupling and evaluated the effect of coupling on software reusability and complexity. They observed an increase in the complexity of the system with coupling evolution. In this similar context of working, we extended the work of Sousa et al. (2019) to propose the general model for the prediction of software coupling metrics. We have investigated the Comets datasetα using multiple machine learning prediction algorithms and provided a comparison for all these models. The prediction of the coupling allows the developers, project managers, and other stakeholders to better understating the state of software health. Moreover, it will provide information to understand the software evolution behavior. The coupling prediction for the other object-oriented metrics of the Comets dataset intimates the project manager to perform perfective or preventive maintenance activities. This prediction will provide the measure of one dimension of internal software quality. Further, the composite analysis is performed to analyze the pattern existing in the evolution of different object-oriented metrics of OSS projects. The pattern analysis using advanced machine learning algorithms helps in nudging the mute existence of relationship patterns among the software metrics. It will allow analyzing the effect of the coupling metric on other software metrics (size and complexity metrics).

In general, we aim to achieve the following objectives:

  • 1.

    Examine the relationships among the coupling metrics and other metrics (size and complexity metrics).

  • 2.

    Analyze the pattern in the growth of different software metrics.

  • 3.

    Propose a model for the prediction of software coupling metrics (fan-in and fan-out).

The rest of the paper is organized as follows. Section 2 presents related work. Section 3 explains the analysis methodology. Section 4 presents the results and discussion on the outcomes. The last section concludes the paper and provides future directions.

Complete Article List

Search this Journal:
Reset
Volume 16: 1 Issue (2024): Forthcoming, Available for Pre-Order
Volume 15: 6 Issues (2022): 1 Released, 5 Forthcoming
Volume 14: 4 Issues (2021)
Volume 13: 4 Issues (2020)
Volume 12: 4 Issues (2019)
Volume 11: 4 Issues (2018)
Volume 10: 4 Issues (2017)
Volume 9: 4 Issues (2016)
Volume 8: 4 Issues (2015)
Volume 7: 4 Issues (2014)
Volume 6: 4 Issues (2013)
Volume 5: 4 Issues (2012)
Volume 4: 4 Issues (2011)
Volume 3: 4 Issues (2010)
Volume 2: 4 Issues (2009)
Volume 1: 4 Issues (2008)
View Complete Journal Contents Listing