Software repositories are rich sources of information about the software development process. Mining the information stored in them has been shown to provide interesting insights ...
The increasing amount of available textual information makes necessary the use of Natural Language Processing (NLP) tools. These tools have to be used on large collections of docu...
A legacy system is an operational, large-scale software system that is maintained beyond its first generation of programmers. It typically represents a massive economic investmen...
Kostas Kontogiannis, Renato de Mori, Morris Bernst...
It has long been accepted that requirements analysis should precede architectural design and implementation, but in software evolution and reverse engineering this concern with bl...
The change history of a software project contains a rich collection of code changes that record previous development experience. Changes that fix bugs are especially interesting, ...