Iterative Reengineering of Legacy Functions

  • Authors:
  • Alessandro Bianchi;Danilo Caivano;Vittorio Marengo;Giuseppe Visaggio

  • Affiliations:
  • Università di Bari;Università di Bari;Università di Bari;Università di Bari

  • Venue:
  • ICSM '01 Proceedings of the IEEE International Conference on Software Maintenance (ICSM'01)
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper describes a process of gradual reengineering of the procedural components of a legacy system. The process is integrated and completed by the data reengineering process analyzed in a previous paper by the same authors. The proposed method enables the legacy system to be gradually emptied into the reengineered system, without needing to either duplicate the legacy system or freeze it. The process consists of evolving the legacy system components toward firstly a restored system and then toward the reengineered system. Meanwhile, the legacy system can coexist with both the restored and the reengineered parts. By the end of the process, a single system will be in existence: the reengineered one. The method has been applied to reengineer a real system and demonstrated its ability to: support gradual reengineering, maintain the system at work during the process, minimize the need to freeze maintenance requests, renew the operative environment of the reengineered system with respect to the legacy system and, finally, eliminate all the system's aging symptoms.