En términos generales, un buen diseño de la base de datos es un buen diseño de la base de datos: la pregunta más importante para el uso de la web será cómo acceder a los datos y administrar las cosas que uno podría considerar requieren un estado que básicamente la web no tiene.
Pensando en ello, mi enfoque se basa en una experiencia bastante más bien ... pero ya sea que comience con un esquema o con objetos, está intentando hacer lo mismo, es decir, construir un modelo utilizable de sus datos, para una Un número sustancial de proyectos puede ser una relación bastante directa entre el modelo y el esquema (no en todos los casos, y probablemente no para todas las tablas / objetos), por lo que realmente se trata de construir un modelo decente comenzando donde sea cómodo y trabajando. desde allí.
En términos de construir un modelo decente, @Tim lo tiene para las bases de datos y, fundamentalmente, la construcción de su modelo de objetos será muy similar: lo que es único, lo que es una jerarquía, dónde hay muchas relaciones, etc. Sin embargo, al llegar a una base de datos, asegúrate de hacer todas las cosas buenas.
También asegúrate de tener scripts o ddl en el código que te permitan crear el esquema desde cero y actualizarlo a medida que realizas cambios (ddl en el código es mi método preferido: tengo un sistema y funciona).