I'm really interested in this. How might a user-centered data model be created? What kind of requirements capture process is involved?
Stories help. Keeping things abstract helps a lot (it was no accident that Elgg makes extensive use of object->metadata for storage). Basically, be lazy in making decisions & push them forward.
I find it helpful to start with the thing that's at the heart of the system. So, for example if you're building a calendar app, then the first thing to model is the calendar, and what people can do with it.
Basically all the stuff we learned in CS with UML, but obviously without drawing UML or following a rigid Methodology. Both of which I abhor.