| | Copyright |
| | Preface |
| | | Audience |
| | | Organization and Content |
| | | Acknowledgments |
|
| | Chapter 1. The Legacy Crisis |
| | | Section 1.1. Modernization Challenges |
| | | Section 1.2. How Did We Get Here? |
| | | Section 1.3. The Legacy Crisis |
| | | Section 1.4. Evolving Legacy Systems |
| | | Section 1.5. Software Reengineering |
| | | Section 1.6. Incremental Development and Deployment |
| | | Section 1.7. Summary |
| | | Section 1.8. For Further Reading |
|
| | Chapter 2. The Beast |
| | | Section 2.1. The Retail Supply System |
| | | Section 2.2. Recent History |
| | | Section 2.3. Summary |
|
| | Chapter 3. Risk-Managed Modernization |
| | | Section 3.1. Risk Management |
| | | Section 3.2. Summary |
|
| | Chapter 4. Developing the Business Case |
| | | Section 4.1. Where Are We? |
| | | Section 4.2. Identify Stakeholders |
| | | Section 4.3. Understand Requirements |
| | | Section 4.4. RSS Requirements |
| | | Section 4.5. Create a Business Case |
| | | Section 4.6. The RSS Business Case |
| | | Section 4.7. Summary |
| | | Section 4.8. For Further Reading |
|
| | Chapter 5. Understanding the Legacy System |
| | | Section 5.1. Where Are We? |
| | | Section 5.2. The Context for Program Understanding: The Horseshoe Model |
| | | Section 5.3. Reconstruction |
| | | Section 5.4. Architecture Reconstruction |
| | | Section 5.5. Issues |
| | | Section 5.6. Summary |
| | | Section 5.7. For Further Reading |
|
| | Chapter 6. Architecture Representation |
| | | Section 6.1. Where Are We? |
| | | Section 6.2. Purpose of Architecture Representation |
| | | Section 6.3. Architecture Representation Requirements |
| | | Section 6.4. Architectural Views |
| | | Section 6.5. Additional Considerations |
| | | Section 6.6. Summary |
| | | Section 6.7. For Further Reading |
|
| | Chapter 7. Languages and Data Management |
| | | Section 7.1. Where Are We? |
| | | Section 7.2. COBOL |
| | | Section 7.3. Java |
| | | Section 7.4. Data Repositories |
| | | Section 7.5. Data Representations for Information Exchange |
| | | Section 7.6. Summary |
|
| | Chapter 8. Transaction Technology |
| | | Section 8.1. Where Are We? |
| | | Section 8.2. Distributed Communication |
| | | Section 8.3. Transactions |
| | | Section 8.4. Distributed Transactional Operations |
| | | Section 8.5. Comparison of Transactional Models |
| | | Section 8.6. Standards |
| | | Section 8.7. Products |
| | | Section 8.8. Summary |
|
| | Chapter 9. Software Infrfastructure |
| | | Section 9.1. Where Are We? |
| | | Section 9.2. Enterprise JavaBeans |
| | | Section 9.3. Message-Oriented Middleware |
| | | Section 9.4. Java 2 Enterprise Edition |
| | | Section 9.5. XML Messaging |
| | | Section 9.6. Summary |
|
| | Chapter 10. Maintaining Transactional Context |
| | | Section 10.1. Where Are We? |
| | | Section 10.2. Model Problem: Retail Supply System |
| | | Section 10.3. Contingency Planning |
| | | Section 10.4. Definition of the Model Problem |
| | | Section 10.5. Solution of the Model Problem |
| | | Section 10.6. Evaluation |
| | | Section 10.7. Summary |
|
| | Chapter 11. Business Object Integration |
| | | Section 11.1. Where Are We? |
| | | Section 11.2. A Tale of Two Architectures |
| | | Section 11.3. Quality Attributes |
| | | Section 11.4. Summary |
|
| | Chapter 12. Target Architecture |
| | | Section 12.1. Where Are We? |
| | | Section 12.2. Forces Affecting the Architecture |
| | | Section 12.3. Overview of the Architecture |
| | | Section 12.4. Architectural Patterns |
| | | Section 12.5. Summary |
|
| | Chapter 13. Architecture Transformation |
| | | Section 13.1. Where Are We? |
| | | Section 13.2. Data Adapters |
| | | Section 13.3. Logic Adapters |
| | | Section 13.4. Architecture Transformation Strategy |
| | | Section 13.5. Componentization Trail Maps |
| | | Section 13.6. Use of Adapters in RSS |
| | | Section 13.7. Summary |
|
| | Chapter 14. System Preparation |
| | | Section 14.1. Where Are We? |
| | | Section 14.2. Analysis of Alternatives |
| | | Section 14.3. Summary |
|
| | Chapter 15. Code and Data Migration |
| | | Section 15.1. Where Are We? |
| | | Section 15.2. Structural Analysis |
| | | Section 15.3. Code Migration Plan |
| | | Section 15.4. Data Migration Plan |
| | | Section 15.5. Summary |
|
| | Chapter 16. Integrated Plan |
| | | Section 16.1. Where Are We? |
| | | Section 16.2. Reconciliation Objectives |
| | | Section 16.3. Reconciliation Plan |
| | | Section 16.4. Stakeholder Priorities |
| | | Section 16.5. Stakeholder Ideal Profiles |
| | | Section 16.6. Stakeholder Consensus Meetings |
| | | Section 16.7. Code-Migration Prioritization Results |
| | | Section 16.8. Summary |
|
| | Chapter 17. Resource Estimation |
| | | Section 17.1. Where Are We? |
| | | Section 17.2. Cost Estimation Overview |
| | | Section 17.3. Costing an Increment |
| | | Section 17.4. Estimation of Cost and Duration |
| | | Section 17.5. Costing the Preparation Work |
| | | Section 17.6. Costing the Final Database Migration |
| | | Section 17.7. Data Collection |
| | | Section 17.8. Summary |
| | | Section 17.9. For Further Reading |
|
| | Chapter 18. Recommendations |
| | | Section 18.1. Find a Better Way |
| | | Section 18.2. Use Commercial Components |
| | | Section 18.3. Manage Complexity |
| | | Section 18.4. Develop and Deploy Incrementally |
| | | Section 18.5. Software Engineering Skills |
| | | Section 18.6. Component-Centric Approach |
| | | Section 18.7. Architecture-Centric Approach |
| | | Section 18.8. High Levels of Concurrent Development |
| | | Section 18.9. Continuous Integration |
| | | Section 18.10. Risk-Managed Development |
| | | Section 18.11. Final Word |
|
| | References |
| | Acronyms |