Bitte benutzen Sie diese Kennung, um auf die Ressource zu verweisen:
https://doi.org/10.21256/zhaw-3218
Publikationstyp: | Beitrag in wissenschaftlicher Zeitschrift |
Art der Begutachtung: | Peer review (Publikation) |
Titel: | Automatic detection and repair recommendation of directive defects in Java API documentation |
Autor/-in: | Zhou, Yu Yan, Xin Chen, Taolue Panichella, Sebastiano Gall, Harald |
DOI: | 10.1109/TSE.2018.2872971 10.21256/zhaw-3218 |
Erschienen in: | IEEE Transactions on Software Engineering |
Band(Heft): | 46 |
Heft: | 9 |
Seite(n): | 1004 |
Seiten bis: | 1023 |
Erscheinungsdatum: | 2018 |
Verlag / Hrsg. Institution: | IEEE |
ISSN: | 0098-5589 1939-3520 |
Sprache: | Englisch |
Fachgebiet (DDC): | 005: Computerprogrammierung, Programme und Daten |
Zusammenfassung: | Application Programming Interfaces (APIs) represent key tools for software developers to build complex software systems. However, several studies have revealed that even major API providers tend to have incomplete or inconsistent API documentation. This can severely hamper the API comprehension and, as a consequence, the quality of the software built on them. In this paper, we propose DRONE (Detect and Repair of dOcumentatioN dEfects), a framework to automatically detect and repair defects from API documents by leveraging techniques from program analysis, natural language processing, and constraint solving. Specifically, we target at the directives of API documents, which are related to parameter constraints and exception handling declarations. Furthermore, in presence of defects, we also provide a prototypical repair recommendation system. We evaluate our approach on parts of the well-documented APIs of JDK 1.8 APIs (including javaFX) and Android 7.0 (level 24). Across the two empirical studies, our approach can detect API defects with an average F-measure of 79.9%, 71.7%, and 81.4%, respectively. The API repairing capability has also been evaluated on the generated recommendations in a further experiment. User judgments indicate that the constraint information is addressed correctly and concisely in the rendered directives. |
URI: | https://digitalcollection.zhaw.ch/handle/11475/17312 |
Volltext Version: | Akzeptierte Version |
Lizenz (gemäss Verlagsvertrag): | Lizenz gemäss Verlagsvertrag |
Departement: | School of Engineering |
Organisationseinheit: | Institut für Informatik (InIT) |
Enthalten in den Sammlungen: | Publikationen School of Engineering |
Dateien zu dieser Ressource:
Datei | Beschreibung | Größe | Format | |
---|---|---|---|---|
tse18.pdf | Accepted Version | 1.53 MB | Adobe PDF | Öffnen/Anzeigen |
Zur Langanzeige
Zhou, Y., Yan, X., Chen, T., Panichella, S., & Gall, H. (2018). Automatic detection and repair recommendation of directive defects in Java API documentation. IEEE Transactions on Software Engineering, 46(9), 1004–1023. https://doi.org/10.1109/TSE.2018.2872971
Zhou, Y. et al. (2018) ‘Automatic detection and repair recommendation of directive defects in Java API documentation’, IEEE Transactions on Software Engineering, 46(9), pp. 1004–1023. Available at: https://doi.org/10.1109/TSE.2018.2872971.
Y. Zhou, X. Yan, T. Chen, S. Panichella, and H. Gall, “Automatic detection and repair recommendation of directive defects in Java API documentation,” IEEE Transactions on Software Engineering, vol. 46, no. 9, pp. 1004–1023, 2018, doi: 10.1109/TSE.2018.2872971.
ZHOU, Yu, Xin YAN, Taolue CHEN, Sebastiano PANICHELLA und Harald GALL, 2018. Automatic detection and repair recommendation of directive defects in Java API documentation. IEEE Transactions on Software Engineering. 2018. Bd. 46, Nr. 9, S. 1004–1023. DOI 10.1109/TSE.2018.2872971
Zhou, Yu, Xin Yan, Taolue Chen, Sebastiano Panichella, and Harald Gall. 2018. “Automatic Detection and Repair Recommendation of Directive Defects in Java API Documentation.” IEEE Transactions on Software Engineering 46 (9): 1004–23. https://doi.org/10.1109/TSE.2018.2872971.
Zhou, Yu, et al. “Automatic Detection and Repair Recommendation of Directive Defects in Java API Documentation.” IEEE Transactions on Software Engineering, vol. 46, no. 9, 2018, pp. 1004–23, https://doi.org/10.1109/TSE.2018.2872971.
Alle Ressourcen in diesem Repository sind urheberrechtlich geschützt, soweit nicht anderweitig angezeigt.