A Methodology for Migration of Legacy Applications to Distributed Object

Total Page:16

File Type:pdf, Size:1020Kb

A Methodology for Migration of Legacy Applications to Distributed Object A Metho dology for Migration of Legacy Applications to Distributed Ob ject Management E. R. Hughes R. S. Hyland S. D. Litvintchouk A. S. Rosenthal A. L. Schafer S. L. Surer The MITRE Corp oration Bedford, MA 01730-142 0 Many organizations wish to con gure and recon g- Abstract ure systems from reusable, replaceable comp onents, Much of today's software development involves each of which provides a sp eci c service. In older reengineering legacy applications, but the bulk of or current systems here called the legacy systems, research and tools address new software develop- application-sp eci c co de is entwined with co de that ment. The Distributed Object Management Integra- implements rather generic services, such as map dis- tion System DOMIS, 1993-96 project investigated play, data replication, or event noti cation. As a re- how legacy applications can be incremental ly modi ed, sult, this generic functionality is unavailable for use or migrated, by using distributed object management by other applications, and must b e duplicated and DOM technology. This paper describes a methodol- maintained separately within each application. We ogy for such migration using DOM technology. use the term \duplicated" lo osely; in extreme cases our metho dology might b e applied to a legacy imple- 1 Intro duction mentation and services which di er in terms of sp eed, 2 Our domain is command and control C systems, accuracy, and p ossibly even b ehavior. However, more consisting of large amounts of legacy software that similar duplicated functionality makes the metho dol- have b ecome very dicult to change and extend. We ogy more attractive. have found that a DOM architecture such as the Com- Our approach to migration is to de ne a set of mon Ob ject Request Broker Architecture CORBA target services, many of whichmay b e encapsula- [3] reduces the cost and risk of reengineering i.e., tions of existing service mo dules, and to reengineer mo difying the source co de of systems within this do- legacy applications to rely on a common implemen- main. tation of these services. This approach alleviates the We b egan byinvestigating coarse-grained DOM en- need to maintain a customized implementation of the capsulation of legacy software, in whichentire ex- service in each system. Migration may o ccur in several ecutable applications are encapsulated as ob jects. phases, each of which encapsulates some functionality Coarsely encapsulated applications can b e accessed as a common service and eliminates some dep endence via DOM relatively indep endent of lo cation, platform, on the legacy services. Services are then invoked us- and programming language. We then reengineered ing a distributed request broker, preferably one that legacy software to employ ner-grained encapsula- conforms to a DOM standard. tion, replacing duplicated functionality with ob ject- By service,we mean a conceptually coherent set oriented invo cations of a reusable common service. of functions, indep endentofany implementation. A We p erformed an exp eriment to reengineer a stand- service interface can b e discussed even if the system alone legacy application, implementing its map display currently contains no software that actually supp orts functionalitybyinvoking a b etter, o -the-shelf, DOM- the interface. An interface is typically sp eci ed in an encapsulated map display service. Coarse-grained en- Interface Description Language IDL; suchaninter- capsulation is relatively easy to apply to a legacy face is reasonably human-readable and can b e com- application, so this pap er concentrates on the more piled into executable co de. challenging migration of existing systems using ner- grained encapsulation. We also describ e our lessons A legacy service is an implemented service within ab out the e ort and risk involved. a legacy system. Frequently a legacy service will have p o orly do cumented dep endencies and back-do or com- 2 Finer-Grained Encapsulation munications. Typically, a legacy service has di erent The purp ose of our metho dology is to migrate a functional b oundaries than the services available to- legacy application to use the target functionality made day.For example, the develop ers of our legacy system available by new services created from b est-of-breed did not consider map display capability as a replace- implementations. The legacy functionality of the ap- able service but rather as an integral part of airspace plication and its asso ciated maintenance costs are con ict detection. eliminated. The metho dology has an obvious exten- Some of the services to b e extracted may b e used sion for migrating multiple legacy applications at once, across the industry, while others may b e sp eci c to the whichmay reduce the total cost of the migrations. 2 C problem domain. When two or more applications Figure 1 illustrates our approach. Here, the strip ed have implemented very similar functionality,itmay boxes represent duplicated functionality, whichisbe- b e advantageous to turn this functionalityinto a com- ing removed from legacy applications A and B and re- mon service. Then, one can make a server function placed with invo cations of a DOM-based service con- f accessible to outside clients by providing a wrapper structed by encapsulating co de from B. This gure function that can b e invoked by a DOM request and assumes that there is not already an established stan- that invokes f. dard service, and that the strip ed mo dule in B is appropriate for reuse as a service. The arrows from 1.1 Structure of this Pap er legacy mo dules to the DOM framework illustrate the We b egin by reviewing DOM technology and the evolution emb o died in our metho dology. The legacy b ene ts it provides for distributed applications. We co de for duplicated functionality in A is retired and then present our metho dology and discuss the steps no longer maintained as part of the migration e ort. involved. Finally,we give some conclusions and fur- 2.1 Our Exp eriments with Finer-Grained ther discussion. Encapsulation 1.2 DOM Technology and Bene ts We p erformed two exp eriments motivated bya We assume that the reader has a working famil- suite of Air Force planning systems, collectively com- iarity with DOM software; intro ductory information prising many millions of lines of co de. In b oth, the can b e found in [3] and [4]. Our DOM software is a goal was to learn ab out migration, not to pro duce an commercial CORBA Ob ject Request Broker ORB, op erational system. The exp eriments attempt to pro- whichwe nd provides the advantages of: vide insight to the managers who plan acquisitions to upgrade these systems, and also to the engineers who platform and language indep endence might carry out the upgrades. The rst exp erimentwas brief, involving the map network lo cation transparency display service from the Airspace Planning System APS. This exp erimentwas terminated b ecause we increased fault tolerance the ability to transpar- concluded that APS was to o large and complex to ently restart services on demand reengineer with our resources, and b ecause map dis- play is not central to APS. reduced development e ort by reusing common The second exp eriment reengineered part of the services Airspace Decon iction System ADS, an application that provides spatial analysis and editing capabilities consistent do cumentation of interfaces to detect and repair con icts b etween air routes. Our goal was to replace the legacy map display functional- ity with brokered invo cations of a map display service. CORBA do es not sp ecify the level of granularity The map display capabilitywas selected b ecause it is for ob jects. Ob jects can b e entire systems, subsys- present in many military systems, improvements were tems, applications, services, real world ob jects planes, desired, it is imp ortant to ADS, and a new map dis- targets, etc., or programming ob jects. This exibil- play service was available to us. ity allows CORBA to b e used to integrate systems, bridging legacy and mo dern, ob ject-oriented software The ADS application currently provides its own im- development paradigms. Ob jects can b e integrated plementation of map display, in which airspace infor- with other ob jects at any level of granularity, includ- mation is overlaid on maps constructed from World ing ob jects that are encapsulations of entire legacy Data Bank I I data using a Graphical Kernel System systems. GKS graphics package. GKS is not a suitable basis ality of the application. In short, we found the migra- Enterprise Portfolio tion depicted in Figure 1 to b e infeasible for duplicated functionality which is closely tied to the user interface, hnologies do not supp ort in- Application A Application B partly b ecause DOM tec tegration of user interfaces. However, our approachis promising for other more limited forms of integration that are supp orted by DOM. A more radical approachmay b e preferable to the e underto ok. We tried to keep the main appli- RETIRE one w cation logic and replace a single service or, by ex- services provide evolve to services to use evolve tension, set of services. An alternativewould b e to start by obtaining a base of services|buying generic endors and encapsulating key parts of Methodology services from v the legacy application. One would then rewrite the legacy system using a mo dern framework e.g., Java- Beans or ActiveX. The following sections p oint out the advantages and risks for our metho dology, which can b e used to determine a go o d approach for a par- ticular migration pro ject.
Recommended publications
  • Software Evolution Objectives
    Software evolution Objectives To explain why change is inevitable if software systems are to remain useful To discuss software maintenance and maintenance cost factors To describe the processes involved in software evolution To discuss an approach to assessing evolution strategies for legacy systems Topics covered Program evolution dynamics Software maintenance Evolution processes Legacy system evolution Software change Software change is inevitable New requirements emerge when the software is used The business environment changes Errors must be repaired New computers and equipment is added to the system The performance or reliability of the system may have to be improved A key problem for organisations is implementing and managing change to their existing software systems Importance of evolution Organisations have huge investments in their software systems - they are critical business assets To maintain the value of these assets to the business, they must be changed and updated The majority of the software budget in large companies is devoted to evolving existing software rather than developing new software Spiral model of evolution Program evolution dynamics Program evolution dynamics is the study of the processes of system change After major empirical studies, Lehman and Belady proposed that there were a number of ‘laws’ which applied to all systems as they evolved There are sensible observations rather than laws. They are applicable to large systems developed by large organisations. Perhaps less applicable in other cases Lehman’s laws Law Description Continuing change A program that is used in a real-world environment necessarily must change or become progressively less useful in that environment. Increasing complexity As an evolving program changes, its structure tends to become more complex.
    [Show full text]
  • Software Evolution of Legacy Systems a Case Study of Soft-Migration
    Software Evolution of Legacy Systems A Case Study of Soft-migration Andreas Furnweger,¨ Martin Auer and Stefan Biffl Vienna University of Technology, Inst. of Software Technology and Interactive Systems, Vienna, Austria Keywords: Software Evolution, Migration, Legacy Systems. Abstract: Software ages. It does so in relation to surrounding software components: as those are updated and modern- ized, static software becomes evermore outdated relative to them. Such legacy systems are either tried to be kept alive, or they are updated themselves, e.g., by re-factoring or porting—they evolve. Both approaches carry risks as well as maintenance cost profiles. In this paper, we give an overview of software evolution types and drivers; we outline costs and benefits of various evolution approaches; and we present tools and frameworks to facilitate so-called “soft” migration approaches. Finally, we describe a case study of an actual platform migration, along with pitfalls and lessons learned. This paper thus aims to give software practitioners—both resource-allocating managers and choice-weighing engineers—a general framework with which to tackle soft- ware evolution and a specific evolution case study in a frequently-encountered Java-based setup. 1 INTRODUCTION tainability. We look into different aspects of software maintenance and show that the classic meaning of Software development is still a fast-changing environ- maintenance as some final development phase after ment, driven by new and evolving hardware, oper- software delivery is outdated—instead, it is best seen ating systems, frameworks, programming languages, as an ongoing effort. We also discuss program porta- and user interfaces. While this seemingly constant bility with a specific focus on porting source code.
    [Show full text]
  • A Technique for Legacy System Re-Engineering
    International Journal of Management and Applied Science, ISSN: 2394-7926 Volume-2, Issue-12, Special Issue-1, Dec.-2016 INFORMATION SYSTEM INTEGRATION: A TECHNIQUE FOR LEGACY SYSTEM RE-ENGINEERING EMOKPAE OSATOHANMWEN Dept of Computer Engineering, Institute of Opencast Mining and Technology. Agbor Road Benin City, Nigeria. E-mail:[email protected] Abstract - Many organizations are still faced with the problems of converting applications written in legacy compilers such as COBOL, PASCAL ANS FORTRAN etc. into internet compliant applications. This has become necessary because most internet-based applications are written in C++, Java and Ms.Net. The objective of this paper is to show how information system integration can aid in the forward engineering of legacy system. Software re-engineering covers the examination and alteration of legacy system in order to rebuild it according to modem software engineering methods and technologies in a forward engineering process. Information system integration provides a means for both understanding and capturing about the application and its domain and re-developing the system based on change requirement. Information system integration helps to rebuild any legacy by adopting modern software engineering principles, methods and technologies, which allows systems to architecture engineers over the years have devises many modernization techniques. This paper evaluates the use of information system integration as a veritable technique for transformation of legacy system. Keywords - COBOL, PASCAL, FORTRANS, C++,Java Ms.Net etc I. INTRODUCTION streamlining business processes to the software used. There are five levels of integrating information Many organizations are still faced with the problem system, which include data, data management, of converting applications written in Legacy middleware, application and user interface (Bizer, compilers such as COBOL, Pascal and FORTRAN 2003).
    [Show full text]
  • The 2020 Guide to Legacy System Innovation
    The 2020 Guide to Legacy System Innovation Legacy Systems The Keys A New Freedom for 2 APIs 4 6 8 Meet the to Freedom Approach to the Future 21st Century Modernization. The 2020 Guide to Legacy System Innovation Legacy Systems Meet the 21st Century egacy systems running on mainframe computers are at the heart of our economy – and our society. L They are an essential part of our tax systems, our social services, and our public safety. They also run the stock market, our financial institutions, ATMs, transportation systems and utility grids. In fact, we use them all the time and likely don’t even know it. For state and local governments, these legacy systems are a mixed blessing. On the one hand, they have provided extraordinary reliability. They’ve proved themselves with successful track records of 20, 30, or APIs even 40 years. On the other hand, they are rigid, and some would even say fragile, closed and expensive to maintain. Making changes to a legacy system is costly, risky, and prone to failure. Also, legacy systems are by nature siloed systems that keep their data locked inside where it’s safe, but inaccessible. As one senior public sector IT executive put it, “I feel like my data is in jail.” For decades, agencies have been looking for freedom include day-to-day operations, staffing, responding to from legacy systems—a way off of their existing systems. pressure for innovation from elected officials, application Software AG offers a better, stronger alternative: the users and citizens themselves, and complying with Freedom for Legacy solution.
    [Show full text]
  • Impact Analysis of Legacy System Migration to the Cloud Environment: a Focused Study
    ISSN 2278-3091 Volume 9, No.1, January – February 2020 H. SeetharamaTantry et al., International Journal of Advanced Trends in Computer Science and Engineering, 9(1), January – February 2020, 134 – 141 International Journal of Advanced Trends in Computer Science and Engineering Available Online at http://www.warse.org/IJATCSE/static/pdf/file/ijatcse21912020.pdf https://doi.org/10.30534/ijatcse/2020/21912020 Impact Analysis of Legacy System Migration to the Cloud Environment: A Focused Study H. SeetharamaTantry1, Murulidhar N.N2., K. Chandrasekaran3 1 Department of Mathematics & Computational Sciences, National Institute of Technology Karnataka, Surathkal, India, e-mail: [email protected] 2 Department of Mathematics & Computational Sciences, National Institute of Technology Karnataka, Surathkal, India, e-mail: [email protected] 3 Department of Computer Science and Engineering, National Institute of Technology Karnataka, Surathkal, India, e-mail: [email protected] ABSTRACT creating, and recycling the software modules and platforms when expected maintenance follow-ups can never again Although “Legacy System” frameworks are frequently accomplish the ideal framework properties. The essential worked over numerous years by a blend of IT and business point of software modernization [1] is to decrease support specialists. They stay inflexible inside the authoritative cost and increase adaptability. The majority of these setting and business speculation made by practical frameworks were created years back and have kept on applications. Semantic Design provides highly automated advancing. New necessities have repeated changes on these tools and services to migrate legacy system to a new legacy system bringing about unstructured source code that platform. The proposed migration of the legacy software life is hard to keep up.
    [Show full text]
  • Enterprise Application Integration Using Service Oriented Architecture with Generic Pattern
    International Journal of Current Engineering and Technology E-ISSN 2277 – 4106, P-ISSN 2347 - 5161 ® ©2014 INPRESSCO , All Rights Reserved Available at http://inpressco.com/category/ijcet Research Article Enterprise Application Integration using Service Oriented Architecture with Generic Pattern Nilesh Vishwasrao PatilȦ*, M. C. KshirsagarȦ and P. C. JaypalȦ ȦVishwbharati Academy College of Engineering, Ahmednagar, Pune University Accepted 01 Oct 2014, Available online 10 Oct 2014, Vol.4, No.5 (Oct 2014) Abstract Nowadays the computer world is almost migrating from the tightly coupled architecture to loosely coupled architecture directly or indirectly. There are many intentions of Enterprise Application Integration in the organizations to achieved desired functions. The main objective of the Enterprise Application Integration is to implement integration layer between heterogeneous and/or homogeneous systems using Service Oriented Architecture in the direction of achieving the loosely coupled architecture. The integration architecture we have today is very limited and need to improve it as agile as possible. The reusability is not the new thing for software industry; it has been playing the crucial part in the software life cycle development process from last decade. Software industry has achieved the powerful accomplishment in throughput and preeminence because of reusability in software development process instead of creating same thing again and again. In this paper, we will discuss about Enterprise Application Integration using Service Oriented Architecture for achieving loosely coupled architecture directly or indirectly with the help of Web Services or Messaging Queue services. Keywords: SOA: Service Oriented Architecture, WS: Web services, WSDL: Web Service Description/Definition Language, W-SOA: Web Service Oriented Architecture, ESB: Enterprise Service Bus.
    [Show full text]
  • Addressing Software Related Issues on Legacy Systems – a Review
    INTERNATIONAL JOURNAL OF SCIENTIFIC & TECHNOLOGY RESEARCH VOLUME 9, ISSUE 03, MARCH 2020 ISSN 2277-8616 Addressing Software Related Issues On Legacy Systems – A Review Mubashir Ali, Shahzad Hussain, Mahmood Ashraf, Mahnoor Khalid Paracha Abstract: In current technological era, organizations and systems are moving towards automation. Software development always played a sensitive role and software maintenance continually bring challenges for developers. The problem of legacy systems is continuously travels with time. Technologically outdated software or computer systems are known as legacy systems. While software or system development, whatever technique or technology adopted by developers, current developed systems will be the legacy of future. Due to constant advancement in computing, legacy systems are not supporting the technologically updated software. Replacing or updating legacy systems and development of requirement oriented new systems as substitute brings many challenges like budget, time, data movement, training etc. Most of the small level and middle level companies are not able to face these challenges. This paper will conduct an extensive review to highlight the software related issues and their respective solution on legacy systems. The old legacy systems will be used with technologically updated software to fulfill the current requirements. This solution made the scope wider by reusing the available system, refining it with latest features, providing architecture of updated software installation and maintenance that reduce
    [Show full text]
  • Mitigating Cyber Security Risks in Legacy Process Control Systems
    Process Solutions White Paper Mitigating Cyber Security Risks in Legacy Process Control Systems Executive Summary The term “legacy process control system” has different connotations for different people. To many, it refers to proprietary systems from a past era. To others, the term may imply the new generation DCS that have been founded on open technology, or systems using no-longer-supported Microsoft operating systems. These systems have fundamentally different architectures and present different risks. The continuous evolution of the DCS enabled organizations to protect the investment in equipment and control strategies over long periods of time. However, interfacing decades- old controllers with current technology also makes this equipment indirectly vulnerable to attack. All these systems have one common denominator: they experience gaps in support. This makes them more vulnerable than contemporary systems. This white paper will discuss various techniques for protecting legacy systems, the problems surrounding these techniques, and new methods for analyzing security. Mitigating Cyber Security Risks in Legacy Process Control 2 Systems Table of Contents Introduction ..................................................................................................................................................................................................... 3 How to Prevent or Delay a System from Becoming a Legacy System ................................................................................................... 4 Prevention
    [Show full text]
  • Administering Evergreen Through the Command Line Documentation Interest Group Administering Evergreen Through the Command Line Documentation Interest Group
    Administering Evergreen through the Command Line Documentation Interest Group Administering Evergreen through the Command Line Documentation Interest Group Report errors in this documentation using Launchpad. Table of Contents I. Introduction ............................................................................................................................................................. 7 1. About This Documentation ............................................................................................................................... 9 2. About Evergreen ............................................................................................................................................ 10 II. Installing Evergreen ............................................................................................................................................... 11 3. System Requirements ..................................................................................................................................... 14 Server Minimum Requirements .................................................................................................................... 14 Web Client Requirements ........................................................................................................................... 14 Staff Client Requirements ........................................................................................................................... 14 4. Installing the Evergreen server ........................................................................................................................
    [Show full text]
  • Legacy Systems Management Needs Improvement
    TREASUR Y INSPECTOR GENERAL FOR TAX ADMINISTRATION Legacy Systems Management Needs Improvement August 19, 2020 Reference Number: 2020-20-044 [email protected] | www.treasury.gov/tigta | 202-622-6500 This report has cleared the Treasury Inspector General for Tax Administration disclosure review process and information determined to be restricted from public release has been redacted from this document. 1 To report fraud, waste, or abuse, please call us at 1-800-366-4484 HIGHLIGHTS: Legacy Systems Management Needs Improvement Final Audit Report issued on August 19, 2020 Reference Number 2020-20-044 Why TIGTA Did This Audit What TIGTA Found This audit was initiated to assess The IRS has not developed specific or long-term plans to address the IRS’s efforts to identify and updating, replacing, or retiring most of its legacy systems. Through replace its legacy systems. various initiatives, the IRS identified 45 systems for modernization or candidates for modernization and 34 systems for retirement. Impact on Taxpayers While various business units and functions have differing definitions Legacy systems are critical for of a legacy system, the IRS does not have an enterprise-wide many organizations because definition or a complete and accurate inventory of legacy systems. By they support key mission applying the Information Technology organization’s definition of a functionalities. However, they legacy system to the As-Built Architecture (ABA) as of April 29, 2020, can also carry significant risks, TIGTA determined that 288 (43 percent) of the 669 systems in the including increased cybersecurity IRS’s production environment had missing information that prevented threats and maintenance costs.
    [Show full text]
  • Microsoft Windows "Chicago"
    Microsoft Windows ‘‘Chicago’’ Reviewer’s Guide Beta-1 The information discussed in this guide is based on features and functionality present either in the Beta-1 release of Chicago, or planned for a future release. The discussion of Chicago herein, does not represent a commitment on the part of Microsoft for providing or shipping the features and functionality discussed in the final retail product offerings of Chicago. This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. Table of Contents INTRODUCTION ....................................................1 Welcome ..................................................................................1 Chicago Mission......................................................................1 Where We’ve Been.................................................................................................1 Where We Are Today.............................................................................................1 Where We’re Headed .............................................................................................2 How We Get There.................................................................................................3 A Quick Preview of Chicago’s Top Features ........................4 Even Easier.............................................................................................................4 Faster and More Powerful ......................................................................................5
    [Show full text]
  • Challenges and Success Factors in the Migration of Legacy Systems to Service Oriented Architecture (SOA)
    School of Technology Department of Computer Science Master Thesis Project 30p, Spring 2014 Challenges and success factors in the migration of legacy systems to Service Oriented Architecture (SOA) By Nataliya Vlizko Supervisor: Annabella Loconsole Examiner: Paul Davidsson Abstract Service-Oriented Architecture (SOA) provides a standards-based conceptual framework for flexible and adaptive systems and has become widely used in the recent years because of it. The number of legacy systems has already been migrated to this platform. As there are still many systems under consideration of such migration, we found it relevant to share the existing experience of SOA migration and highlight challenges that companies meet while adopting SOA. As not all of these migrations were successful, we also look into factors that have influence on the success of SOA projects. The research is based on two methods: a literature review and a survey. The results of the thesis include identification and quantitative analysis of the challenges and success factors of SOA projects. We also compare the survey results for different samples (based on the company industry, work area, size, and respondents experience with SOA and respondents job positions). In total, 13 SOA challenges and 18 SOA success factors were identified, analyzed and discussed in this thesis. Based on the survey results, there are three SOA challenges received the highest importance scores: “Communicating SOA Vision”, “Focus on business perspective, and not only IT perspective” and “SOA Governance”. The highest scored SOA success factor is “Business Process of Company”. While comparing different samples of the survey results, the most obvious differences are identified between the results received from people with development related job positions and people with business related job positions, and the results from companies of different sizes.
    [Show full text]