1 To handle the complexity of modern software systems, a software comprehension strategy pointing out the al abstraction level is necessary. In this context, the role of technology...
Fabio Abbattista, Filippo Lanubile, Giuseppe Visag...
Recognizing commonly used data structures and algorithms is a key activity in reverse engineering. Systems developed to automate this recognition process have been isolated, stand...
The Rigi reverse engineering system provides two contrasting approaches for presenting software structures in its graph editor. The rst displays the structures through multiple, i...
Margaret-Anne D. Storey, Kenny Wong, Hausi A. M&uu...
Reverse engineering of program code is the process of constructing a higher level abstraction of an implementation in order to facilitate the understanding of a system that may be...
Domain analysis is an effective technique for enabling both reuse and reverse engineering. This paper shows how domain analysis can provide a framework for combining reverse engin...
One of the challenges of reverse engineering is the extraction of a specification from source code. Our work proposes a singular approach to the construction of reverse engineerin...
Felipe Gouveia de Freitas, Julio Cesar Sampaio do ...
As valuable software systems get old, reverse engineering becomes more and more important to the companies that have to maintain the code. Clustering is a key activity in reverse ...
As a program evolves, it becomes increasingly difficult to understand and reason about changes in the source code. Eventually, if enough changes are made, reverse engineering and ...
To fully understand the underlying architecture of an object-oriented software system, both static and dynamic analyses are needed. Dynamic reverse engineering techniques are espe...
Reverse engineering is an imperfect process driven by imperfect knowledge. Most current reverse engineering tools do not adequately consider these inherent characteristics. They f...