Software architecture reconstruction

Arie Van Deursen*, Claudio Riva

*Corresponding author for this work

Research output: Chapter in Book/Conference proceedings/Edited volumeChapterScientificpeer-review

3 Citations (Scopus)


Architecture reconstruction is the reverse engineering process that aims at recovering the past design decisions that have been made about the software architecture of a system. To be a successful activity, we need to identify the proper architecturally significant information and to extract it from the artefacts. How to identify extract/present/analyse it? What are the critical issues that have to be considered? How to manage the reconstruction process in a product family? What tools are available? This tutorial will address these and other questions that are relevant for the development of large and complex software systems. We introduce the key concepts of a software architecture description and the context of the architecture reconstruction activity. We present our architecture reconstruction method with a strong emphasis on its practical aspects and the tools supporting it. The extraction of architecturally significant information and its analysis are the key goals of our approach that will be demonstrated with a set of examples taken from real cases. We derive our experience mainly from the telecommunication domain. However, we believe the same general principles can be applied to other domains. The tutorial addresses software engineers and project managers that are involved in the development of complex software systems.

Original languageEnglish
Title of host publicationProceedings - 26th International Conference on Software Engineering, ICSE 2004
Number of pages2
Publication statusPublished - 2004
Externally publishedYes
Event26th International Conference on Software Maintenance (ICSM) - Los Alamitos
Duration: 12 Sep 201018 Sep 2010


Conference26th International Conference on Software Maintenance (ICSM)


Dive into the research topics of 'Software architecture reconstruction'. Together they form a unique fingerprint.

Cite this