is the level of abstraction: a logical model ignores the constraints that the underlying database technology imposes and presents a simplified view. Sometimes physical database designs are also drawn using ER diagrams but with explicit attributes for foreign keys that represent relationships. So, when presented with an ER diagram I've never seen before, I must establish its purpose before I can understand it. Fortunately, with an ER diagram, it's usually easy to see what kind of model this is, but in other circumstances-especially with UML diagrams--it isn't always so obvious. Implementation, specification, and conceptual models I call a model built to explain how something is implemented an implementation model and a more abstract model that explains what should be implemented a specification model. Both are models of software systems, and if confusion often exists between these two models, then far greater confusion surrounds the relationship between models of software...