Tool assisted Agile approach for legacy application migration

Published: 2025, Last Modified: 06 Nov 2025Int. J. Syst. Assur. Eng. Manag. 2025EveryoneRevisionsBibTeXCC BY-SA 4.0
Abstract: Legacy applications continue to play a pivotal role in many organizations, supporting critical business processes despite the challenges posed by outdated hardware, software, and compilers. The complexity of replacing these systems is compounded by the need for deep expertise in understanding business requirements, precise estimation, and comprehensive testing, all within stringent budget constraints. Existing tools offer partial solutions, such as reverse engineering, but often fall short in identifying actual execution flows and addressing the prevalence of dead code in legacy systems. Additionally, these tools typically operate in isolation, relying on different paradigms and platforms, which hinders the cumulative benefits that could be gained from their combined use. To address these challenges, we have developed a comprehensive suite of productivity designed for the migration of legacy applications. This suite is equipped with tools that extract the runtime behaviour of legacy applications, including function points, complexity, and memory access patterns, enabling a more accurate estimation of scope and requirements. Our productivity suite not only enhances the understanding of legacy systems but also facilitates the development and testing of the target system by incorporating business rules, non-functional requirements, and test data. The primary contribution of this work is to build custom tools that work seamlessly across various phases of the Software Development Life Cycle, leveraging an open-source framework integrated with popular IDEs. We propose a tool-assisted strategy that enables migration engineers to decompose legacy application behaviour into Agile stories using runtime execution traces, estimate story points based on code complexity and invocation frequency, and prioritize backlog items by analyzing functional criticality and reusability derived from execution footprints. Additionally, the suite supports test-driven development by generating unit test data and validating migrated components through an augmented real execution framework, which facilitates live integration testing with legacy systems. Built on an open-source dynamic instrumentation framework, our custom tool set is versatile, interoperable, and can be integrated across various runtime environments. Furthermore, we demonstrate how this productivity suite can be effectively leveraged within Agile methodologies, enabling a swift and efficient migration of legacy applications. This approach supports the coexistence and validation of new components by facilitating live data exchange with the existing legacy system, ensuring a seamless transition to modernized platforms.
Loading