Automated source code summarization is a task that generates summarized information about the purpose, usage, and--or implementation of methods and classes to support understanding of these code entities. Multiple approaches and techniques have been proposed for supervised and unsupervised learning in code summarization, however, they were mostly focused on generating a summary for a piece of code. In addition, very few works have leveraged unofficial documentation. This paper proposes an automatic and novel approach for summarizing Android API methods discussed in Stack Overflow that we consider as unofficial documentation in this research. Our approach takes the API method's name as an input and generates a natural language summary based on Stack Overflow discussions of that API method. We have conducted a survey that involves 16 Android developers to evaluate the quality of our automatically generated summaries and compare them with the official Android documentation. Our results demonstrate that while developers find the official documentation more useful in general, the generated summaries are also competitive, in particular for offering implementation details, and can be used as a complementary source for guiding developers in software development and maintenance tasks.


翻译:自动源代码汇总是一项任务,它生成了关于支持理解这些代码实体的方法和班级的目的、使用和/或实施情况的汇总信息。提出了多种方法和技术,用于在代码汇总中监督和不受监督的学习。然而,这些方法和技术大多侧重于生成一个代码的概要。此外,很少有作品利用了非官方文件。本文提出了一种自动和新颖的方法,用于总结在Stack Overproll中讨论的、我们认为是本研究中非正式文件的Android API方法。我们的方法采用API方法的名称,作为投入,根据对API方法的堆积过度讨论产生自然语言概要。我们进行了一项调查,有16个机器人开发商参与,以评估我们自动生成的概要的质量,并将其与官方的机器人文件进行比较。我们的结果表明,虽然开发商发现正式文件在总体上更加有用,但生成的概要也具有竞争力,特别是提供实施细节,并且可以用作指导软件开发商开发和维护任务的辅助来源。

0
下载
关闭预览

相关内容

Stack Overflow 是一个程序设计领域的问答网站,隶属于 Stack Exchange 网络。
最新《Transformers模型》教程,64页ppt
专知会员服务
306+阅读 · 2020年11月26日
专知会员服务
17+阅读 · 2020年9月6日
Linux导论,Introduction to Linux,96页ppt
专知会员服务
77+阅读 · 2020年7月26日
【干货书】真实机器学习,264页pdf,Real-World Machine Learning
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
151+阅读 · 2019年10月12日
强化学习的Unsupervised Meta-Learning
CreateAMind
17+阅读 · 2019年1月7日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
Disentangled的假设的探讨
CreateAMind
9+阅读 · 2018年12月10日
已删除
将门创投
4+阅读 · 2018年6月4日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
分布式TensorFlow入门指南
机器学习研究会
4+阅读 · 2017年11月28日
【推荐】自然语言处理(NLP)指南
机器学习研究会
35+阅读 · 2017年11月17日
Auto-Encoding GAN
CreateAMind
7+阅读 · 2017年8月4日
Arxiv
5+阅读 · 2020年10月22日
Arxiv
12+阅读 · 2019年3月14日
Arxiv
5+阅读 · 2017年4月12日
VIP会员
相关资讯
强化学习的Unsupervised Meta-Learning
CreateAMind
17+阅读 · 2019年1月7日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
16+阅读 · 2018年12月24日
Disentangled的假设的探讨
CreateAMind
9+阅读 · 2018年12月10日
已删除
将门创投
4+阅读 · 2018年6月4日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
分布式TensorFlow入门指南
机器学习研究会
4+阅读 · 2017年11月28日
【推荐】自然语言处理(NLP)指南
机器学习研究会
35+阅读 · 2017年11月17日
Auto-Encoding GAN
CreateAMind
7+阅读 · 2017年8月4日
Top
微信扫码咨询专知VIP会员