Centre for Research on Evolution, Search and Testing (CREST)


LUCID: Clearer Software by Integrating Natural Language Analysis into Software Engineering

Helping developers write clearer code to speed up maintenance and increase developer productivity.

Developers spend most of their time maintaining code, with little tool support. To maintain code, one must understand it. Clear code is easier to read and understand, and therefore less expensive and risky to evolve and maintain; it is also notoriously difficult to write.

We will help developers write clearer code to speed up maintenance, and increase developer productivity.

Source code unites two channels - the programming language and natural language - to describe algorithms. LUCID will advance the state of the art in software engineering by developing new analyses that exploit the interconnections between these channels to find uninformative names, stale comments, and bugs that manifest as discrepancies between the two channels.

Principle investigator 



  • Microsoft

This project is funded by the EPSRC.