Most companies rely on aging software built before the emergence of the Internet: "legacy" systems that embody core business knowledge which is difficult to enhance and impossible to replicate. This book brings together breakthrough strategies and objective guidance for leveraging those legacy systems as you build the flexible, high-value, component-based architectures you need to stay competitive. Leading IT architecture consultant William Ulrich reviews the role of legacy systems and the challenges they now present. He identifies several key "myths" associated with legacy technology, showing how these myths prevent companies from maximizing the value of IT. Next, using specific examples, he outlines cost-effective migration paths from legacy systems to component-based architectures based on J2EE, .NET, and/or Web Services. For all IT professionals and business managers concerned with maximizing the business value of technology, including analysts, architecture and planning teams, project managers, IT directors, CIOs, and CFOs.
I. LEGACY TRANSFORMATION: BACKGROUND AND STRATEGIES.1. The Modern Enterprise and Legacy Architectures.
The Computer of the Future Meets Reality. Information Technology Is Your Business. Public Sector Recognizes Critical Value of IT. IT Can Disable an Organization. Rapidly Shifting Business and Technological Requirements. E-Business Meets Aging Hierarchies and Infrastructures. No Easy Answers to Difficult Legacy Challenge. Business Agility and Legacy Systems. Redesigning Business Processes-Enabling the Agile Enterprise. The Evolution of Legacy Computing Architectures. The Business Case for Legacy Architecture Transformation. Crafting a Strategy to Address the Legacy Architecture Challenge. Taking on the Legacy Challenge.2. Defining the Legacy Architecture Challenge.
Legacy Architectures and the Seven Common Myths. Evolving Hardware Architectures. A Brief History of Software Architectures. Embedded and Non-IT Systems. Legacy Application Architectures-An Archaeological Dig. Packaged Applications-Falling Short of Expectations. Application Architectures-A Myriad of Challenges. Data Architecture Challenges. Systems Management, Maintenance, and Outsourcing. Application Architecture's Impact on Business Initiatives. Historical Attempts to Address Legacy Architecture Issues. Addressing the Legacy Architecture Challenge.3. The Changing Face of Information Technology.
The E-Business Movement-Driving New Technology Deployment. The Information Architecture Framework. Data Architecture-Defining the Essence of the Enterprise. Functional Architecture-Delivering Information Requirements. Business Processes Modeling. UML-The Unified Modeling Language. Modern Technical Architectures. Object-Oriented Analysis, Design, and Development Paradigms. Component-Based Development. Modern Computing Languages. Open Systems-Collaborative Software Development in Action. Integrated Development Environments (IDEs). Agile Methodologies-Balancing Rigor and Flexibility. Collaborative Development. Web Services and Standards. Information Portals-Business-Driven Information Gateways. Distributed Transactional Architecture Platforms. Integration Technology and Interim Architectures. Beyond the Immediate Future. Emerging Disciplines and Legacy Transformation.4. Legacy Architecture Management and Transformation.
Strategies. The Legacy Triangle-Management, Integration, and Transformation. Legacy Architecture Terminology. E-Business Initiatives Drive Transformation Requirements. Past IT Project Failures Shape Strategy. Holistic Thinking Is Essential. Risk Management Requires Phased Deployment. Transformation Strategy-Putting a Framework in Place. Transformation Scenarios-Project Planning Templates. Application Management Requirements and Scenario Overview. Architecture and Application Documentation Scenarios. Application Improvement Scenarios. Data Integrity Analysis and Improvement Scenarios. EAI: Front-end/Back-End Integration Scenario. Language and Platform Migration Scenarios. User Presentation Migration Scenario. Data Migration and Consolidation Scenarios. Application Consolidation-Reengineering in Place. Package Assessment and Implementation. Component-Based Architecture Migration. Transformation Strategy. Summary.
II. INFRASTRUCTURE SETUP AND PLANNING.5. Creating a Legacy Transformation Infrastructure.
Business-IT Alignment Requirements. Looking Past the IT Centralization/Decentralization Argument. IT Realignment-Forming Virtual IT Communities. The Architecture Team-Synchronizing Enterprise IT Initiatives. Creating a Culture of Reuse. The Sponsor, the Champion, and the Evangelist. Role of Third Parties in a Transformation Strategy. Agile Methodologies and Collaborative Project Management. Transformation Methodology. The Transformation Repository. Metrics and Measurement-A Transformation Yardstick. Software Tools and Technology Center of Excellence. Legacy Transformation Skill Center-Training, Education, and Support. Launching a Transformation Awareness Initiative. Transformation Infrastructure-An Essential Foundation.6. Planning and Justifying a Legacy Transformation Project.
The Transformation ROI Dilemma. Transformation Introduces New Options and Opportunities. ROI Challenges: Cost of Ownership and Shifting Business Priorities. Determining ROI-A Multiphased Process. Motivating Factors in Transformation Projects-Defining Value? Collaborative Project Planning-Team Formation. Collaborative Project Planning-Project Formation. Transformation Project Augmentation and Dual Positioning. Learning from Project Failures. Justifying Transformation Infrastructure Funding. Determining Legacy Application Asset Value. Preliminary Project Planning-Transformation Option Selection. Building the Project Plan. Selling Legacy Transformation-Leveraging Legacy Assets.7. Legacy Transformation Technology.
Transformation Technology Concepts. Business Modeling Technology. Analysis and Design Modeling Tools. The Environmental Analyzer. The Open Repository. Source Program Analyzers. Application Improvement Tools. Data Definition Analysis and Improvement. Presentation-Layer Extraction and Migration. Reverse Engineering and Reengineering Technology. Validation, Verification, and Testing Technology. Maintenance and Transformation Workbenches. Physical Data Analysis and Migration Technology. EAI Technology. Project Management and Administration Technology. Creating a Software Tool Strategy. Software Tool Justification, Procurement, and Integration.8. Enterprise and Project-Level Assessments.
Enterprise versus Project-Level Assessments. The Role of Metrics in Assessment Initiatives. Enterprise Assessments-Examining the Big Picture. Strategic Business Planning and Target Architecture Definition. Current Systems Inventory and Legacy Architecture Analysis. Current-to-Target Architecture Mapping. Transformation Strategy Definition. Transformation Projects-The Assessment Phase. The Technical Assessment. The Architectural Assessment. The Functional Assessment Overview. Functional Assessment-Entity Type Analysis. Functional Assessment-Function Hierarchy Analysis. Finalizing the Project Implementation Plan.
III. TRANSFORMATION IMPLEMENTATION.9. Incorporating EAI, B2Bi, and BPI into a Comprehensive Integration Strategy.
Integration-Past, Present, and Future. Middleware Technology Overview. ERP Middleware Technology. B2Bi Technology. BPI and BPA Technology. Integration Solution Architecture. Noninvasive Integration Deployment Options. The Role of Legacy Assessments in Noninvasive Integration Initiatives. A Multidimensional Integration and Transformation Strategy. Documenting, Managing, and Uncoupling Integration Implementations.10. Structuring, Rationalizing, and Upgrading Legacy Applications and Data Structures.
Incorporating Upgrade Options into Business-Driven Projects. Application Staging, Quality Reviews, and Validation Testing. Language-Level Upgrade or Conversion and Application Rehosting. Program Structuring and Design Improvement. Data Definition Challenges and Options. Modularization. User Presentation Migration Scenario. Physical Data Mining, Cleanup, and Integration. Performance Improvement.11. Logical Data and Business Rule Capture, Redesign, and Reuse.
Architecture Transformation Objectives. Leveraging Assessment and Stabilization Deliverables. Data Architecture Transformation. Legacy Data Definition Capture and Abstraction. Current-to-Target Mapping and Reconciliation. Data Architecture Refinement and Redeployment. Quick and Dirty Data Migration Projects. Object Derivation: Issues and Options. Data Warehouse Considerations. Data Architecture Redesign: A Strategic Opportunity. Business Rule Transformation. Business Rule Definition. Business Rule Categorization. Business Rule Extraction-Setup Requirements. Reverse Requirements Tracing and Process Flow Analysis. Business Rule Identification and Logging. Business Rule Capture and Redundancy Identification. Business Rule: Current-to-Target Mapping, Reuse, and Reconciliation. Architecture Transformation and Reconstruction.12. Transformation Project Strategies and Case Studies.
Application Consolidation Project. Multi-Application Integration: Rebuilding an HR Application. Package Assessment and Implementation. Application Rehosting Project. EAI Case Study. Logical Data Redesign Project. Component-Based Migration. Ending a Pattern of Failure Requires Changing Behavior.Appendix: Sample Tool Vendor List.
Section 1: Software Tools by Tool Category. Section 2: Software Tools by Vendor.Index.
This book is about legacy information architectures and the daunting challenges they pose, along with strategies for tackling these problems. Commercial application systems and data architectures, running in production computing environments, are the lifeblood of the modern enterprise. These systems manage business and government operations around the globe. Any organization that believes it can address critical information requirements by replacing, wrapping, or ignoring legacy information assets is headed for a train wreck of monumental proportions.
Legacy application systems are defined as any production-enabled software, regardless of the platform it runs on, language it is written in, or length of time it has been in production. Legacy data structures are defined as the enterprise data that is accessed and modified by these production application systems. Collectively, these systems and data structures form critical information assets that managers and analysts must strive to understand, modify, consolidate, migrate, or otherwise transform to meet critical business requirements.
Despite the vast changes in information technology (IT) in recent years, legacy information challenges have remained. Improvements in business modeling, analysis, design and development, component reuse, and Web-enabled architectures hold great promise. Yet the value of these advancements will be minimal if management does not address legacy architectures under a cohesive, parallel strategy.
Worldwide, there are well over 200 billion lines of software that are fragmented, redundantly defined, hard to decipher, and highly inflexible. These systems, which have been functioning for decades, have survived revolutions in software, hardware, and the Internet. Now, with IT on the cusp of a new era in which handcrafted coding techniques are being supplanted by component-based development and Web Services, organizations run the risk of being mired down by a mountain of legacy code.
Efforts to address the legacy challenge have had limited impact. Over the past few years, stovepipe applications and data structures have been the target of piecemeal integration. While offering some near-term value, middleware and related wrapper-based solutions limit an enterprise's ability to leverage, reuse, and fully incorporate critical business rules and data locked inside of legacy architectures.
Countless companies are struggling to incorporate back-end functionality into front-end applications. Insurance companies would like to Web-enable claims processing environments. Banks would like to fully deploy online banking solutions. Telecommunications firms need to consolidate customer applications to help prepare for entering new markets. Energy companies, health care providers, retailers, and a wealth of other industry sectors must deliver immediate and comprehensive solutions to customers faster and more effectively. Even government agencies have entered the new e-business sector.
Essential legacy functionality and data can be identified, extracted, and reused under emerging information architectures to meet customer and user demands. This will only occur, however, if organizations take a proactive approach to tackling the legacy challenge, and this requires a legacy architecture transformation strategy. This book delivers such a strategy along with practical planning and implementation advice to those haunted by difficult legacy challenges and seeking quantifiable solutions.
A variety of readers will find this book of value. Directors, vice presidents, and business managers should read chapters 1 through 4 to gain an understanding of legacy transformation challenges, strategies, and alternatives they may not have known existed. For years, IT has been positioning all-or-nothing rewrite or ERP replacement options as the only way to deal with major information retooling requirements. Senior management should be aware that transformation can lower the costs and risks of planning, development, package selection and deployment, integration, and related information initiatives.
Analysts, project managers, architects, and planning teams are provided with a variety of high-level approaches and detailed planning and implementation techniques needed to document, retool, and transition legacy information architectures. Development teams in particular need to grow a deeper understanding of the role of legacy environments within development initiatives.
Consultants can use this book as a guide to planning and implementing projects involving legacy applications. Outsourcing and insourcing firms can also apply legacy understanding and enhancement guidelines in order to streamline and shrink the scope of effort related to their outsourcing contracts. In fact, anyone tasked with the ongoing management of legacy portfolios will want to carefully review and consider the techniques detailed in Part II and Part III of this book.
Additionally, managers and directors can use this book to craft strategies and detailed plans for project teams on major initiatives involving legacy systems. Analysts can then utilize detailed implementation guidelines on integration, migration, package implementation, CRM, and other major projects.
Finally, anyone interested in learning why corporate and government computing environments are such a challenge to manage, enhance, retool, or migrate should review the first section of this book. This can include investors, business partners, customers, business personnel, and senior executives who have a vested interest in the success and continuity of any corporate or government entities.
This book is broken into three parts and an appendix. Part I, "Legacy Transformation: Background and Strategies," contains legacy background information and strategies. Part II, "Infrastructure Setup and Planning," provides insights into establishing a legacy transformation infrastructure and project plans, while Part III, "Transformation Implementation," provides detailed transformation deployment options for implementation teams. The Appendix provides a list of various software products and vendors that can be used to implement transformation projects.
Part I is comprised of chapters 1 through 4 and provides an overview of legacy transformation challenges and strategies. Chapter 1 introduces the origin and evolution of computers along with the software that directs the computing activities. It also exposes the chasm between what people think computers are capable of and how most computers actually function.
Chapter 2 defines the issues organizations face when trying to understand and change the core applications that manage day-to-day business operations. This chapter helps place the significance and scope of the legacy challenge in perspective and refutes the belief that legacy applications can be ignored, easily replaced, or just wrapped in middleware. Case histories demonstrate that failed information initiatives can be traced directly back to the inability of an enterprise to effectively manage change requirements within legacy computing environments.
Chapter 3 discusses new trends in information technology, including the Internet, Java, Web Services, and a host of other emerging disciplines. This modern world of perfection runs in sharp contrast to the world of legacy information architectures. Chapter 4 overviews various strategies for managing, integrating, and transforming legacy application environments. This chapter introduces the concept of business-driven transformation, discusses transformation as a risk management tool, outlines a transformation framework, and provides project planning templates. It also provides an overview of the transformation approaches and techniques that are the foundation for the remaining sections of this book.
Part II includes chapters 5 through 8 and establishes the basis for planning and launching transformation initiatives. Chapter 5 outlines the business and information management infrastructure needed to deliver legacy transformation solutions. This chapter delves into the infrastructure issues responsible for creating the current legacy architecture dilemma and provides organizational guidelines for correcting these issues and avoiding the reintroduction of these problems in the future. Chapter 5 also outlines reuse concepts, project roles and responsibilities, and describes the role of methodologies, repositories, metrics, and software tool options.
Chapter 6 discusses how to plan and justify legacy transformation projects. This includes issues such as total cost of ownership, techniques for determining return on investment (ROI), and ways to redefine the concept of value in an ROI effort. In addition, this chapter discusses collaborative planning concepts, project and team formation, the concept of dual positioning transformation ROI, how to learn from our failures, infrastructure justification, and project ROI.
Chapter 7 introduces various technologies that an organization can use to plan, analyze, execute, and validate a transformation project. This includes an overview of relevant tool categories. Also discussed are the pros and cons of using certain tools for various transformation tasks and tool identification and procurement strategies. Chapter 8 details the tasks involved in performing the enterprise and project-level assessment. The enterprise assessment forms the basis for creating a transformation strategy or deploying a large-scale transformation initiative--such as a cross-functional package implementation. The project-level assessment begins the detailed analysis required to launch and finalize a transformation implementation project.
Part III, which includes chapters 9 through 12, details implementation approaches and techniques commonly found in a transformation project. Chapter 9 provides a transformation-oriented perspective on various enterprise application, business-to-business, and business process integration scenarios. This includes outlining integration options and approaches that can be pursued over the interim and in conjunction with strategic transformation projects. Chapter 10 provides detailed approaches and techniques for improving application source code and data structures without the need to redesign those structures. These discussions are provided within a context of providing near-term value to the users and beneficiaries of those systems and data structures.
Chapter 11 delves into data and business rule transformation options and techniques. This chapter provides a comprehensive discussion of legacy architecture reverse engineering, reengineering, and reconstruction. This discussion incorporates current-to-target mapping, data and business rule extraction, reuse in target architectures, and related topics. Chapter 12 ties together the strategies, approaches, and techniques presented in previous chapters under case-study-oriented scenarios. These scenarios include application consolidation, multisystem integration, application package selection and deployment, EAI deployment, rehosting, data migration, and component migration.
Finally, the Appendix provides a list of vendors that offer software tools that can help leverage transformation initiatives. Products are organized by the tool categories they support as well as by the vendors that offer those tools.