Data Model as a Building Blueprint

Discipline

Databases

Form

Database Analogies

Attribution — Origin / Source

Collected by Yuhan Pan — Kroenke, D., & Auer, D. (2016). Database Processing Fundamentals, Design, and Implementation. 14 ed. Pearson.

Topic

Conceptual modeling

Domain

Anything else

Conceptual Advantage

it clarifies the purpose and value of data modelling

Mapping

SymbolConcept
Data Model Blueprint
Database Constructed Building
Changing Design Redrawing Lines
Changing Implemented Database Rebuilding Walls, Electrical, Plumbing

Draws Attention To

importance of conceptual design (data model) preceding physical implementation, shows the potential for high costs and time delays if design flaws are discovered late in the development lifecycle

Details

Text

A data model is a plan, or blueprint, for a database design—it is a generalized, non–DBMS-specific design. By analogy, consider the construction of your dorm or apartment building. The contractor did not just buy some lumber, call for the concrete trucks, and start work. Instead, an architect constructed plans and blueprints for that building long before construction began. If, during the planning stage, it was determined that a room was too small or too large, the blueprint could be changed simply by redrawing the lines. If, however, the need for change occurs after the building is constructed, the walls, electrical system, plumbing, and so on will need to be rebuilt, at great expense and loss of time. It is easier, simpler, and faster to change the plan than it is to change a constructed building.

Comments or Feedback?

Do you have feedback on this notional machine? Did you find a mistake, or do you have a request for improvement? You can create an Issue on GitHub, where the description is hosted. This way we can see your feedback and address it.

For this, you need a GitHub account. Then follow this link to see the source file of this page. In there, click the ... left of the highlighted line, then pick "Reference in a new issue".

Create an Issue on GitHub