0%

Book Description

Refactoring has proven its value in a wide range of development projects—helping software professionals improve system designs, maintainability, extensibility, and performance. Now, for the first time, leading agile methodologist Scott Ambler and renowned consultant Pramodkumar Sadalage introduce powerful refactoring techniques specifically designed for database systems.

Ambler and Sadalage demonstrate how small changes to table structures, data, stored procedures, and triggers can significantly enhance virtually any database design—without changing semantics. You’ll learn how to evolve database schemas in step with source code—and become far more effective in projects relying on iterative, agile methodologies.

This comprehensive guide and reference helps you overcome the practical obstacles to refactoring real-world databases by covering every fundamental concept underlying database refactoring. Using start-to-finish examples, the authors walk you through refactoring simple standalone database applications as well as sophisticated multi-application scenarios. You’ll master every task involved in refactoring database schemas, and discover best practices for deploying refactorings in even the most complex production environments.

The second half of this book systematically covers five major categories of database refactorings. You’ll learn how to use refactoring to enhance database structure, data quality, and referential integrity; and how to refactor both architectures and methods. This book provides an extensive set of examples built with Oracle and Java and easily adaptable for other languages, such as C#, C++, or VB.NET, and other databases, such as DB2, SQL Server, MySQL, and Sybase.

Using this book’s techniques and examples, you can reduce waste, rework, risk, and cost—and build database systems capable of evolving smoothly, far into the future.

Table of Contents

  1. Title Page
  2. Copyright Page
  3. Table of Contents
  4. Praise for Refactoring Databases
  5. The Addison-Wesley Signature Series
  6. About the Authors
  7. Forewords
  8. Preface
  9. Acknowledgments
  10. Chapter 1: Evolutionary Database Development
  11. Chapter 2: Database Refactoring
  12. Chapter 3: The Process of Database Refactoring
  13. Chapter 4: Deploying into Production
  14. Chapter 5: Database Refactoring Strategies
  15. Chapter 6: Structural Refactorings
  16. Chapter 7: Data Quality Refactorings
  17. Chapter 8: Referential Integrity Refactorings
  18. Chapter 9: Architectural Refactorings
  19. Chapter 10: Method Refactorings
  20. Chapter 11: Transformations
  21. The UML Data Modeling Notation
  22. Glossary
  23. References and Recommended Reading
  24. Index