API Specific Automatic Program Repair (ASAP-Repair)

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.

Publications

2020

Nielebock, Sebastian; Heumüller, Robert; Krüger, Jacob; Ortmeier, Frank

Using API-Embedding for API-Misuse Repair Inproceedings

ACM, (Hrsg.): Proceedings of the 1st International Workshop on Automated Program Repair (APR 2020) in conjunction with 42nd International Conference on Software Engineering (ICSE 2020), Seoul, South Korea, 2020.

Links | BibTeX

Nielebock, Sebastian; Heumüller, Robert; Krüger, Jacob; Ortmeier, Frank

Cooperative API Misuse Detection Using Correction Rules Inproceedings

ACM, (Hrsg.): Proccedings of the 42nd IEEE/ACM International Conference on Software Engineering - New Ideas and Emerging Results Track, ICSE-NIER, ACM, 2020.

Links | BibTeX

2019

Heumüller, Robert; Nielebock, Sebastian; Ortmeier, Frank

SpecTackle - A Specification Mining Experimentation Platform Inproceedings

Proceedings of the 45th Euromicro Conference on Software Engineering and Advanced Applications (SEAA),Kallithea, Chalkidiki. Greece, Euromicro 2019.

Abstract | Links | BibTeX

2018

Nielebock, Sebastian; Heumüller, Robert; Ortmeier, Frank

Commits as a Basis for API Misuse Detection Inproceedings

ACM, (Hrsg.): Proceedings of the 7th International Workshop on Software Mining (SoftwareMining ’18), September 3, 2018, Montpellier, France., S. 4, ACM, New York, NY, USA, 2018.

Abstract | Links | BibTeX

Heumüller, Robert; Nielebock, Sebastian; Ortmeier, Frank

Who plays with Whom? ... and How? Mining API Interaction Patterns from Source Code Inproceedings

ACM, (Hrsg.): Proceedings of the 7th International Workshop on Software Mining (SoftwareMining ’18), S. 4, ACM, New York, NY, USA, 2018.

Abstract | Links | BibTeX

Nielebock, Sebastian; Heumüller, Robert; Ortmeier, Frank

Programmers do not Favor Lambda Expressions for Concurrent Object-Oriented Code Artikel

Springer Empirical Software Engineering (EMSE), 24 (1), S. 103–138, 2018, ISSN: 1382-3256.

Abstract | Links | BibTeX

Heumüller, Robert

Leveraging project-specificity to find suitable specifications: student research abstract Inproceedings

ACM, (Hrsg.): Proceedings of the 33rd Annual ACM Symposium on Applied Computing, 2018, ISBN: 978-1-4503-5191-1.

Abstract | Links | BibTeX

Schott, Kevin Michael

Extraktion relevanter API-spezifischer Informationen zur automatischen Korrektur von Softwarefehlern Abschlussarbeit

Otto-von-Guericke-Unviersität Magdeburg, 2018.

Abstract | BibTeX

2017

Nielebock, Sebastian

Towards API-Specific Automatic Program Repair Inproceedings

IEEE/ACM, (Hrsg.): Proceedings of the IEEE/ACM 32nd International Conference on Automated Software Engineering (ASE 2017 ) - Doctoral Symposium, 2017.

Links | BibTeX

Eiserloh, Matthias

Semantische Suche für automatische Fehlerkorrekturen im objektorientierten Paradigma Abschlussarbeit

Otto-von-Guericke Universität Magdeburg, 2017.

Links | BibTeX

API Specific Automatic Program Repair (ASAP-Repair)