Je planifie généralement de mon mieux, puis je commence à créer la base de données en fonction des spécifications de planification/conception que j'ai écrites pour moi-même.
Ensuite, j'utilise quelque chose comme Linq-To-SQL pour générer des classes DAL de base - les envelopper dans une classe de référentiel qui gère la plupart de mes situations CRUD. En fonction de la complexité de l'application, j'écris alors une interface graphique qui consomme le référentiel directement (rapide/sale) ou j'écris une classe de logique de domaine (et potentiellement des objets de transfert de données ou POCO stupides) qui enveloppe le fonctionnalité dans le référentiel.
De toute évidence, la meilleure planification des choses manque, alors assurez-vous de prendre pour compte que vous devrez revenir en arrière et ajouter des champs, modifier les types, ajouter des relations etc.
+1: Les données demeurent à jamais, le traitement va et vient. –
@S.Lott - c'est une bonne citation, je vais devoir me rappeler que – jaywon