Improving Program Comprehension via Automatic Documentation Generation
Programmers rely on documentation in order to understand source code. However, documentation is often incomplete or out-of-date and is time-consuming to write. Automatic documentation solutions are desirable, as it can help offset the cost and difficulty of writing documentation manually. In my this document, I summarize my research into improving software documentation. First, I perform a user study of software documentation to how software should is documented by experienced authors as compared to new readers of the system. This study found that authors often document Java methods using language from outside of the source code. Second, I present a novel approach to automatically generate documentation from Java source code method context. This approach both demonstrates that contextual information can be automatically documented. This approach also outperformed author-written documentation with respect to helping the users understand the context of a given method. Finally, I perform a preliminary study to investigate if software documentation effort can be prioritized.
History
Date Modified
2017-06-02Defense Date
2016-03-14Research Director(s)
Collin McMillanDegree
- Doctor of Philosophy
Degree Level
- Doctoral Dissertation
Program Name
- Computer Science and Engineering