An open visualization toolkit for reverse architecting

Maintenance and evolution of complex software systems (such as large telecom embedded devices) involve activities such as reverse engineering (RE) and software visualization. Although several RE tools exist, we found their architecture hard to adapt to the domain specific requirements posed by our current practice in Nokia. We present an open architecture which allows easy prototyping of RE data exploration and visualization scenarios for a large range of domain models. We pay special attention to the visual and interactive requirements of the reverse engineering process. The article describes the basic architecture of our toolkit, compares it to the existing RE environments and present several visualizations taken from real cases.

[1]  Josie Wernecke,et al.  The inventor mentor - programming object-oriented 3D graphics with Open Inventor, release 2 , 1993 .

[2]  Graham J. Wills,et al.  Navigating large networks with hierarchies , 1993, Proceedings Visualization '93.

[3]  Claudio Riva,et al.  Combining static and dynamic views for architecture reconstruction , 2002, Proceedings of the Sixth European Conference on Software Maintenance and Reengineering.

[4]  van Robert Liere,et al.  Studies in Interactive Visualization , 2001 .

[5]  Andreas Ludwig,et al.  A Fast Adaptive Layout Algorithm for Undirected Graphs , 1994, GD.

[6]  Claudio Riva,et al.  Reverse architecting: an industrial experience report , 2000, Proceedings Seventh Working Conference on Reverse Engineering.

[7]  J. Rohrich Graph attribution with multiple attribute grammers , 1987 .

[8]  Mitsuhiko Toda,et al.  Methods for Visual Understanding of Hierarchical System Structures , 1981, IEEE Transactions on Systems, Man, and Cybernetics.

[9]  Mehdi Jazayeri,et al.  Software Architecture for Product Families: Principles and Practice , 2000 .

[10]  Rick Kazman,et al.  Rapid prototyping of information visualizations using VANISH , 1996, Proceedings IEEE Symposium on Information Visualization '96.

[11]  John Domingue,et al.  Software visualization : programming as a multimedia experience , 1998 .

[12]  Ivan Herman,et al.  Graph Visualization and Navigation in Information Visualization: A Survey , 2000, IEEE Trans. Vis. Comput. Graph..

[13]  Johannes Röhrich Graph attribution with multiple attribute grammers , 1987, SIGP.

[14]  Ivan Herman,et al.  An object‐oriented design for graph visualization , 2001, Softw. Pract. Exp..