
Sponsored By: Penn State Behrend
Team Members
Marisha Cautilli | Manav Patel | Hatvik Patel | Griffin Apida |
Project Poster
Click on any image to enlarge.
Project Summary
Overview
Bugs are bound to appear during the software development process due to several factors. As programs get larger and more complicated, the time and money needed to fix associated bugs increases. A tool that can automate the bug detection and patching process (AKA an APR) would make the patching process faster, more efficient, and put less of a burden on software engineers. Automated Program Repair (APR) aims to make the patching process more efficient by generating solutions based on patterns that it recognizes in code. Use of Artificial Intelligence in APRs is limited, however with the introduction of generative AI developers hope to take advantage of AI’s capabilities to generate higher quality patches.
Objectives
This project aims to create an APR that addresses the needs and concerns software engineers have during the bug patching process. Furthermore, utilize an LLM to detect and fix bugs such as empty catch block, null pointer, array index out of bounds, and more.
Approach
- Collected information on common Java bugs
- Gathered customers’ needs, requirements, and specifications.
- Researched different Large-Language Models and their efficiency.
- Researched ways to detect bugs, mainly in Java code.
- Tested and implemented different bug detection tools.
- Tested how the LLM would respond to the bugs and context provided.
- Integrated an automated workflow for detection, solution generation, and validation
Outcomes
- Developed a functional APR system.
- Detects bugs in Java projects ranging from single files to open-source projects
- Reduced the time it takes for developers to look through files for potential bugs
- Showcased changes in code quality and maintainability
metrics after fixes are applied - Leveraged a Large-Language Model that provides solutions for detected bugs.
- Provided a user-friendly web interface to interact with the APR system
Recent Comments