...
首页> 外文期刊>Information and software technology >Mining API usage scenarios from stack overflow
【24h】

Mining API usage scenarios from stack overflow

机译:来自堆栈溢出的挖掘API使用情况方案

获取原文
获取原文并翻译 | 示例
   

获取外文期刊封面封底 >>

       

摘要

Context: APIs play a central role in software development. The seminal research of Carroll et al. [15] on minimal manual and subsequent studies by Shull et al. [79] showed that developers prefer task-based API documentation instead of traditional hierarchical official documentation (e.g., Javadoc). The Q&A format in Stack Overflow offers developers an interface to ask and answer questions related to their development tasks.Objective: With a view to produce API documentation, we study automated techniques to mine API usage scenarios from Stack Overflow.Method: We propose a framework to mine API usage scenarios from Stack Overflow. Each task consists of a code example, the task description, and the reactions of developers towards the code example. First, we present an algorithm to automatically link a code example in a forum post to an API mentioned in the textual contents of the forum post. Second, we generate a natural language description of the task by summarizing the discussions around the code example. Third, we automatically associate developers reactions (i.e., positive and negative opinions) towards the code example to offer information about code quality.Results: We evaluate the algorithms using three benchmarks. We compared the algorithms against seven baselines. Our algorithms outperformed each baseline. We developed an online tool by automatically mining API usage scenarios from Stack Overflow. A user study of 31 software developers shows that the participants preferred the mined usage scenarios in Opiner over API official documentation. The tool is available online at: http://opiner.polymtl.ca/.Conclusion: With a view to produce API documentation, we propose a framework to automatically mine API usage scenarios from Stack Overflow, supported by three novel algorithms. We evaluated the algorithms against a total of eight state of the art baselines. We implement and deploy the framework in our proof-of-concept online tool, Opiner.
机译:上下文:API在软件开发中发挥着核心作用。 Carroll等人的开创性研究。 [15] Shull等人的最小手动和随后的研究。 [79]显示开发人员喜欢基于任务的API文档而不是传统的分层官方文档(例如,javadoc)。堆栈overflow中的Q&A格式为开发人员提供了一个接口,以便询问和回答与其开发任务相关的问题.Bjective:以一种用于生成API文档的视图,我们将自动化技术从堆栈overflow中学到挖掘API使用情况的自动化技术。我们提出了一个框架从堆栈溢出到挖掘API使用情况。每个任务由代码示例,任务说明和开发人员对代码示例的反应组成。首先,我们提出了一种算法,可以在论坛帖子中自动链接到论坛帖子的文本内容中提到的API中的代码示例。其次,我们通过总结代码示例的讨论来生成对任务的自然语言描述。第三,我们将开发人员反应(即,正负意见)自动向代码示例与代码质量提供信息。结果:我们使用三个基准评估算法。我们将算法与七个基线进行了比较。我们的算法优于每个基线。我们通过从堆栈溢出中自动挖掘API使用情况,开发了一个在线工具。对31个软件开发人员的用户学习表明,参与者在API官方文档中首选考虑者中的开采使用情况。该工具可在线获取:http://opiner.polymtl.ca/.conclusion:使用查看API文档的视图,我们提出了一个框架,以自动挖掘堆栈溢出的API使用情况,由三种新颖算法支持。我们评估了总共八个艺术基线的算法。我们在我们的概念验证在线工具中实现并部署框架。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号