As database applications have become more sophisticated, the development of support tools for database design has become more critical. Before support tools can be developed, however, the nature of database design problems and their solutions must be well defined. We apply data modelling principles to these tasks. The result is a multi level model of databases. The logical level describes database design problems and the physical level describes their solutions. This model is the basis for a computer aided database design methodology developed by the authors.