Implementation framework based on design refinements for systematic migration of legacy applications to cloud - Rana, Muhammad Ehsan (2020)
Legacy applications refer to the applications that have been in use for a long period of time and developed using obsolete technologies. They are often business-critical systems; therefore, any changes here inevitably will affect the other parts of the system. Legacy applications need to be compatible and up to date with the contemporary business requirements and modern infrastructure, however their outdated architecture and stern design constraints proved to be a major hurdle towards achieving this goal. Cloud computing offers numerous benefits over traditional on-premises infrastructure. It provides a new platform for organizations, which promises flexible scalability, business agility, high availability and reduction in cost. Considering these benefits, migration of legacy applications to cloud is a lucrative option for many organizations. However, the architecture of these legacy applications requires a tested, fool-proof and riskfree approach for migration. The existing models or frameworks proposed for the migration of legacy applications does not address all major issues of migration. These models either lack the software re-architecting phase or mentions it in an abstract and brief way without involving the specifics and intricacies of its application. This research explores and evaluates the coverage of design refinement phase in existing studies for migration of legacy applications to cloud and proposes a design refinement-based implementation framework for systematic migration of legacy applications to cloud. For the purpose of designing the framework, structured interviews are employed to seek the most up-to-date feedback regarding current industry trends. The information obtained through the interviews is used to gain decisive inputs for the designing of the artefact. As part of this research, it is justified with the help of empirical evidence that the use of good practices through design patterns help in improving the three key quality factors of software namely efficiency, flexibility and maintainability. The information gained is used to incorporate legacy application’s design refinements as one of the core components of the proposed implementation framework for systematic migration of legacy applications to cloud. Expert review is used to validate the proposed implementation framework. Moreover, two applications were chosen and migrated to cloud by applying necessary design refinements as one of the core steps of the proposed framework. Expert review confirms that the framework is easy to implement and is applicable to all typical legacy applications which allows the architects to follow the steps sequentially for a systematic migration. After successful migration, the performance of the application is compared to its on-premise deployment to see the overall performance improvements as well as the improvements in terms of the stated quality factors (an increase in 51% efficiency, 66% flexibility and 7% maintainability is recorded in the migrated application). The main contribution of this research is to systematically embed and justify with evidence the significance of architectural and design refinement process that improves efficiency, flexibility and maintainability of the legacy application as part of its migration to cloud. This systematic design refinement process ensures improving the overall architecture suitable for cloud infrastructure.