Section: New Results
Participants : Stéphane Ducasse, Damien Pollet, Azadeh Razavizadeh.
Software Architecture Reconstruction taxonomy. To maintain and understand large applications, it is crucial to know their architecture. The first problem is that unlike classes and packages, architecture is not explicitly represented in the code. The second problem is that successful applications evolve over time, so their architecture inevitably drifts. Reconstructing the architecture and checking whether it is still valid is therefore an important aid. While there is a plethora of approaches and techniques supporting architecture reconstruction, there is no comprehensive state of the art and it is often difficult to compare the approaches. We defined and presented a state of the art in software architecture reconstruction approaches  .
Multiple viewpoints. A software system's architecture, its elements and the way they interact, constitute valuable assets for comprehending the system. Many approaches have been developed to help comprehending software systems in different manners. Most of them focus on structural aspects. We believe offering multiple views of the same system, using domain knowledge, helps understanding a software system as a whole. To correlate domain information and existing software systems, different viewpoints are considered and modeled. Viewpoints guide the extraction of architectural views, the later representing different system facets. In  ,  , we propose a recursive framework, an approach that expresses domain knowledge as viewpoints to guide the extraction process. It provides multiple architectural views according to multiple given viewpoints.