Arianna Blasi, Research Intern, IMDEA Software Institute
Procedure specifications are useful in many software development tasks. As one example, in automatic test case generation they can guide testing, act as test oracles able to reveal bugs, and identify illegal inputs. Whereas formal specifications are seldom available in practice, it is standard practice for developers to document their code with semi-structured comments such as Doxygen, Javadoc, RDoc, and Sphinx. These comments express the procedure specification with a mix of predefined tags and natural language. In this talk I will present present Toradocu, an approach that combines natural language parsing, pattern matching, and semantic similarity to translate Javadoc comments into executable procedure specifications written as Java expressions. The tool achieves better accuracy than the other similar tools in the state of the art. Moreover, it is the only one with an actual semantic awareness, through which it can translate even complex comments.