Kechagia, M;
Spinellis, D;
(2017)
Type Checking for Reliable APIs.
In:
(Proceedings) 1st IEEE/ACM International Workshop on API Usage and Evolution (WAPI).
(pp. pp. 15-18).
IEEE: Buenos Aires, Argentina.
Preview |
Text
type_checking.pdf - Accepted Version Download (177kB) | Preview |
Abstract
In this paper, we propose to configure at compiletime the checking associated with Application ProgrammingInterfaces' methods that can receive possibly malformed values (e.g. erroneous user inputs and problematic retrieved recordsfrom databases) and thus cause application execution failures. To achieve this, we design a type system for implementing apluggable checker on the Java's compiler and find at compile timeinsufficient checking bugs that can lead to application crashesdue to malformed inputs. Our goal is to wrap methods whenthey receive external inputs so that the former generate checkedinstead of unchecked exceptions. We believe that our approachcan improve Java developers' productivity, by using exceptionhandling only when it is required, and ensure client applications'stability. We want to evaluate our checker by using it to verifythe source code of Java projects from the Apache ecosystem. Also, we want to analyze stack traces to validate the identifiedfailures by our checker.
Type: | Proceedings paper |
---|---|
Title: | Type Checking for Reliable APIs |
Event: | 1st IEEE/ACM International Workshop on API Usage and Evolution (WAPI) |
Location: | Buenos Aires, ARGENTINA |
Dates: | 23 May 2017 |
Open access status: | An open access version is available from UCL Discovery |
DOI: | 10.1109/WAPI.2017.5 |
Publisher version: | https://doi.org/10.1109/WAPI.2017.5 |
Language: | English |
Additional information: | This version is the author accepted manuscript. For information on re-use, please refer to the publisher’s terms and conditions. |
Keywords: | Science & Technology, Technology, Computer Science, Software Engineering, Computer Science, application programming interfaces, exceptions, type systems |
UCL classification: | UCL UCL > Provost and Vice Provost Offices UCL > Provost and Vice Provost Offices > UCL BEAMS UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science > Dept of Computer Science |
URI: | https://discovery.ucl.ac.uk/id/eprint/10074521 |




Archive Staff Only
![]() |
View Item |