Ahmed AbduZhengjun ZhaiHakim A. AbdoRedhwan AlgabriSungon Lee
Cross-project software defect prediction (CPDP) aims to enhance defect prediction in target projects with limited or no historical data by leveraging information from related source projects.The existing CPDP approaches rely on static metrics or dynamic syntactic features, which have shown limited effectiveness in CPDP due to their inability to capture higher-level system properties, such as complex design patterns, relationships between multiple functions, and dependencies in different software projects, that are important for CPDP.This paper introduces a novel approach, a graph-based feature learning model for CPDP (GB-CPDP), that utilizes NetworkX to extract features and learn representations of program entities from control flow graphs (CFGs) and data dependency graphs (DDGs).These graphs capture the structural and data dependencies within the source code.The proposed approach employs Node2Vec to transform CFGs and DDGs into numerical vectors and leverages Long Short-Term Memory (LSTM) networks to learn predictive models.The process involves graph construction, feature learning through graph embedding and LSTM, and defect prediction.Experimental evaluation using nine open-source Java projects from the PROMISE dataset demonstrates that GB-CPDP outperforms state-of-the-art CPDP methods in terms of F1-measure and Area Under the Curve (AUC).The results showcase the effectiveness of GB-CPDP in improving the performance of cross-project defect prediction.
Qing HeBiwen LiBeijun ShenYong Xia
Tianwei LeiJingfeng XueWeijie Han
Aries SaifudinAgung TrisetyarsoWawan SupartaChuanze KangB S AbbasYaya Heryadi
Jagan Mohan ReddyK. MuthukumaranHossain ShahriarVictor ClincyNazmus Sakib