La estructura de base de datos es más probable que sea una dependencia de muchas partes de su código, y los cambios de esquema tendrá efectos en cascada. Algo así como hacer cambios en la interfaz en una clase que muchas clases extienden. Así que tenga cuidado con los cambios de esquema.
La metodología Ágil no es diferente de otras metodologías, ya que es en su beneficio diseñar la base de datos por adelantado tanto como sea posible, y debería intentar cambiarla con menos frecuencia que el código. No quiere decir que nunca puedas cambiarlo, pero es costoso hacerlo.
Las migraciones son una herramienta simple pero efectiva para rastrear cambios en el esquema, como han notado otros. El concepto es scripts de las sentencias CREATE y ALTER para actualizar de una revisión del esquema a la siguiente, acompañada de scripts de las sentencias ALTER y DROP para degradar los mismos cambios. Ruby on Rails utiliza una capa de abstracción de base de datos además de esto para facilitar el cambio de marcas de bases de datos, pero si solo necesita admitir una marca, simplemente podría usar archivos SQL.
Hay un libro muy respetado sobre este tema (aunque no he tenido tiempo de comprar o leer todavía) llamado "Refactoring Databases: Evolutionary Database Design" por Scott Ambler
Algunos años más tarde, he tenido un gran éxito con [ Migraciones de Framework First Entity Framework] (http://www.asp.net/mvc/overview/getting-started/getting-started-with-ef-using-mvc/migrations-and-deployment-with-the-entity-framework -in-an-asp-net-mvc-application) para lograr esto! –