Program comprehension is an important part of software maintenance, especially when program structure is complex and documentation is unavailable or outdated. Data mining can prod...
This paper presents a methodology for knowledge acquisition from source code. We use data mining to support semiautomated software maintenance and comprehension and provide practi...
Abstract—During software development, design rules and contracts in the source code are often encoded through regularities, such as API usage protocols, coding idioms and naming ...
Angela Lozano, Andy Kellens, Kim Mens, Gabriela Ar...
A software system interacts with third-party libraries through various APIs. Using these library APIs often needs to follow certain usage patterns. Furthermore, ordering rules (sp...
Evolutionary annotations are descriptions of how source code evolves over time. Typical source comments, given their static nature, are usually inadequate for describing how a pro...