skip to main content
10.1109/ICSE-Companion.2019.00052acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

DRONE: a tool to detect and repair directive defects in Java APIs documentation

Published: 25 May 2019 Publication History

Abstract

Application programming interfaces (APIs) documentation is the official reference of the APIs. Defects in API documentation pose serious hurdles to their comprehension and usage. In this paper, we present DRONE, a tool that can automatically detect the directive defects in APIs documents and recommend repair solutions to fix them. Particularly, DRONE focuses on four defect types related to parameter usage constraints. To achieve this, DRONE leverages techniques from static program analysis, natural language processing and logic reasoning. The implementation is based on the Eclipse-plugin architecture, which provides an integrated user interface. Extensive experiments demonstrate the efficacy of the tool.
Demo webpage: https://goo.gl/BmEKic
Demo video: https://youtu.be/NDPXiapxoMk

References

[1]
G. Uddin and M. P. Robillard, "How api documentation fails," Software, IEEE, vol. 32, no. 4, pp. 68--75, 2015.
[2]
M. A. Saied, H. Sahraoui, and B. Dufour, "An observational study on api usage constraints and their documentation," in (SANER 2015). IEEE, 2015, pp. 33--42.
[3]
M. Monperrus, M. Eichberg, E. Tekes, and M. Mezini, "What should developers be aware of? an empirical study on the directives of api documentation," Empirical Software Engineering, vol. 17, no. 6, pp. 703--737, 2012.
[4]
Y. Zhou, R. Gu, T. Chen, Z. Huang, S. Panichella, and H. C. Gall, "Analyzing apis documentation and code to detect directive defects," in Proceedings of the 39th International Conference on Software Engineering, ICSE 2017, 2017, pp. 27--37.
[5]
Y. Zhou, C. Wang, X. Yan, T. Chen, S. Panichella, and H. C. Gall, "Automatic detection and repair of directive defects of java APIs documentation," IEEE Transactions on Software Engineering, To appear.
[6]
A. D. Sorbo, S. Panichella, C. A. Visaggio, M. D. Penta, G. Canfora, and H. C. Gall, "Development emails content analyzer: Intention mining in developer discussions," in ASE 2015. IEEE, 2015, pp. 12--23.
[7]
S. Panichella, A. Panichella, M. Beller, A. Zaidman, and H. C. Gall, "The impact of test case summaries on bug fixing performance: an empirical investigation," in International Conference on Software Engineering, ICSE 2016, 2016, pp. 547--558.
[8]
P. W. McBurney and C. McMillan, "Automatic documentation generation via source code summarization of method context," in Proceedings of the 22nd International Conference on Program Comprehension. ACM, 2014, pp. 279--290.
[9]
L. Shi, H. Zhong, T. Xie, and M. Li, "An empirical study on evolution of api documentation." in FASE, vol. 6603. Springer, 2011, pp. 416--431.
[10]
B. Dagenais and M. P. Robillard, "Creating and evolving developer documentation: understanding the decisions of open source contributors," in SIGSOFT international symposium on Foundations of software engineering. ACM, 2010, pp. 127--136.
[11]
S. Liu, J. Sun, Y. Liu, Y. Zhang, B. Wadhwa, J. S. Dong, and X. Wang, "Automatic early defects detection in use case documents," in International conference on Automated software engineering. ACM, 2014, pp. 785--790.
[12]
R. P. Buse and W. R. Weimer, "Automatic documentation inference for exceptions," in Proceedings of the 2008 international symposium on Software testing and analysis. ACM, 2008, pp. 273--282.
[13]
S. H. Tan, D. Marinov, L. Tan, and G. T. Leavens, "@tcomment: Testing javadoc comments to detect comment-code inconsistencies," in (ICST 2012). IEEE, 2012, pp. 260--269.
[14]
H. Zhong and Z. Su, "Detecting api documentation errors," in ACM SIGPLAN Notices, vol. 48, no. 10. ACM, 2013, pp. 803--816.
[15]
S. Panichella, "Summarization techniques for code, change, testing, and user feedback (invited paper)," in Workshop on Validation, Analysis and Evolution of Software Tests, VST@SANER 2018, 2018, pp. 1--5.
[16]
A. Blasi and A. Gorla, "Replicomment: identifying clones in code comments," in ICPC 2018. ACM, 2018, pp. 320--323.

Cited By

View all
  • (2022)On the evaluation of NLP-based models for software engineeringProceedings of the 1st International Workshop on Natural Language-based Software Engineering10.1145/3528588.3528665(48-50)Online publication date: 21-May-2022
  • (2020)Beyond accuracy: assessing software documentation qualityProceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3368089.3417045(1509-1512)Online publication date: 8-Nov-2020

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '19: Proceedings of the 41st International Conference on Software Engineering: Companion Proceedings
May 2019
369 pages

Sponsors

Publisher

IEEE Press

Publication History

Published: 25 May 2019

Check for updates

Author Tags

  1. API documentation
  2. directive defects
  3. natural language processing
  4. repair recommendation

Qualifiers

  • Research-article

Conference

ICSE '19
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 14 Sep 2024

Other Metrics

Citations

Cited By

View all
  • (2022)On the evaluation of NLP-based models for software engineeringProceedings of the 1st International Workshop on Natural Language-based Software Engineering10.1145/3528588.3528665(48-50)Online publication date: 21-May-2022
  • (2020)Beyond accuracy: assessing software documentation qualityProceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3368089.3417045(1509-1512)Online publication date: 8-Nov-2020

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media