The purpose of this document is to provide guidelines to help you design a database that provides users with the following characteristics:
- A single, unified, unambiguous view of the data
- Optimal access for any possible valid query
- Freedom from navigation
These attributes can be achieved by careful collection and analysis of requirements and through careful planning of how to implement those requirements. The name used to describe the planning of the structure and relationships of a database is data modeling.
Data modeling comes in two modes: logical and physical.
These two modes can be done one after the other or interleaved in an agile fashion depending on your requirements and implementation style.