International Journal of Contemporary Research In Multidisciplinary, 2025;4(3):539-548
Leveraging Network Representation Methods to Optimize Software Defect Prediction
Author Name: Sweta Mehta; Pankaj K. Goswami; K. Sridhar Patnaik;
Abstract
The importance of Software Defect Prediction (SDP) is well-recognized due to its ability to identify potential defects early in the software development lifecycle. Traditional SDP approaches that rely on metrics such as code complexity and coupling often fall short in capturing the intricate interrelationships and interactions typical of large-scale software systems. To design a more efficient and accurate SDP model, it is essential to better represent the structural dependencies within software. Network-based graphical representations—such as call graphs and class dependency networks—offer a promising means to capture these complex relationships and hidden patterns. Call graphs illustrate function-level interactions by mapping caller-callee relationships, while class dependency networks represent dependencies between software modules. This study investigates the effectiveness of call graphs and class dependency networks in developing a highly accurate SDP framework. The evaluation involves ten Java-based open-source projects and ten machine learning classifiers. Results show that call graphs outperform class dependency networks in most cases, with improvements in AUC ranging from 2.9% to 8.94%. This performance gain is attributed to the call graphs' superior ability to model intricate relationships between software components—an essential factor in defect prediction. Among the classifiers tested, the Generative Adversarial Network (GAN) emerged as the most effective, achieving an AUC of 0.91 and an accuracy of 92.5%.
Keywords
Network Representations, Software Defect Prediction, PROMISE Repository, Class Dependency Networks, Call Graphs