Columbus { Tool for Reverse Engineering Large Object Oriented Software Systems

One of the most critical issues in large-scale software development and maintenance is the rapidly growing size and complexity of the software systems. As a result of this rapid growth there is a need to understand the relationships between the di erent parts of a large system. In this paper we present a reverse engineering framework called Columbus that is able to analyze large C/C++ projects. Columbus supports project handling, data extraction, -representation, -storage and -export. EAEcient ltering methods can be used to produce comprehensible diagrams from the extracted information. The exible architecture of the Columbus system (based on plug-ins) makes it a really versatile and an easily extendible tool for reverse engineering.

[1]  Rudolf K. Keller,et al.  Pattern-based reverse-engineering of design components , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[2]  James H. Cross,et al.  Reverse engineering and design recovery: a taxonomy , 1990, IEEE Software.

[3]  Daniel Jackson,et al.  A new model of program dependences for reverse engineering , 1994, SIGSOFT '94.

[4]  Antero Taivalsaari,et al.  TDE: Supporting Geographically Distributed Software Design with Shared, Collaborative Workspaces , 1997, CAiSE.

[5]  Tibor Gyimóthy,et al.  An efficient relevant slicing method for debugging , 1999, ESEC/FSE-7.

[6]  Kai Koskimies,et al.  Environment for Software Assessment , 1999, ECOOP Workshops.

[7]  M. N. Armstrong,et al.  Evaluating architectural extractors , 1998, Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261).

[8]  A. Beszedes,et al.  Dynamic slicing method for maintenance of large C programs , 2001, Proceedings Fifth European Conference on Software Maintenance and Reengineering.

[9]  Alex Quilici Reverse Engineering of Legacy Systems: A Path Toward Success , 1995, 1995 17th International Conference on Software Engineering.

[10]  Harald C. Gall,et al.  An evaluation of reverse engineering tool capabilities , 1998, J. Softw. Maintenance Res. Pract..