A Logic-Based Approach to Reverse Engineering Tools Production

Difficulties arising in the use of documents produced by reverse engineering tools are analyzed. With reference to intermodular data flow analysis for Pascal software systems, an interactive and evolutionary tool is proposed. The tool is based on the production of intermodular data flow information by static analysis of code, its representation in a Prolog program dictionary, and a Prolog abstractor that allows the specific queries to be answered. >

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

[2]  Suzanne W. Dietrich,et al.  A conceptual design for a code analysis knowledge base , 1992, J. Softw. Maintenance Res. Pract..

[3]  STEPHEN RICHARDSON,et al.  Interprocedural optimization: Experimental results , 1989, Softw. Pract. Exp..

[4]  Alan M. Davis,et al.  Operational prototyping: a new development approach , 1992, IEEE Software.

[5]  Ken Kennedy,et al.  Efficient computation of flow insensitive interprocedural summary information , 1984, SIGPLAN '84.

[6]  Andrea Maggiolo-Schettini,et al.  Web Structures: A Tool for Representing and Manipulating Programs , 1988, IEEE Trans. Software Eng..

[7]  James M. Purtilo,et al.  A Packaging System For Heterogeneous Execution Environments , 1991, IEEE Trans. Software Eng..

[8]  Bob Wachtel,et al.  Software analysis notes: case considered tricky (1) , 1989 .

[9]  Wilhelm Schäfer,et al.  Concepts and implementation of a rule-based process engine/sup +/ , 1992, International Conference on Software Engineering.

[10]  F. J. Lukey Understanding and debugging programs , 1980 .

[11]  Jeffrey M. Barth A practical interprocedural data flow analysis algorithm , 1978, CACM.

[12]  Premkumar T. Devanbu GENOA - A Customizable, Language- And Front-end Independent Code Analyzer , 1992, International Conference on Software Engineering.

[13]  Hai Huang,et al.  A rule-based tool for reverse engineering from source code to graphical models , 1992, Proceedings Fourth International Conference on Software Engineering and Knowledge Engineering.

[14]  Victor R. Basili,et al.  The Future Engineering of Software: A Management Perspective , 1991, Computer.

[15]  Premkumar T. Devanbu,et al.  LaSSIE: a knowledge-based software information system , 1990, [1990] Proceedings. 12th International Conference on Software Engineering.

[16]  Aniello Cimitile,et al.  Reverse-engineering and intermodular data flow: A theoretical approach , 1992, J. Softw. Maintenance Res. Pract..

[17]  Alberto O. Mendelzon,et al.  Visualizing and querying software structures , 1992, International Conference on Software Engineering.

[18]  Thomas W. Reps,et al.  The use of program dependence graphs in software engineering , 1992, International Conference on Software Engineering.

[19]  Mark A. Linton Implementing relational views of programs , 1984 .

[20]  Joe D. Warren,et al.  The program dependence graph and its use in optimization , 1984, TOPL.

[21]  V. Basili,et al.  The future generation of software: a management perspective , 1991, Computer.

[22]  Aniello Cimitile,et al.  Maintenance and intermodular dependencies in Pascal environment , 1990, Proceedings. Conference on Software Maintenance 1990.

[23]  Paolo Ciancarini,et al.  Software process enactment in Oikos , 1990, SDE.

[24]  Victor Weinberg,et al.  Structured Analysis , 1978 .

[25]  Letizia Tanca,et al.  Designing and Prototyping Data-Intensive Applications in the Logres and Algres Programming Environment , 1992, IEEE Trans. Software Eng..

[26]  John Banning,et al.  : An Efficient , 2022 .

[27]  C. V. Ramamoorthy,et al.  The C Information Abstraction System , 1990, IEEE Trans. Software Eng..

[28]  Matthew S. Hecht,et al.  Flow Analysis of Computer Programs , 1977 .

[29]  Aniello Cimitile,et al.  Reverse engineering processes, design document production, and structure charts , 1992, J. Syst. Softw..

[30]  Alfred V. Aho,et al.  The Theory of Parsing, Translation, and Compiling , 1972 .

[31]  Gene Forte,et al.  Tools Fair: Out of the Lab, Onto the Shelf , 1992 .

[32]  Aniello Cimitile,et al.  Reverse engineering: Algorithms for program graph production , 1991, Softw. Pract. Exp..

[33]  R BasiliVictor,et al.  The Future Engineering of Software , 1991 .

[34]  Jim Q. Ning,et al.  Knowledge-based program analysis , 1990, IEEE Software.

[35]  Aniello Cimitile Towards reuse reengineering of old software , 1992, Proceedings Fourth International Conference on Software Engineering and Knowledge Engineering.

[36]  Frederick P. Brooks,et al.  No Silver Bullet: Essence and Accidents of Software Engineering , 1987 .

[37]  Aniello Cimitile,et al.  A reverse engineering methodology to reconstruct hierarchical data flow diagrams for software maintenance , 1989, Proceedings. Conference on Software Maintenance - 1989.

[38]  Georg Gottlob,et al.  Efficient Database Access from Prolog , 1989, IEEE Trans. Software Eng..