Planning the reengineering of legacy systems
- 1 January 1995
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Software
- Vol. 12 (1) , 24-34
- https://doi.org/10.1109/52.363168
Abstract
As the manager of a small software-reengineering company, I am continually confronted with the task of justifying reengineering. The user wants to know what the benefits are. Why reengineer old Cobol or Fortran when there are so many attractive fourth- generation and object-oriented languages on the market? That is why I have chosen to address business issues in this article -- not because the technical problems of transforming code and data structures are not important but because they may be irrelevant if you are not able to make a business case for solving them. There is nothing worse for a technician than to be working on a solution to some problem for years, only to discover that the problem was incorrectly stated from the beginning. I have developed a five- step reengineering planning process, starting with an analysis of the legacy system and ending with contract negotiation. The five major steps are project justification, portfolio analysis, cost estimation, cost-benefit analysis, and contracting.Keywords
This publication has 6 references indexed in Scilit:
- Revalidation during the software maintenance phasePublished by Institute of Electrical and Electronics Engineers (IEEE) ,2003
- Achieving software quality with testing coverage measuresComputer, 1994
- Using metrics to evaluate software system maintainabilityComputer, 1994
- DoD legacy systemsCommunications of the ACM, 1994
- Reverse engineering and design recovery: a taxonomyIEEE Software, 1990
- Assessing software maintainabilityCommunications of the ACM, 1984