Data processing: software development – installation – and managem – Software program development tool – Translation of code
Reexamination Certificate
1999-12-29
2003-06-10
Morse, Gregory (Department: 2122)
Data processing: software development, installation, and managem
Software program development tool
Translation of code
C717S116000, C717S139000, C717S149000
Reexamination Certificate
active
06578195
ABSTRACT:
FIELD OF THE INVENTION
The invention relates to software programming and in particular a method for encapsulating large scale legacy software code.
Reference is hereby made to one microfiche appendix having twenty-nine frames.
BACKGROUND OF THE INVENTION
Older legacy software was typically written using a large set of global variables which could not be used in multiple instances. In an unencapsulated form it is impossible to determine the underlying legacy structure as an object type in which multiple instances can be incarnated.
Encapsulation can be described as the bundling of data together with the member functions describing how the data can be used to form an object. This allows an object to be used in different parts of an application, or different object instances, without affecting the integrity of the data. In other words, the use of an object in one instance leaves data associated with other object instances unaffected.
Improving or writing new software applications, legacy software code may be reused. In such cases, portions of the original legacy code are incorporated into the newly written code requiring the formation of multiple object instances of data from the original legacy code. In such cases its preferred that most, if not all instances of variables with global declarations which are accessible by all functions, be eliminated or otherwise encapsulated to create objects in order to preserve the integrity of the data in the legacy code. While this might be a relatively easy task when a few files and directories are involved, it becomes significantly more tedious, labor intensive and error prone as the scale of the code increases.
Several methods have been used in the art to encapsulate legacy code. The first of these methods is a manual approach. Normally, the code is kept in the original language when the manual approach is used. The manual approach can be laborious and error prone and therefore the cost increases significantly with the size of the code.
A second approach has been to transform the original code into: an object-oriented language such as C++ permitting direct encapsulation of data. This approach is also limited, however, since it is costly and impractical for large scale code. This is especially true if the original code was written prior to the American National Standards Institute Code for “C” with no type checking built in.
In this regard there is a need for a more economical, faster and more reliable method for data encapsulation in large scale legacy software code.
SUMMARY OF THE INVENTION
A method for data encapsulation in large scale legacy software code comprising the steps of:
(a) generating a symbol table output from the legacy software code;
(b) automatically scanning the symbol table to determine global variables therein; and
(c) replacing the global variables with an object for use in one or more separate object instances.
REFERENCES:
patent: 5764973 (1998-06-01), Lunceford et al.
patent: 5852731 (1998-12-01), Wang et al.
patent: 5960200 (1999-09-01), Eager et al.
patent: 6256635 (2001-07-01), Arrouye et al.
patent: 6266729 (2001-07-01), Leung et al.
patent: 6272453 (2001-08-01), Hoerig et al.
patent: 6305007 (2001-10-01), Mintz
patent: 6339840 (2002-01-01), Kothari et al.
patent: 6349404 (2002-02-01), Moore et al.
patent: 6356905 (2002-03-01), Gershman et al.
patent: 6438594 (2002-08-01), Bowman-Amuah
Title: Java based mobile agents, Author: Wong et al, ACM, Mar., 1999.*
Title: Memory allocation for long running server applications, author: Larson et al, ACM, 1998.*
Title: Encapsulating Legacy Software for Use in Client/Server System, author: Sneed, IEEE, 1996.*
Title: Highly Efficient and Encapsulated Re-use of Synchronization Code in Concurrent Object_Oriented Language, author: Matsuoka, ACM, 1993.*
Title: Legacy Systems and Object Technology, author: Jang, source: OOPSLA, Oct., 1995.*
Title: Converting Legacy Code into Ada: A cognitive Approach, autor: Scandura, Source: IEEE, 1994.*
Title: Migrating Legacy Systems towards Object-Oriented Platforms, author: Lucia et al, source: IEEE, 1997.*
Title: Conceptual Module Querying for Software Reengineering, author: Baniassad et al, IEEE, Apr., 1998.
Das Chameli C.
Morse Gregory
LandOfFree
Process for data encapsulation in large scale legacy software does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Process for data encapsulation in large scale legacy software, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Process for data encapsulation in large scale legacy software will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3144843