Gaining an understanding of software systems is an important discipline in many software engineering contexts. It is essential that software engineers are assisted as much as poss...
The notion of functional or modular dependency is fundamental to understand the architecture and inner workings of any software system. In this paper, we propose to extend that no...
Legacy applications can be difficult and time-consuming to understand and update due to the lack of modern abstraction mechanisms in legacy languages, as well as the gradual dete...
Dynamic protocol recovery tries to recover a component’s sequencing constraints by means of dynamic analysis. This problem has been tackled by several automaton learning approac...
When trying to understand the evolution of a software system it can be useful to visualize the evolution of the system’s architecture. Existing tools for viewing architectural e...