首页> 外文期刊>Brazilian Computer Society. Journal >Redocumenting APIs with crowd knowledge: a coverage analysis based on question types
【24h】

Redocumenting APIs with crowd knowledge: a coverage analysis based on question types

机译:使用人群知识重新记录API:基于问题类型的覆盖率分析

获取原文
       

摘要

Abstract Background Software libraries and frameworks play an important role in software system development. The appropriate usage of their functionalities/components through their APIs, however, is a challenge for developers. Usually, API documentation, when it exists, is insufficient to assist them in their programming tasks. There are few API documentation writers for the many potential readers, resulting in the lack of explanations and examples concerning different scenarios and perspectives. The interaction of developers on the Web, on the other hand, generates content concerning APIs from different perspectives, which can be used to document APIs, also known as crowd documentation. Methods In this paper, we present a study regarding the knowledge generated by the crowd on the Stack Overflow question-and-answer website. Our main goal is to understand how the crowd can contribute for API documentation on two programming tasks: how to implement a scenario using an API ( how-to-do-it ), and how to fix domain-independent bugs in an existing code where there was a misunderstanding regarding the usage of an API ( debug-corrective ). We classified questions available on Stack Overflow by the main concerns of askers, and we used those classified as how-to-do-it and debug-corrective to analyze the coverage of API elements on the discussions related to such questions. Our cases included the well-known and popular Swing and Android APIs. Results Our main findings showed that the crowd provides more content for debug-corrective tasks than for how-to-do-it tasks, regardless of the API. Android API elements are more discussed by the crowd compared to Swing. Moreover, we observed that some API elements are frequently mentioned together in discussions, and that there is a strong association between API coverage on Stack Overflow and its usage in real software systems. Conclusions Crowd documentation may not be a complete substitute for official documentation because of its partial coverage, especially for how-to-do-it tasks. However, it can still significantly enhance the existent documentation, especially for the most commonly used API elements, providing code samples and explanations on a large variety of usage nuances. Finally, taking advantage of the high coverage for debug-corrective tasks, a new kind of debugging assistant may be conceived.
机译:抽象背景软件库和框架在软件系统开发中起着重要作用。但是,通过API适当使用其功能/组件对开发人员来说是一个挑战。通常,API文档(如果存在)不足以帮助他们完成编程任务。针对许多潜在读者的API文档编写者很少,导致缺乏有关不同场景和观点的解释和示例。另一方面,Web上开发人员的交互会从不同的角度生成有关API的内容,这些内容可用于记录API,也称为人群文档。方法在本文中,我们对Stack Overflow问答网站上人群产生的知识进行了研究。我们的主要目标是了解人群如何为两项编程任务的API文档做出贡献:如何使用API​​来实现方案(操作方法)以及如何在现有代码中修复与域无关的错误,其中关于API的使用存在误解(debug-corrective)。我们根据提问者的主要担忧对Stack Overflow上可用的问题进行了分类,并使用分类为“如何做”和“调试纠正”的问题来分析与此类问题相关的讨论中API元素的覆盖范围。我们的案例包括著名和流行的Swing和Android API。结果我们的主要发现表明,与API无关,与调试方法任务相比,人群提供的内容更多。与Swing相比,人群中讨论的更多是Android API元素。此外,我们观察到在讨论中经常一起提及一些API元素,并且在Stack Overflow上的API覆盖率与其在实际软件系统中的使用之间有着很强的联系。结论人群文档可能无法完全替代官方文档,因为它涵盖了部分内容,尤其是如何做任务。但是,它仍然可以显着增强现有文档,尤其是对于最常用的API元素,可以提供代码示例和各种用法细微差别的解释。最后,利用调试调试任务的高覆盖率,可以构想出一种新型的调试助手。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号