Data Models and Conceptual Design

SA
StudyAI Editorial
Reviewed by StudyAI tutors
· Published Updated

From the https://www.kanopy.com/en/sfsu/watch/video/10910624 curriculum

Data Models and Conceptual Design

TL;DR

Data models are blueprints for organizing information, helping you understand and communicate how data elements relate to each other. Conceptual design is the first step, focusing on what data is important and how it naturally connects, without getting bogged down in technical details. It uses tools like Entity-Relationship (ER) diagrams to visually map out these relationships.

1. The Mental Model

Think of a data model as an architect's plan for a building. Before any concrete is poured or wires are laid, the architect sketches out the rooms, their functions, and how they connect. Similarly, a data model sketches out your data: what pieces of information exist, and how they relate to each other.

2. The Core Material

Conceptual design is all about figuring out what data your system needs to store and how those pieces of data naturally connect to each other. You're not worrying about databases, programming languages, or specific technical details yet. Instead, you're focusing on the business reality.

2.1 Entities

An entity is a real-world object or concept that you want to store information about. Think of nouns.
Examples: A Customer, an Order, a Product, an Employee.

2.2 Attributes

Attributes are the characteristics or properties of an entity. Think of adjectives describing a noun.
Examples for a Customer entity: CustomerID, CustomerName, EmailAddress, PhoneNumber.

2.3 Relationships

Relationships describe how two or more entities are connected. These are usually verbs or phrases that link entities.
Examples: A Customer places an Order. An Order contains Products. An Employee manages a Department.

Relationships have cardinality, which tells you how many instances of one entity can relate to instances of another.
* One-to-one (1:1): A Husband has one Wife, and a Wife has one Husband.
* One-to-many (1:M): A Customer can place many Orders, but an Order is placed by one Customer.
* Many-to-many (M:N): A Student can enroll in many Courses, and a Course can have many Students.

2.4 Entity-Relationship (ER) Diagrams

Conceptual depiction of hierarchy using wooden pieces on a vibrant red background.
Photo by Ann H on Pexels

ER diagrams are the primary tool for conceptual design. They visually represent entities, their attributes, and the relationships between them.

Here's how common symbols look:
* Rectangle: Represents an entity.
* Oval: Represents an attribute (often connected to an entity).
* Diamond: Represents a relationship between entities.
* Lines: Connect entities to relationships and relationships to attributes.
* Crow's foot notation (or similar): Used on the lines to show cardinality (1:1, 1:M, M:N).

Let's illustrate with an ER diagram for a simple online store:

erDiagram
    CUSTOMER ||--o{ ORDER : places
    ORDER ||--o{ ORDER_ITEM : "includes (1 or more)"
    PRODUCT }o--|| ORDER_ITEM : "is part of (many)"

    CUSTOMER {
        VARCHAR CustomerID PK
        VARCHAR Name
        VARCHAR Email
    }
    ORDER {
        VARCHAR OrderID PK
        VARCHAR OrderDate
        DECIMAL TotalAmount
    }
    PRODUCT {
        VARCHAR ProductID PK
        VARCHAR Name
        DECIMAL Price
    }
    ORDER_ITEM {
        VARCHAR OrderItemID PK
        INT Quantity
        DECIMAL UnitPrice
    }

In this diagram:
* CUSTOMER, ORDER, PRODUCT, and ORDER_ITEM are entities.
* CustomerID, Name, Email are attributes of CUSTOMER.
* The places relationship between CUSTOMER and ORDER shows that one customer can place many orders (1:M).
* The includes relationship between ORDER and ORDER_ITEM shows that one order can include one or more order items (1:M).
* The is part of relationship between PRODUCT and ORDER_ITEM shows that one product can be part of many order items (1:M). An ORDER_ITEM always refers to one PRODUCT.

Notice that ORDER_ITEM acts as a linking entity or junction table to resolve the many-to-many relationship that would otherwise exist directly between ORDER and PRODUCT (an order has many products, and a product can be in many orders).

3. Worked Example

Let's design a conceptual model for a simple library system.

Step 1: Identify Entities
What are the main "things" in a library we need to track?
* Book
* Borrower (the person checking out books)
* Loan (the act of a book being checked out by a borrower)

Step 2: Identify Attributes for Each Entity
* Book: BookID, Title, Author, ISBN, PublicationYear
* Borrower: BorrowerID, Name, Address, PhoneNumber, Email
* Loan: LoanID, LoanDate, ReturnDate, DueDate

Step 3: Identify Relationships and Cardinality
* A Borrower takes a Loan. A borrower can take many loans, but a loan is for only one borrower. (1:M)
* A Book is part of a Loan. A book can be part of many loans (over time), but a loan is for only one specific book at a time. (1:M)

Let's re-evaluate the "Book is part of a Loan" relationship carefully. If one loan is for one book, and one book can be on many loans (over time), then we have:
BORROWER --(1:M)-- LOAN
BOOK --(1:M)-- LOAN (meaning one BOOK can appear in many LOAN records, and one LOAN record is for one BOOK instance).

This looks good!

4. Key Takeaways

  • Conceptual design focuses on "what" data is needed and "how" it relates, not "how" it's stored.
  • Entities are real-world objects or concepts you track, like nouns.
  • Attributes are the properties of entities, like adjectives.
  • Relationships describe how entities connect, often with verbs.
  • Cardinality defines the number of instances related between entities (1:1, 1:M, M:N).
  • ER diagrams are visual tools for showing entities, attributes, and their relationships.
  • Many-to-many relationships are often resolved into two one-to-many relationships via a linking entity.

Common mistakes to avoid:
- Jumping straight to database tables before understanding the business logic.
- Confusing entities with attributes (e.g., trying to make "email" an entity instead of an attribute of "customer").
- Forgetting to define the cardinality of relationships, which is crucial for accuracy.
- Overlooking implicit relationships or creating redundant ones.

5. Now Try It

Imagine you're designing a data model for a small veterinary clinic. They need to track information about pets, their owners, and the appointments they have.

Your task is to:
1. Identify at least three main entities.
2. List at least three relevant attributes for each entity.
3. Describe the relationships between these entities and state their cardinality (e.g., "Owner has Pet, 1:M").

Success looks like a clear list of entities with their attributes and accurately described relationships with correct cardinality. You should be able to explain why you chose each entity and attribute.

Frequently asked about Data Models and Conceptual Design

Data models are blueprints for organizing information, helping you understand and communicate how data elements relate to each other. Read the full notes above for the details.

Data Models and Conceptual Design is a core topic in https://www.kanopy.com/en/sfsu/watch/video/10910624. Most exam papers test it via a mix of definitions, worked examples, and applied problems. The notes above cover the high-yield sub-topics, common pitfalls, and the kind of questions examiners typically set.

Yes. Every note in the StudyAI Campus Hub is free to read. Create a free account if you want to clone the full plan, generate your own notes from your textbook, or get AI-powered practice quizzes and flashcards.

More from https://www.kanopy.com/en/sfsu/watch/video/10910624


Get the full https://www.kanopy.com/en/sfsu/watch/video/10910624 curriculum

Clone the complete plan to your dashboard for unlimited AI-generated notes, practice quizzes, and a personalised revision schedule.

Create Free Account