|
Navigation Mailing Lists |
Main /
EvolutionaryDatabaseDesignHere are some materials from the talk: January 15th 2008 - 6:30pm Pramod will present material from the 2007 Jolt Productivity Award winning book "Refactoring Databases : Evolutionary Database Design" on how to go about doing evolutionary database development, how to apply all the agile practices to database development and will talk about the following techniques: Database refactoring: Evolve an existing database schema a small bit at a time to improve the quality of its design without changing its semantics. Continuous Integration: Why not test you database creation and migration scripts as part of Continuous Integration and apply the same rigor to the database artifacts that you apply to the application code. You should fail the build when the developer/dba makes a mistake doing a database change Evolutionary data modeling: Model the data aspects of a system iteratively and incrementally, just like all other aspects of a system, to ensure that the database schema evolves in step with the application code. Database regression testing: Ensure that the database schema actually works. Configuration management of database assets: Your data models, database tests, test data, and so on are important project artifacts which should be managed just like any other artifact. Database Schema Deployment: Ensure that the scripts used to build development environments are the exact same as the used in QA, UAT and production. Ensure deployment to production is not a surprise and not a project in itself. Location: PROS |