On the Relationships between Static and Dynamic Models in Reverse Engineering Java Software

An experimental environment for reverse engineering Java software is discussed. Static information is extracted from class files and viewed using Rigi reverse engineering environment. The dynamic information is generated by running the target software under a debugger. The debugged event trace information is viewed as scenario diagrams using a prototype tool called SCED. In SCED, state diagrams can be synthesized automatically from scenario diagrams. Dynamic information can also be attached to the static Rigi graph. Both static and dynamic views contain information about software artifacts and their relations. Such overlapping information forms a connection for information exchange between the views. SCED scenario diagrams are used for slicing the Rigi view and the Rigi view in turn, is used to guide the generation of SCED scenario diagrams and for raising their level of abstraction.

[1]  Hausi A. Müller,et al.  The Software Bookshelf , 1997, IBM Syst. J..

[2]  Hausi A. Müller,et al.  Understanding Software Systems Using Reverse Engineering Technology , 1994, COODBSE.

[3]  Glenn S. Fowler,et al.  Ciao: a graphical navigator for software and document repositories , 1995, Proceedings of International Conference on Software Maintenance.

[4]  Tarja Systä,et al.  Automated Support for Constructing OMT Scenarios and State Diagrams in SCED , 1997 .

[5]  Stéphane Ducasse,et al.  Recovering high-level views of object-oriented applications from static and dynamic information , 1999, Proceedings IEEE International Conference on Software Maintenance - 1999 (ICSM'99). 'Software Maintenance for Business Change' (Cat. No.99CB36360).

[6]  Mark N. Wegman,et al.  Execution Patterns in Object-Oriented Visualization , 1998, COOTS.

[7]  Rick Kazman,et al.  Playing Detective: Reconstructing Software Architecture from Available Evidence , 1999, Automated Software Engineering.

[8]  Bjørn N. Freeman-Benson,et al.  Visualizing dynamic software system information through high-level models , 1998, OOPSLA '98.

[9]  Hideto Tomabechi,et al.  Automatic Synthesis of State Machines from Trace Diagrams , 1994, Softw. Pract. Exp..

[10]  Kai Koskimies,et al.  Automated Support for Modeling OO Software , 1998, IEEE Softw..

[11]  Roy H. Campbell,et al.  Architecture-oriented visualization , 1996, OOPSLA '96.

[12]  Danny B. Lange,et al.  Object-Oriented Program Tracing and Visualization , 1997, Computer.

[13]  Danny B. Lange,et al.  Interactive visualization of design patterns can help in framework understanding , 1995, OOPSLA.

[14]  Spencer Rugaber,et al.  Using visualization for architectural localization and extraction , 1997, Proceedings of the Fourth Working Conference on Reverse Engineering.

[15]  Hanspeter Mössenböck,et al.  Scene: using scenario diagrams and active text for illustrating object-oriented programs , 1996, Proceedings of IEEE 18th International Conference on Software Engineering.