“Iterative Reengineering of Legacy Functions” Paper: Authors:

advertisement
Paper:
Authors:
Source:
Summary:
“Iterative Reengineering of Legacy Functions”
Alsessnandro Bianchi, Danilo Caivano, Vittorio Marengo, Giuseppe
Visaggio
IEEE International Conference on Software Maintenance 2001; (7-9
Nov 2001), pp 632-641
Michele Biddy
Summary
This paper is proposing a new methodology for reengineering legacy systems. The
approach, Iterative Reengineering, claims to overcome the common issues faced when
converting an older system to a new one, such as maintenance and accessing data during
the conversion process. This methodology introduces the concept of gradually converting
the system by its components/functions over a period of time, instead of all at once. This
is accomplished by:





Continuing to use the original Legacy functions and database.
Create a new database and gradually restore the Legacy functions that have no
inter-dependencies to the new system to access the new database, and then delete
them from Legacy system.
Reconstruct the restored functions and have them still access the new database.
Create a UI that will allow the user to interact with all
When the entire system is converted, remove the legacy database.
The main goal of this methodology is to keep the data intact, as it is the most important
aspect of the system. To accomplish this, the process is done in gradual increments by
slowly moving components over to the new system and phasing out the legacy system.
This process allows the Legacy system to still be used and maintained to keep operations
flowing.
How does this affect us?
This paper discusses converting an entire Legacy system over to a new platform, by
reengineering it by the functions. We are not trying to reengineer our entire system, just
update what is necessary to make it ANSI C++ compliant and able to run a newer
version of Solaris. We are not reengineering the entire program. The paper also discusses
gradually moving it to the new system in small increments as to not disable the program
from daily operations. Our system is not running at all and is not actively being used by
anyone, so we have the freedom of porting it over however we see fit.
Strengths/Weaknesses:
I think that this approach is most logical that I have heard about so far. They recognize
the fact that keeping the integrity of the data is extremely important, as is not
interrupting the usage of the system. It would have been nice if they would have
considered using their methodology on smaller systems, or ones that had minimal
conversion or corrections to be made. Not all upgrades need to be done on entire systems
and it would be nice to see different approaches on just making minimal upgrades.
Download