Advertisement

What Is Data Modeling?

By on
data modeling

Data models document Data Architecture, aligning core business rules with data definitions. In addition, data models give companies and their customers an inside view of data structures, relationships, and how data flows between different entities, such as tables, applications, or data stores.

Through viewing and working with data models, organizations understand what data systems track, where it goes, and when and how. Also, technical staff and data stakeholders use data modeling to identify data entities, relationships, and architectures that need clarification or redesign to efficiently access and process data. Think of data models as a communication tool to ensure agreement among developers, support staff, and users of a Data Architecture.

A data model may cover the data journey from end to end across an enterprise. However, some data-models span a department, office, or only a few sub-systems. Data models cover processes and systems depending on the business context under discussion between business and technical participants. Most importantly, data models let team members discover, analyze, and represent data assets.

Typically, companies construct a combination of three different types of data models, as shown in the diagram below:

Image Credit: Pascal Desmarets
  • A Conceptual Data Model: According to Matthew West, a conceptual model describes things in the business and their relationships. The diagram above shows connections between customers, orders, products, and payment data types.
  • A Logical Data Model (LDM): Fred Cummings describes the logical data model (LDM) as specifications describing the data’s concepts, relationships, and interpretations. It may include:
    • Restrictions on the data.
    • Rules and derived data that are relevant to the processes of the application(s) the logical data model serves.”
    • The model above shows the attributes making up customers, orders, products, and payments.
  • A Physical Data Model (PDM): Physical data models represent “the actual structure of a database—tables and columns, or the messages sent between computer processes,” says Matthew West. A PDM helps engineers develop and maintain a data architecture. In the above diagram, the PDM describes the data formats accepted by each customer, order, product table, and their precise field names.

Other Data Modeling Definitions Include:

  • “The process of discovering, analyzing, representing, and communicating data requirements in a precise form called the data model.” And “data models depict and enable an organization to understand its data assets.”  (Data Management Body of Knowledge (DMBoK))
  • “Data Modeling is a representation of the data structures in a table for a company’s database and is a very powerful expression of the company’s business requirements. This data model is the guide used by functional and technical analysts in the design and implementation of a database.” (Techopedia)
  • “Data Modeling is the act of exploring data-oriented structures. Like other modeling artifacts, data models can be used for a variety of purposes, from high-level conceptual models to physical data models. From the point of view of an object-oriented developer, Data Modeling is conceptually similar to class modeling. With data modeling, you identify entity types, whereas, with class modeling, you identify classes.” (Agile Data)

Data Modeling Use Cases Include:

  • An entity-relationship model or E-R Model that describes tables, fields, and relationships in a database system. The conceptual, logical, and physical data models displayed above make up an entity-relationship model.
  • A Kimball-style data warehouse (aka Star Schema) that describes departmental purchases among company employees. See the data model below.
Image Credit: Data Infrastructure IRAP Training
  • A data flow data model or DFD to describe a bank operation.
Image Credit: Babson College

Businesses Require Data Modeling to:

  • Develop higher-quality software development
  • Reduce costs
  • Achieve faster time to market
  • Gain a clearer understanding of scope, vocabulary, and other development elements
  • Get better application and database performance
  • Provide high-quality documentation
  • Cause fewer errors in software
  • Execute better risk management

Image used under license from Shutterstock.com

Leave a Reply

We use technologies such as cookies to understand how you use our site and to provide a better user experience. This includes personalizing content, using analytics and improving site operations. We may share your information about your use of our site with third parties in accordance with our Privacy Policy. You can change your cookie settings as described here at any time, but parts of our site may not function correctly without them. By continuing to use our site, you agree that we can save cookies on your device, unless you have disabled cookies.
I Accept