Automatically Generating Software Documentation from Existing Sources

Laura Moreno - The University of Texas at Dallas

March 14, 2016, 10 a.m. - March 14, 2016, 11 a.m.

McConnell Engineering Building, room 437



Program comprehension is a fundamental activity during software maintenance and evolution, accounting for almost half of the resources invested in software change. Together with the source code, software documentation is a critical resource when comprehending a software system. Documentation, however, is far from ideal--more often than not, documentation is missing or it is outdated, it is difficult to access, and it lacks of standard format.


This talk will give an overview of my research on supporting developers during software (re)documentation through automatic summarization of various software artifacts. This work includes: the automatic summarization of classes in Object-Oriented systems, the automatic generation of release notes, and mining method API usage examples from existing software. The talk will primarily focus on the automatic generation of release notes, which are complex software artifacts that summarize the changes that occurred between two versions of a software system. I will discuss the different challenges of creating release notes and how my research work addressed them by integrating static code analysis, software summarization, and mining software repositories techniques. The empirical validation of the approach will also be presented. Finally, I will present future directions on the automatic software (re)documentation research.





Laura Moreno is a Ph.D. candidate at the University of Texas at Dallas, advised by Dr. Andrian Marcus. Her research interest is in Software Engineering, with particular emphasis on Program Comprehension and Software Maintenance and Evolution. The core of her research is empirical in nature and focuses on the development of tools, methodologies and practices that help software developers better understand and change large-scale software. Her dissertation work, “Software Documentation through Summarization of Source Code Artifacts”, leverages information contained in various software artifacts and utilizes techniques from diverse fields, such as, natural language processing, data mining, software analysis, and information retrieval. Papers resulting from her research have been published in top software engineering venues, including the IEEE/ACM International Conference on Software Engineering (ICSE), the ACM/SIGSOFT Symposium on the Foundations of Software Engineering (FSE), the IEEE/ACM International Conference on Automated Software Engineering (ASE), and the IEEE International Conference on Software Maintenance and Evolution (ICSME). She has served as organizing committee member and program committee member for several conferences in the field.