I agree %100, we are in the process of rolling out a new app and I have been in a few functional design meeting. Although in my shop (which is a huge outfit) we have DA's that do the moddeling, it is interesting to see the whole flow from user request to front end to data model.

We should also add that the applications (AKA DEVELOPERS )
should learn a thing or two about data models. Coding for the front end and collapsing models for coding simplicity are the most popular reasons for bad performance. Developers should learn that a data model and RDBMS work well together.

"Yes we need code/decode table!"
"Yes you will have to code joins!"
"No we will not creat one huge table for coding simplicity!!"

Raise your hand if you do not have any flat tables in your system.

MH