Re-Engineering a Reverse Engineering Portal to a Distributed SOA

REportal is an existing Web-based reverse engineering portal Web site that provides access to a suite of reverse engineering and program comprehension tools via a Web browser. This abstraction was intended to allow ease of system maintenance by adding and upgrading tools without involving the end user. However, the software tools and server technologies used became deprecated so quickly that it was not possible to take full advantage of the architectural vision. Using a service-oriented architecture, we abstract the process flow of the system from the underlying tools, enabling a wizard-style method of adding services to the system, and facilitating more "hands-off" maintenance. In this paper, we describe the challenges and benefits of this architectural migration.

[1]  Michele Lanza,et al.  CodeCrawler-lessons learned in building a software visualization tool , 2003, Seventh European Conference onSoftware Maintenance and Reengineering, 2003. Proceedings..

[2]  William G. Griswold,et al.  An Overview of AspectJ , 2001, ECOOP.

[3]  Shi Lin On Service-oriented Architecture , 2008 .

[4]  Renato J. O. Figueiredo,et al.  PUNCH: Web Portal for Running Tools , 2000, IEEE Micro.

[5]  James Noble,et al.  Software Visualization Tools for Component Reuse , 2004 .

[6]  Emden R. Gansner,et al.  REportal: a Web-based portal site for reverse engineering , 2001, Proceedings Eighth Working Conference on Reverse Engineering.

[7]  Victor R. Basili,et al.  System Structure Analysis: Clustering with Data Bindings , 1985, IEEE Transactions on Software Engineering.

[8]  Gerardo Canfora,et al.  Migrating interactive legacy systems to Web services , 2006, Conference on Software Maintenance and Reengineering (CSMR'06).

[9]  Emden R. Gansner,et al.  Graphviz and Dynagraph – Static and Dynamic Graph Drawing Tools , 2003 .

[10]  Harry M. Sneed,et al.  Creating Web services from legacy host programs , 2003, Fifth IEEE International Workshop on Web Site Evolution, 2003. Theme: Architecture. Proceedings..

[11]  Nikos Parlavantzas,et al.  Towards Automatic Creation of Web Services for Grid Component Composition , 2007 .

[12]  Andy Schürr,et al.  GXL: toward a standard exchange format , 2000, Proceedings Seventh Working Conference on Reverse Engineering.

[13]  Michael Eichberg,et al.  BAT2XML: XML-based Java Bytecode Representation , 2005, Bytecode@ETAPS.

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

[15]  James Noble,et al.  XML Database Support for Program Trace Visualisation , 2004, InVis.au.

[16]  Harry M. Sneed,et al.  Integrating legacy software into a service oriented architecture , 2006, Conference on Software Maintenance and Reengineering (CSMR'06).

[17]  Andreas Winter,et al.  Exchanging Graphs with GXL , 2001, GD.

[18]  Jim Melton,et al.  Querying XML,: XQuery, XPath, and SQL/XML in context (The Morgan Kaufmann Series in Data Management Systems) (The Morgan Kaufmann Series in Data Management Systems) , 2006 .

[19]  Alan Bundy,et al.  Constructing Induction Rules for Deductive Synthesis Proofs , 2006, CLASE.

[20]  James Noble,et al.  X3D web software visualization in action! , 2007, OOPSLA '07.

[21]  Emden R. Gansner,et al.  Bunch: a clustering tool for the recovery and maintenance of software system structures , 1999, Proceedings IEEE International Conference on Software Maintenance - 1999 (ICSM'99). 'Software Maintenance for Business Change' (Cat. No.99CB36360).

[22]  T. A. Wiggerts,et al.  Using clustering algorithms in legacy systems remodularization , 1997, Proceedings of the Fourth Working Conference on Reverse Engineering.

[23]  Liam O'Brien,et al.  Service-Oriented Migration and Reuse Technique (SMART) , 2005, 13th IEEE International Workshop on Software Technology and Engineering Practice (STEP'05).