Auto-Documenation for Software Development
This addresses the problem of documentation inefficiency for software developers, though it appears incremental as it builds on existing machine translation concepts applied to code.
The paper tackles the labor-intensive task of software documentation by developing Autodoc, a tool that uses Deep Learning to translate code snippets into comments, resulting in faster and better documentation for developers.
Software documentation is an essential but labor intensive task that often requires a dedicated team of developers to ensure coverage and accuracy. Good documentation will help shorten the development cycle and improve the overall team efficiency as well as maintainability. In today's crowd-driven development environment, good documentation can go a long way in building a developer community from scratch. To that end, we took the first steps in building a tool called Autodoc that can assist software developers in writing better documentation faster. Autodoc goes beyond traditional boilerplate template generation. Our integrated tool uses Deep Learning methods to construct a semantic understanding of the code. Just like machine translation in natural languages, Autodoc can translate snippets of code to comments, and insert them as short summaries inside the docstring. We also demonstrate the integration of Autodoc as an IDE plugin as well as a web hook from within software hosting platforms when submitting auto-documented code to user's Git repository.