Implementation of Gated Graph Neural Network (GGNN) on Bug Prediction in Java, Python, and C++ Programming Languages

Software bug is a defect on a system which can lead to incorrect results or failure. It can make the development costs more wasteful. A software defect prediction can help the development process to find bugs and prioritize testing efforts. Traditional bug prediction like CVDP (Cross-Version Defect Prediction) approach rely mostly on structure-based and predefined patterns that struggle to capture complex interaction across source code. This can create gaps to accurately identify bugs that appear from deep relationships between elements. To this end, we need a better approach for bug prediction which can capture long dependencies and code context to be more details. Therefore we use the GNN (Graph Neural Network) approach, a type of neural network made to learn over graph-structured data. This approach represents code structure into a node and using messaging mechanism on every node to precisely capture relationships between code lines and complex details. GNN has many models, but in this paper we specifically use GGNN (Gated Graph Neural Network). GGNN has a GRU mechanism which can control the information gained from neighbour node and remove the unrelated information during messaging mechanism continuously. We use this model to predict bugs in multiple programming languages that have a different structure: Python, Java, and C++. The result is that our model gains a significant result than CVDP approach with F1-score 0.9079, loss value of 0.2919. precision of 0.9175, and recall of 0.9058.

Authors

Institutions

Publication Details

Journal
Procedia Computer Science
Published
2025-01-01
DOI
https://doi.org/10.1016/j.procs.2025.09.058
Primary Topic
Software Engineering Research
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Implementation of Gated Graph Neural Network (GGNN) on Bug Prediction in Java, Python, and C++ Programming Languages

Michael Wijaya, Ricky Reynardo Siswanto, Elroy Juwono, Matthew Farrell Novarino Phoa et al.
Procedia Computer Science
Software Engineering Research
article

Implementation of Gated Graph Neural Network (GGNN) on Bug Prediction in Java, Python, and C++ Programming Languages

Michael Wijaya, Ricky Reynardo Siswanto, Elroy Juwono, Matthew Farrell Novarino Phoa, Kristien Margi Suryaningrumi
article en

Abstract

Software bug is a defect on a system which can lead to incorrect results or failure. It can make the development costs more wasteful. A software defect prediction can help the development process to find bugs and prioritize testing efforts. Traditional bug prediction like CVDP (Cross-Version Defect Prediction) approach rely mostly on structure-based and predefined patterns that struggle to capture complex interaction across source code. This can create gaps to accurately identify bugs that appear from deep relationships between elements. To this end, we need a better approach for bug prediction which can capture long dependencies and code context to be more details. Therefore we use the GNN (Graph Neural Network) approach, a type of neural network made to learn over graph-structured data. This approach represents code structure into a node and using messaging mechanism on every node to precisely capture relationships between code lines and complex details. GNN has many models, but in this paper we specifically use GGNN (Gated Graph Neural Network). GGNN has a GRU mechanism which can control the information gained from neighbour node and remove the unrelated information during messaging mechanism continuously. We use this model to predict bugs in multiple programming languages that have a different structure: Python, Java, and C++. The result is that our model gains a significant result than CVDP approach with F1-score 0.9079, loss value of 0.2919. precision of 0.9175, and recall of 0.9058.

Procedia Computer ScienceVol. 269
Binus University (ID)
Openalex Percentile: Top 53%
Software Engineering Research
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.

Implementation of Gated Graph Neural Network (GGNN) on Bug Prediction in Java, Python, and C++ Programming Languages — Michael Wijaya, Ricky Reynardo Siswanto, et al. · Procedia Computer Science (2025) | TGRS Research Map | TGRS