Automatic Detection and Repair Recommendation of Directive Defects in Java API Documentation

Automatic Detection and Repair Recommendation of Directive Defects in Java API Documentation
复制标题

Java API文档中指令缺陷的自动检测和修复建议

DOI:
10.1109/tse.2018.2872971
复制
发表时间:
2020-09
影响因子:
7.4
通讯作者:
Harald Gall
Harald Gall
中科院分区:
计算机科学1区
文献类型:
--
作者:
Yu Zhou;Changzhi Wang;Xin Yan;Taolue Chen;Sebastiano Panichella;Harald Gall

文献摘要

参考文献

被引文献

相似文献

应用程序编程接口(API)代表软件开发人员构建复杂软件系统的关键工具。然而,一些研究表明,即使是主要的API提供商也往往有不完整或不一致的API文档。这会严重妨碍对API的理解,从而影响基于它们构建的软件的质量。在本文中,我们提出了DRONE(检测和修复dOcumentatioN dEffects),一个框架,自动检测和修复缺陷,从API文件,利用程序分析,自然语言处理和约束求解技术。具体来说,我们的目标是API文档的指令,这些指令与参数约束和异常处理声明有关。此外,在存在缺陷的情况下,我们还提供了一个原型修复推荐系统。我们在JDK 1.8 API(包括javaFX)和Android 7.0(级别24)的部分文档化API上评估了我们的方法。在两个实证研究中,我们的方法可以检测到API缺陷,平均F-测量值分别为79.9%,71.7%和81.4%。API修复能力也已在进一步的实验中产生的建议进行了评估。用户的判断表明,约束信息是正确和简洁地处理在呈现的指令。
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 percent, 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.
DOI: 10.1109/icpc.2013.6613842
发表时间: 2013-05
期刊: 2013 21st International Conference on Program Comprehension (ICPC)
影响因子: --
作者:
Yingying Zhang;Daqing Hou
通讯作者: Yingying Zhang;Daqing Hou
DOI: 10.1145/2597008.2597799
发表时间: 2014-06
期刊: --
影响因子: --
作者:
Carmine Vassallo;Sebastiano Panichella;M. D. Penta;G. Canfora
通讯作者: Carmine Vassallo;Sebastiano Panichella;M. D. Penta;G. Canfora
DOI: 10.1109/ase.2009.94
发表时间: 2009-11
期刊: 2009 IEEE/ACM International Conference on Automated Software Engineering
影响因子: --
作者:
Hao Zhong;Lu Zhang;Tao Xie;Hong Mei
通讯作者: Hao Zhong;Lu Zhang;Tao Xie;Hong Mei
DOI: 10.3115/974147.974178
发表时间: 2000-03
期刊: --
影响因子: --
作者:
T. Brants
通讯作者: T. Brants
DOI: 10.1109/icst.2012.106
发表时间: 2012-01
期刊: 2012 IEEE Fifth International Conference on Software Testing, Verification and Validation
影响因子: --
作者:
Shin Hwei Tan;D. Marinov;Lin Tan;G. Leavens
通讯作者: Shin Hwei Tan;D. Marinov;Lin Tan;G. Leavens