12th IEEE International Workshop on Program Comprehension (IWPC'04)
Download PDF

Abstract

Reverse engineering for program understanding is always the first step in a reengineering project. When CASE tools are used to develop legacy applications, there are hidden assets that are not usually available. These assets may be very useful for program understanding because they contain design and architectural information usually only found, if at all, in the applications' documentation or are implicit in the code. Reverse engineering this type of applications requires taking advantage of these assets. In this paper, we describe a case study in which we reverse engineer a large legacy application which was constructed using SNAP, a CASE tool for the AS400. By exploiting vital information generated by SNAP, we were able to obtain representations of the application's persistent data and of dependency information of programs that make up the application. This experience led to the definition of guidelines that can be used to tackle the problem of reengineering applications that were developed with case tools.
Like what you’re reading?
Already a member?
Get this article FREE with a new membership!

Related Articles