SEDec 14, 2018

Supporting software documentation with source code summarization

arXiv:1901.01186v112 citations
Originality Incremental advance
AI Analysis

This work addresses the challenge of improving software documentation for developers, but it is incremental as it builds on existing automated approaches with specific enhancements.

The paper tackles the problem of automated source code summarization by proposing Suncode, an approach that generates summaries for both classes and methods while exploiting code dependencies, and finds it provides better information on dependencies compared to a state-of-the-art solution, though manually written summaries were more precise and short.

Source code summarization is a process of generating summaries that describe software code, the majority of source code summarization usually generated manually, where the summaries are written by software developers. Recently, new automated approaches are becoming more useful. These approaches have been found to be effective in some cases. The main weaknesses of these approaches are that they never exploit code dependencies and summarize either the software classes or methods but not both. This paper proposes a source code summarization approach (Suncode) that produces a short description for each class and method in the software system. To validate the approach, it has been applied to several case studies. Moreover, the generated summaries are compared to summaries that written by human experts and to summaries that written by a state-of-the-art solution. Results of this paper found that Suncode summaries provide better information about code dependencies comparing with other studies. In addition, Suncode summaries can improve and support the current software documentation. The results found that manually written summaries were more precise and short as well.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes