Comparison of maintainability improvement by segmentation and reengineering-a case study
Maria Istela Cagnin, Rosângela A. D. Penteado, P.C. Masiero, José Carlos Maldonado · 2003
A case study with around 30,000 lines of C code has been submitted to an experiment aiming at comparing the maintainability improvement of a legacy system. It refers to a system for the editing and simulation of statecharts originally developed as procedure-oriented, with text files. Initially, the object-oriented reverse engineering of the system was done using Fusion/RE. Segmentation was then conducted based on the documentation produced by the reverse engineering. Afterwards, an additional reengineering was done, changing the programming language to Java, the text files to a relational database, and using design patterns to solve the conflict between the relational and object-oriented paradigms. Maintainability of the legacy system, the segmented system with the documentation produced by the reverse engineering, and the reengineered system were then compared. The results indicate that the maintainability of the segmented system is closer to that of the reengineered system than to that of the legacy system.