Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.


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.

Subscriber Reviews

Average Rating: 3.25 out of 5 rating Based on 4 Ratings

"Invaluable Addition to Software Literature " - by Colin Kershaw on 20-NOV-2012
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
Like Martin Fowler et al's groundbreaking "Refactoring: Improving the Design of Existing Code", Sadalage and Ambler's catalogue of database refactorings is invaluable.

Many of the database refactorings seem basic, just like some in Fowler's book on code refactoring ("Rename Variable? Really, I need a book to tell me how to do that?").  However, the rigorous documentation of these database refactorings means you won't overlook important considerations when making seemingly simple changes. For example, Introduce Default Value reminds you that some applications may assume that a Null value carries meaning.

Following the patterns in this book means you won't be simply changing the database, but refactoring it - keeping it in a usable state, even in multi-application database environments.

Report as Inappropriate

Table of Contents