- Discuss the domain (with others or yourself).
- Write down the user stories (features that you plan to support).
- Develop an understand of how each noun (model/table) will relate to each other.
- Draw the schema. Don't name any join tables as the combination of two other tables, find a unique noun.
- Double check your schema for any columns that don't follow convention (e.g. foreign keys should end in
_id
).