Comparison and Analysis of Methods for Migrating Legacy Systems to SOA
Total Page:16
File Type:pdf, Size:1020Kb
MATEC Web of Conferences 77, 04005 (2016) DOI: 10.1051/matecconf/20167704005 ICMMR 2016 Comparison and analysis of methods for migrating legacy systems to SOA LIU Dong1,ZHANG Caihuan2 1Dept. of Information Technology, Luoyang Normal University, 471022 Luoyang Henan, China 2Dept. of Mathematics, Luoyang Normal University, 471022 Luoyang Henan, China Abstract. Migration of legacy systems to SOA has caught lots of attention in both academic and industry. People have proposed many methods, such as wrapping, reengineering etc. However, various characteristics of legacy systems can make the migration complicated, and different enterprises can afford different level migration cost. In this paper, the existing methods and options for evolving legacy systems are compared, and their advantages and disadvantages are identified respectively. Different adaptive situations are listed to assist in making migration decision. 1 Introduction Simple standards that define the available interfaces and structure of data that is The generic term legacy systems has been coined to refer conveyed across those interfaces. to existing IT assets that have been deployed in the past, Platform and language-independent interfaces and in many cases, may have come into the enterprise as based on these standards, which allow a result of a merger or acquisition. No standard definition application to invoke services operating on any exists. There are a set of common features: large device supporting the SOA regardless of the scale(often millions of lines of monolithic code); old age; hardware platform, operating system, or obsolete languages such as assembler; lack of consistent implementation language. (or any) documentation; poor management of data; Clear separation of service interface from degraded structure following years of modification; and implementation, thus allowing many service finally, a support team which is totally reliant on the updates to occur without impact on service expertise and knowledge of expert individuals. These users. factors together cause the cost of maintenance support to Ь Message-based communication allowing be very high, and the applications backlog to be distribution across a wide area. unacceptable [1]. However, it is an undeniable fact that Loose coupling between services, minimize legacy systems generally consist of invaluable assets with interdependencies and facilitating reuse. embedded business logic representing many years of Mechanisms for discovery of services available coding, developments, enhancements, and modifications. and for establishing connections with services. In addition, legacy systems is generating unusually high Clearly, one of the most attractive features of SOA to profit margins in many cases and thus, are responsible for many organizations is that SOA offers the promise of a large amount of a company’s operating profit. enabling legacy systems to expose their functionality as Consequently, many business and IT benefits are realized services without making significant changes to the legacy from reusing legacy assets, evolving them to integrate systems themselves. with or migrate to modern platforms and architectures Over the past few years, migration of legacy systems like Service Oriented Architecture (SOA). to SOA has caught lots of attention in both academic and SOA has become an increasingly popular paradigm at industry. People have proposed many methods, such as present for achieving interoperability between systems wrapping, reengineering etc. However, various because it provides a standard based conceptual characteristics of legacy systems, such as age, language, framework. At the core of an SOA is a service. A service and architecture, as well as the target SOA environment, is a coarse-grained, discoverable, and self-contained can make the migration complicated. In addition to this, software entity that interacts with applications and other different enterprises can afford different level migration services through a loosely coupled, often asynchronous, cost. So it may not be immediately obvious whether to message-based communication model [2]. Proponents migrate or not and which method be suitable for a suggest a long list of advantages [3]: specific organization. In this paper, we compare the © The Authors, published by EDP Sciences. This is an open access article distributed under the terms of the Creative Commons Attribution License 4.0 (http://creativecommons.org/licenses/by/4.0/). MATEC Web of Conferences 77, 04005 (2016) DOI: 10.1051/matecconf/20167704005 ICMMR 2016 existing methods and options for legacy systems, solved. However, There are some cases where the especially legacy systems with many applications, and freezing approach may be a good option, if: identify their advantages and disadvantages respectively. The size of the application is small. Different adaptive situations are listed to assist in making The cost of ownership is low. migration decision. Critical business is not embedded in the The remainder of the paper is organized as follows. In application. Section 2, a few existing methods of migration to SOA The application is generating low profit are listed. Their advantages and disadvantages are margins for organization. compared and analysed. Accordingly, their adaptive The application changes infrequently. situations are identified respectively. Section 3, illustrates The application has low integration needs with the related works and highlights the main contributions, other ones. and Section 4 concludes the paper. 2.3 Rewrite 2 Comparison and analysis of the existing methods Rewriting means to retire the application and outsource or re-develop from ground-up. Actually, Rewriting is not one of the methods advocated by SOA proponents. But, it 2.1 requirements and background may make sense because of the following advantages: It can deliver a complete customized solution Generally, the primary motivation for migration to SOA that can be built exactly to meet the is based on one or more of the following requirements: organization’s need. reduce the high cost of ownership; accelerate time to market; monolithic architecture with little or no It is a “big-bang” approach to solve the main modularity together with redundant code. closed and problem. obsolete technology; decreasing developers skilled in New and standards-compliant technologies are existing systems; lack of vendor support; lack of introduced. consistent documentation. The organization can gain the control of In the following subsection, we will base our software source code base. comparison and analysis on the aforementioned New added values are brought by leveraging requirements. Before presenting our findings, let’s SOA. consider a situation: an enterprise has many applications. There are a few shortcomings that make many Recently, the enterprise has decided to adopt SOA and consider the approach incompliant with the idea of SOA: developed a SOA infrastructure. A question to be Legacy assets cannot be reused so that addressed is which application should be migrated to investment in the past is lost. SOA, which method be suitable for it and how. The May be risky and long time consuming. answer will be various for different application and May be high cost. organization. Our findings provide baseline for making Although these shortcoming evidents, in the situations decision through comparison and analysis of different below, this may be an appropriate method. methods. It is difficult to understand the business rules embedded in the application. 2.2 Freeze The size of the application is small. The application involves obsolete or difficult The term “freeze” means that the organization decides to maintain technologies. that no further work on the legacy application should be The application needs to be customized. performed. Although freezing seems to sound absurd, it Organization needs the control of software may make sense to deal with some specific application. source code base. In fact, people always justify a project at first according Reliable outsource partner or people of to the value and the state of the art of an application as development and maintenance skilled in SOA well as cost-benefit analysis. Manager would prefer to exist. have an application maintain its current state in many cases. The freezing approach has four advantages: 2.4 Replace No additional cost input. Replacement sometimes is easy to be confused with No time consuming. rewriting. Replacement here refers to replace an No risk of failure. application with an Commercial off-the-shelf (COTS) Continue to keep profit generated by the legacy package. Some common advantages and disadvantages application. exist between replacement and rewriting methods, for Of course, the disadvantages of this approach are also example, both belong to “big-bang” approach, both bring evident. All requirements mentioned above can’t be met. new added value by leveraging SOA, both introduce new The main pain points organization faced with cannot be and standards-compliant technologies, however ,both throw all the legacy assets away and lose the investment 2 MATEC Web of Conferences 77, 04005 (2016) DOI: 10.1051/matecconf/20167704005 ICMMR 2016 in the existing application. A particular advantage is less As defined by Chikofsky and Cross [4], reengineering is risky and time consuming. Some disadvantages the examination and alteration of a subject system to differentiating from rewriting method are listed below. reconstitute it in