リファクタリングとは、プログラムの外部から見た動作を変えずに
ソースコードの内部構造を整理するためのテクニックです。
リファクタリングとユニットテストによって、アジャイルのような
ユーザ要件の変化に合わせて段階的に設計・実装を行うスタイルの開発が可能になりました。
しかし、本書の前書きにあるとおり、リファクタリングが有名になっても
データベースに対してリファクタリング手法を適用することは一般的ではありませんでした。
稼働中のデータベース内に存在する大量の「データ」を失う訳にはいかないからです。
本書では、データベースのリファクタリングをデータの移行手順まで踏まえた上で紹介しています。
本書を読み進め、データベースリファクタリングのパターンを理解していくことで
データベース開発においても、アジャイルさを得ることができるかも知れません。
ちなみに、本家リファクタリングのプラクティスがEclipse等で自動化されているように、
本書で紹介されているデータベースリファクタリングもLiquibaseというツールで自動化されています。
実際に、本書のプラクティスを適用する際には、このようなツールを探してみるのも一考です。