Software re-engineering system

Data processing: software development – installation – and managem – Software program development tool – Translation of code

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C717S152000, C717S152000, C717S152000

Reexamination Certificate

active

06269474

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
The Field of this invention relates to a computer program optimization system which results in code reduction and standardization. More specifically, the instant invention relates to a computer system which evaluates existing software and performs vertical, horizontal and sequential synchronization on the source code, utilizing an interim pseudo code to create new systems library and a program source code file.
2. Related Art
Prior art systems relate to code conversion systems, including compilers and language translators. However, such programs take data as it is and in sequence without an evaluation of the use of individual variables. Usually such conversions are performed in sequence one program at a time. Thus, there is no evaluation of the several programs used in a systems group against each other.
It is an object of the instant invention to provide a computer program optimization system which evaluates multiple program source code files as a whole.
It is a further object of this invention to provide a computer program optimization system which generates uniformly named variables which occupy the same physical location or possess the same value profile.
It is a further object of this invention to provide a computer program optimization system which permits interactive modification of element attributes during the optimization process.
It is a further object of this invention to provide a computer program optimization system which consolidates all repeated program code segments into a library.
The instant invention addresses the usage of various elements, variables and structures in an entire software system and consolidates all redundant information. In addition, other elements are identified by physical location and uniformly named.
The instant invention generates a code-less application which provides rapid analysis, development, documentation and implementation of an organization's functions.
BRIEF DESCRIPTION OF THE INVENTION
The instant invention reads existing program source codes which may be initially stored in computer memory, hard disk storage devices, on floppy disk storage device, diskettes, or virtually any other computer readable medium. A table lookup may be used to convert the native source code into a into a pseudo code form for writing out of such code as an interim source code file into virtual memory to be used for conversion and manipulation. The source code in the pseudo format is processed in five (I-V) phases resulting in a new program source code with appropriate instructions to call library common functions for the new system stored in the system library as created by the optimization system. In addition, various files, data elements and work space allocations each of which occupy the same space with other such files, elements and work space allocations are normalized, i.e. referred to by the same names by all source code. During the optimization process, the user may interactively change the names of files, any of the attributes of the data elements which will be reflected for all occurrences of the element and workspace definitions. In addition, work space allocations are given a unique name by the system.
The first phase of the computer optimization system is a vertical synchronization process which identifies all individual file name references, data element references and workspace allocations within every record type, within every file representative of program source code. A common name is assigned to each file, element or workspace by physical position within a record within each of the files. The process also creates various cross-reference files that are structured to be accessed either sequentially or randomly as required. The file, common element and workspace names replace the original names used in the original program source code.
During vertical synchronization a user may interactively specify specific file names and definitions for a particular element which then becomes the standard for all the source codes examined by the system. If no specific designation is made, the system automatically selects the first unique name it encounters within the software to identify the physical position of a file or specific data element as the new standard definition. The system then generates a file name, cross-reference file and an element cross-reference file to identify each file and data element and the assigned name.
Work space allocations are also identified and each unique location assigned a specific name.
In phase II the system implements a horizontal synchronization process which formats all program instructions in the interim code into standard syntax format. This permits an exact match between given instructions within the source code according to a uniform or standard syntax format. The program source code written in the standard syntax of the interim format is temporarily stored in virtual memory for later use during the optimization process.
In phase III, a sequential synchronization process scans all interim program source code instructions to determine if there are at least two or more source code instructions in any program source code that qualifies as a potential common function. Potential common functions are identified as that code which resides between program labels although it is clear that other designations could be used, such as instruction sequences that are bounded by instruction pairs, e.g. start and end of a conditional statement. Codes so identified are qualified as a potential common function, and then matched against other potential common functions within a potential library common function file. If not present, the functions are then stored in the Potential Library Common Function File with all other potential library common functions.
In phase IV, the temporary copy of each of the modified program source codes for each program source code file in the system is written into new files with all redundant instructions as stored in the potential library common function file replaced with a call to the particular function in the common library file. The particular potential library functions so identified are then stored in a current systems library file. The selection of which potential common library functions are to be replaced with a call and stored in the current systems library file is accomplished by comparing the function against a Function Sequence File to determine if the particular common function being analyzed is used more than once. A Program Function Identification File contains data which determines where duplication occurs in a program and, more particularly, at what position within the program such duplication occurs. Thus, the location of the call and removal of the code segment can be accomplished for all segments which are used more than once. Segments which are not used more than once remain in place and are not moved to the current library.
In Phase V, when the modified source code has been restructured, and it is vertically, horizontally and sequentially standardized, redundant program functions are identified and added to the new system library file. This results in source code which has no redundancy. That is, no two or more instructions that are identical exist more than once anywhere within any program in the system.
A significant increase in efficiency and reduction of code are achieved. Similarly, all of the various data elements which occupy the same location use a common identifier in each of the various source code files in which they are referenced. Phase V concludes with a conversion of the interim program code into its native format.
Alternatively, the user may automate the change of element attributes. That is the user may command the system to automatically make the changes input by the user and automatically post the changes to the interim source code or automatically make its own name changes as determined by the System. As to those elements where the user has not made any changes the system automatically selects

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Software re-engineering system does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Software re-engineering system, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Software re-engineering system will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2462126

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.