Verifiable source code documentation in controlled natural language
Keywords: pharo, moose, Controlled natural language, Metamodelling
Abstract
Writing documentation about software internals is rarely considered a rewarding activity. It is highly time-consuming and the resulting documentation is fragile when the software is continuously evolving in a multi-developer setting. Unfortunately, traditional programming environments poorly support the writing and maintenance of documentation. Consequences are severe as the lack of documentation on software structure negatively impacts the overall quality of the software product. We show that using a controlled natural language with a reasoner and a query engine is a viable technique for verifying the consistency and accuracy of documentation and source code. Using ACE, a state-of-the-art controlled natural language, we present positive results on the comprehensibility and the general feasibility of creating and verifying documentation. As a case study, we used automatic documentation verification to identify and fix severe flaws in the architecture of a non-trivial piece of software. Moreover, a user experiment shows that our language is faster and easier to learn and understand than other formal languages for software documentation. (C) 2014 Elsevier B.V. All rights reserved.
Más información
Título según WOS: | Verifiable source code documentation in controlled natural language |
Título según SCOPUS: | Verifiable source code documentation in controlled natural language |
Título de la Revista: | SCIENCE OF COMPUTER PROGRAMMING |
Volumen: | 96 |
Número: | P1 |
Editorial: | ELSEVIER SCIENCE BV |
Fecha de publicación: | 2014 |
Página de inicio: | 121 |
Página final: | 140 |
Idioma: | English |
DOI: |
10.1016/j.scico.2014.01.002 |
Notas: | ISI, SCOPUS |