ASAP-Repair: API-Specific Automated Program Repair Based on API Usage Graphs

Sebastian Nielebock, Paul Blockhaus, Jacob Krüger, Frank Ortmeier

Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

Abstract

Modern software development relies on the reuse of code via Application Programming Interfaces (APIs). Such reuse relieves developers from learning and developing established algorithms and data structures anew, enabling them to focus on their problem at hand. However, there is also the risk of misusing an API due to a lack of understanding or proper documentation. While many techniques target API misuse detection, only limited efforts have been put into automatically repairing API misuses. In this paper, we present our advances on our technique API-Specific Automated Program Repair (ASAP-Repair). ASAP-Repair is intended to fix API misuses based on API Usage Graphs (AUGs) by leveraging API usage templates of state-of-the-art API misuse detectors. We demonstrate that ASAP-Repair is in principle applicable on an established API misuse dataset. Moreover, we discuss next steps and challenges to evolve ASAP-Repair towards a full-fledged Automatic Program Repair (APR) technique.
Original languageEnglish
Title of host publicationAPR '24
Subtitle of host publicationProceedings of the 5th ACM/IEEE International Workshop on Automated Program Repair
PublisherAssociation for Computing Machinery, Inc
Number of pages4
ISBN (Electronic)979-8-4007-0577-9
DOIs
Publication statusPublished - 11 Sept 2024
Event5th ACM/IEEE International Workshop on Automated Program Repair, APR 2024 - Lisbon, Portugal
Duration: 20 Apr 202420 Apr 2024

Conference

Conference5th ACM/IEEE International Workshop on Automated Program Repair, APR 2024
Abbreviated titleAPR 2024
Country/TerritoryPortugal
CityLisbon
Period20/04/2420/04/24

Keywords

  • API Misuses
  • API Usage Graphs
  • Automated Program Repair

Fingerprint

Dive into the research topics of 'ASAP-Repair: API-Specific Automated Program Repair Based on API Usage Graphs'. Together they form a unique fingerprint.

Cite this