API Specific Automatic Program Repair (ASAP-Repair)
API Specific Automatic Program Repair or how can we find and fix API Misuses automatically?
Nowadays, programmers re-use much code from existing code libraries by means of Application Programming Interfaces (APIs). Due to missing or outdated documentation as well as misunderstandings on how to correctly use a particular API, programmers may falsely apply that API.
If this false application leads to a negative behavior of the software, e.g. software crashes, performance losses, or inconvenient software usage, we denote these as API misuses.
Recent research has shown that half of the existing bugs demand an API-specific correction and therefore require knowledge on the correct application of the API. In order to be capable to create API-specific patches automatically, we represent such knowledge as API usage patterns. Based on the existing error localization techniques (e.g., testing, detection of deviant behavior) and mechanisms to extract API usage patterns (e.g. Specification Mining), we plan to create patches for API-specific bugs.
This topic is under ongoing research. For questions please refer to Sebastian Nielebock.