Dean Saxe's discussion on data modeling in ColdFusion (and a list of books on the subject) was forwarded by Michael Smith of TeraTech, Inc. (posted in a response to a discussion with Brett Gowder on designing a database for online patient registration):
My own perspective on data modeling is this. If your model sucks, so will your application. A good data model provides the basis for a solid, maintainable application, because in order to develop a good model, one needs to take the time to understand and document the business practices that the model will be used for.
With a good, in-depth understanding of the subject matter comes a solid data model which meets the 1st, 2nd and 3rd normal forms (in which case, it generally meets the 4th and 5th normal forms, as well). Upon physical creation of such a model, the problems of how to retrieve the data from your database are minimized with a good understanding of SQL and the use of additional DB tools such as views and triggers. The application can then sit on top of this well designed DB and will only have to worry about data display, data retrieval from forms and reading/writing to the DB. There should be very little or no data manipulation at the code level.
The Data Modeling Handbook
Michael C. Reingruber and WIlliam W. Gregory
A good explanation of logical data modeling. Covers the five normal forms in excruciating detail.
Data Modeling
G. Lawrence Sanders
[This has] been sitting on my desk, unread for about a year.
Dean H. Saxe
Product Evolutionist
WorldWideTesting.com
770.225.5681 AIM: DHS