Understanding a System's Architecture

Dirk Heuzeroth · 2002

We present an approach to software visualization supporting the understanding of structure and behavior of software systems. To do so, we merge information from static program analysis with dynamic information obtained during the execution of the programs. The merged information is presented graphically in different views, where users can interactively choose between more abstract or more concrete ones. This technique is implemented in an analyzing tool; its open architecture enables the easy integration of new views such as metric or profiling views. Using these techniques, we detect components and interaction patterns in legacy code. We discuss our approach with the Observer Pattern as an example. We evaluated our approach by self applying the tool looking for Observers in its code. We detect all Observer Pattern instances actually contained in the code as candidates, i. e., we do not miss any pattern instance. In the example, the candidates our tool considers Observers with high evidence include 80 % of all actual Observer Patterns and no false positives. ii Löwe, Heuzeroth, Understanding a System’s Architecture 1 1

Read the paper · More papers on PaperTik