Behavior Driven Database Design
In Behavior Driven Development (BDD), you write behavioral tests of an application just-in-time, one test at a time to express its design. You can take a BDD approach to a database schema in the same way. Scott Ambler presents the Behavior Driven Database Design (BDDD) technique. He explains its relationship to Agile Model Driven Development (AMDD) and how it fits into agile software development in general. Find out how to refactor a database by applying simple changes that improve the design without changing its semantics. Create a comprehensive regression test suite to validate your database on a regular basis, ideally whenever a change is made to the database schema itself or when the database is accessed in a new way. Go even further and implement continuous database integration where the database is automatically rebuilt and retested whenever its schema changes.