title: design a database for a shopping-cart application?
body: <p>I have never designed a database/data-model/schema from scratch, especially for a web-application.
  In some recent job interviews, i was asked to 'design' a database for a shopping cart application. Now i am working on a mobile shopping application (retail, uses phonegap) with a backend that needs to store and process product and order info. The scale of this problem is so huge, i don't know where to start. I was hoping for some advise on -   </p>
  
  <ol>
  <li>How should I approach such a problem (shopping cart application DB) ? where should i start ?</li>
  <li>Are there any common mistakes/pitfalls that i should avoid ?</li>
  <li>What optimization/efficiency paradigms should i keep in mind when designing such a DB ?</li>
  <li>How should i go about identifying entities in the problem space (products, orders, etc)? how should i derive the relationships between them ?</li>
  <li>When a interviewer asks such a question, what exactly is he looking for ? is there something i should/should not say ? </li>
  </ol>
  
  <p>I should also clarify that - </p>
  
  <ol>
  <li>Yes, I am a noob, and my motives are to learn database design AND prepare for upcoming job interviews. I have read DBMS books where they describe individual concepts in detail, but i have no clue how to put those things together and start designing a database.</li>
  <li>I have seen other threads on database design. The authors already tend to posses some knowledge on how to break the problem down. i would like to understand the methodology behind doing that.</li>
  <li>Links to outside resources, comments, suggestions and anything that will put me on the right track is much appreciated. I hope this thread serves as a learning experience for myself and others.</li>
  </ol>