Jump to ratings and reviews
Rate this book

Migrating Legacy Systems: Gateways, interfaces and the incremental approach

Rate this book
Many businesses are burdened by legacy ISs--existing systems that contain valuable data but lack the power or the agility to meet current organizational requirements. Since such systems are by nature resistant to modification, the only way an enterprise can gain full use of the data within one is to move to a completely new IS--ideally, one that won't become a legacy itself in a few years. This book discusses the challenges and provides a framework for a workable system migration, based on incremental modifications that allow the manager to control cost and risk. Focusing on data migration, the authors outline key techniques for transforming a legacy IS into a flexible system that meets current needs and is adaptable to unpredictable future changes. Because designing, developing, testing, and deploying a new system all at once would be extremely risky, the authors advocate a step-by-step strategy that migrates the system to a decomposable target environment while the current IS remains completely operational. Their flexible 11-step method allows any IS to be migrated incrementally, using gateways to access data reliably and accurately without any downtime.

Because each company's IS is as unique as its business strategy, the authors focus on the choices and pitfalls that may be encountered in an IS migration. Drawing on over 45 years of collective IS experience, they illustrate their work with two complete case studies of migration projects they worked on themselves. Their versatile solution is effective for any migration, including those to a client/server environment using relational DBMSs and 4GLs.

Features a special survey of migration tools by Jennifer Schmidt.

Contents

Foreword, by Blayne Maring
Preface

1. Problems and possibilities of legacy IS migration
2. Migrating decomposable legacy ISs
3. Case study 1: Migrating Money Central´s Cash Management System
4. Migrating semidecomposable legacy ISs
5. Case study 2: Migrating Global telecom´s Telephone Provisioning System
6. Migrating nondecomposable legacy Iss
7. Migrating legacy ISs: A general case
8. Distributed computing and incremental migration
9. Toll wish list
10. A practical implementation with migration tools (by Jennifer Schmidt)

Glossary
References
Index
About the authors

210 pages, Paperback

First published March 1, 1995

16 people want to read

About the author

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
0 (0%)
4 stars
0 (0%)
3 stars
4 (80%)
2 stars
1 (20%)
1 star
0 (0%)
Displaying 1 of 1 review
Profile Image for Alejandro Teruel.
1,320 reviews252 followers
March 26, 2015
How useful can a twenty year old book on software migration be? In the forward to the book, Blayne Maring wrote:
For the last five years, GTE Telephone Operations has been engaged in a massive effort to migrate from a legacy application environment that is characterized by hundreds of millions of lines of mainframe COBOL code and many terabytes of data
and the authors claimed that
Over the past ten years, there has been considerable discussion and publication on legacy IS migration. We have heard many claims that such migration are being planned or are in progress. However, we have discovered only a handful of successful legacy IS migrations, worldwide.
Fast forward to chapter 2 of F. Paternò´s Migratory Interactive Applications for Ubiquitous Applications (Springer 2011), where Fabio Paternò, Carmen Santoro and Rasmus Olsen state that:
...one of the first works related to migration was the one of Bharat and Cardelli (1995), who put forward an initial solution for migrating entire applications (but without proving support for the user interface part), and which revealed to be problematic due to different execution environments and resources available in the involved devices.
This would qualify this book as an early, pioneering effort -which I find hard to believe. Brodie and Stonebraker were mainly concerned with migrating information systems (IS) to take advantage of graphical user interfaces on PCs, relational databases and distributed client/server platforms, a world in which middleware like CORBA and OLE/COM were barely getting started. The book was published just before the rush to migrate legacy systems to the web which culminated in the dotcom bubble and five years before Y2K provided further stimulus for updating and migrating legacy code. Nowadays the impetus is provided mainly by the rush to migrate legacy systems towards enterprise-wide systems such as SAP, service-oriented architectures, wireless environments and the cloud (see for example Abdelzahir , Dayang N. A. Jawawi, Imran Ghanii and Abubakar Elsafi´s A Comparative Evaluation of State-of-the-Art Cloud Migration Optimization Approaches in Advances in Intelligent Systems and Computing, Volume 287, 2014 or Marco Torchiano, Massimiliano Di Penta, Filippo Ricca , Andrea De Lucia and Filippo Lanubile´s 2011 paper on Software Migration Projects in Italian Industry: Preliminary Results from a State of the Practice Survey).

Brodie and Stonebraker sensibly propose an evolutionary, incremental approach to migration which they, whimsically, call the Chicken Little approach. Each increment consists of up to eleven steps, some of which can be carried out in parallel:
1. Analyze the legacy IS.
2. Decompose the legacy IS structure.
3. Design the target interfaces.
4. Design the target applications.
5. Design the target database.
6. Install the target environment.
7. Create and install the application gateway.
8. Migrate the legacy database.
9. Migrate the legacy applications.
10. Migrate the legacy interfaces.
11. Cut over to the target IS.
It is clear now, that the authors are migrating to the now classic three tier IS architectures. They identify four kinds of legacy systems, those which can be easily decomposed into subsystems or applications which can be migrated separately, semi-decomposable legacy systems (in which applications and database services are tightly coupled), nondecomposable legacy systems and hybrid systems (in which some subsystems may be decomposable, while others are semi-decomposable or non-composable).

They pay particular attention, as is to be expected from Stonebraker´s presence, to database migration and rely on using both forward and backward database gateways. It is worth pointing out that migrating data and particularly their schemas remains a key problem. In a foward database gateway, the legacy system is partially rewritten in order to fetch some of its required data from the new target system; in a backwards database gateway, the target system fetches some of the data it requires from the legacy system. Note that nowadays the backwards gateway would probably be written in terms of an architecture based on mediators and wrappers. The article also mentions, in passing, 4GLs as target application languages, a tendency which petered out towards the end of the nineties; nowadays object-oriented languages such as Java are more likely to be the target application language.

The authors also dedicate a chapter to the technological options available at the time for implementing client-server architectures: Object Management Group´s CORBA, Microsoft´s OLE/COM (superseded by DCOM), distributed databases and transaction monitors such as AT&T´s Tuxedo (now owned by Oracle). Since then the field of middleware has mushroomed and one would have to at least mention SOAP and XML based technologies.

The book includes some interesting set of migration tool categories (gateways, data and procedural analyzers and specifications extractors, testing tools) whereas others (configuration management tools) have become software engineering staples in any medium-sized or large project.

I would still recommend the still sobering two case studies included as chapters 3 and 5 and part of chapter 5 which are key reminders of the size and effort required to migrate large legacy systems in real life.

Finally, additional topics such as migration assessment, architecture and planning, proof of concept, process migration (in addition to data, application and interface migration), risk management, possible metrics, and optimization and testing, have appeared, some of which are, at best, skimpily addressed in this book. According to Wikipedia, new approaches to software migration and modernization include Architecture Driven Modernization, WMU (Warrants, Maintenance, Upgrade) -a model for choosing appropriate maintenance strategies based on aspired customer satisfaction level and their effects on it-, SABA (1999), a more intensive use of Model Driven Engineering and Renaissance.

So, in a nutshell, is this book still useful? Curiously there is relatively little book literature on this subject and much of what exists on the web is vendor-specific. Browsing through Amazon, only a few titles pop up which seem worth looking into, such as Michael Feather´s now classic Working Effectively with Legacy Code (2004), Robert C. Seacord, Daniel Plakosh, Grace A. Lewis´s old Modernizing Legacy Systems: Software Technologies, Engineering Processes, and Business Practices (2003), Christian Wagner´s Model-Driven Software Migration: A Methodology: Reengineering, Recovery and Modernization of Legacy Systems (2014), William M. Ulrich and Philip Newcomb´s Information Systems Transformation: Architecture-Driven Modernization Case Studies (2010) or Franck Barbier and Jean-Luc Recoussine´s outrageously priced COBOL Software Modernization (2015). Brodie and Stonebraker´s book is at least honest and upfront about the difficulties involved in migrating large applications, the approach is quite common sensical and easy to read, so, in my opinion, if you come across this book, it is still worth skimming through as an introduction to this topic, if you are not distracted by references to old software environments and tools.
Displaying 1 of 1 review

Can't find what you're looking for?

Get help and learn more about the design.