Related products:
Agile Estimating and Planning (Robert C. Martin Series)
Ajax in Action
|
Database Design
Refactoring Databases : Evolutionary Database Design (Addison Wesley Signature Series)
Format: Hardcover
Author: Scott W. Ambler
ReleaseDate: 03 March, 2006
Publisher: Addison-Wesley Professional
Rating:
Pity that this book is needed
Ambler and Sadalage did a very good job with this book. First let me say that Messrs. The database design advice is generally good, reflecting good practices: Make sure that your columns are in the right table, for example. Rename columns and views to make them more meaningful. Divide and combine tables so that they more closely represent their meaning in the application.
Not only that, they are providing a valuable service to those people who followed their other advice to develop systems as quickly as possible, with little regard for thinking them through in advance. Clearly if you have a database that you created in the agile environment, it is valuable to have this advice on how to fix (er, refactor) it.
But the point is made at the beginning of the book that, if the database is already in production with numerous applications using it, this will be very hard. It will be time-consuming. "Typical transition periods last for several quarters, if not years. " (Page 34)
One then has to ask the question: Why not, instead of waiting until your database is a mess, requiring time-consuming changes, don't you buy this book before you start, and take some of refactoring time to think about the design, applying these principles before you create the database? Perhaps you can then skip the refactoring altogether.
Answers tough questions
This book describes solutions for those issues I encountered. I've done a lot of refactoring and restructuring programs and always had to deal with the problems involved with changing the layout of persistent storage. It explores some tough questions, like how to refactor a database used by multiple applications, only one of which is currently undergoing modification. I recommend it to anyone involved with the database side of systems, whether an administrator or a programmer who uses one. .
The missing tool
Many people have simply written off the database as this great monolithic giant that can not be moved. As any Agile consultant will attest to, DBA's are the last great hold out when it comes to Agile adoption.
Pramod and Scott show us that it is possible. The database is just another piece of the puzzle. This book walks you through just about every obstacle you could encounter as a DBA trying to improve what seems like an inflexible monolith.
This book does a fantastic job of being very pragmatic in their approach to the improvements that will be made. Several instances describe processes that may take over a year to implement in order to account for all aspects involved. You can tell that both Pramod and Scott are speaking from experience.
|
|