A Neural-Network based Code Summarization Approach by Using Source Code and its Call Dependencies
Citations Over TimeTop 10% of 2019 papers
Abstract
Code summarization aims at generating natural language abstraction for source code, and it can be of great help for program comprehension and software maintenance. The current code summarization approaches have made progress with neural-network. However, most of these methods focus on learning the semantic and syntax of source code snippets, ignoring the dependency of codes. In this paper, we propose a novel method based on neural-network model using the knowledge of the call dependency between source code and its related codes. We extract call dependencies from the source code, transform it as a token sequence of method names, and leverage the Seq2Seq model for code summarization using the combination of source code and call dependency information. About 100,000 code data is collected from 1,000 open source Java proejects on github for experiment. The large-scale code experiment shows that by considering not only the code itself but also the codes it called, the code summarization model can be improved with the BLEU score to 33.08.
Related Papers
- → CloCom: Mining existing source code for automatic comment generation(2015)166 cited
- → Source code comprehension analysis in software maintenance(2017)19 cited
- → A Survey on Research of Code Comment(2019)21 cited
- → Facilitating program comprehension by mining association rules from source code(2004)35 cited
- → The CONCEPT project - applying source code analysis to reduce information complexity of static and dynamic visualization techniques(2003)7 cited