Skip to main content

Welcome to a Grasp lesson

Create a free account to keep studying and create your own study path.

Lesson 28

Crafting Comprehensive ERDs with Multi-Cardinality Relationships

Recommended resources

Hello! In our last lesson, you mastered the skill of analyzing business rules to determine precise cardinality and participation constraints for relationships. This analytical ability is the foundation for creating accurate database models.

Today, we're moving from analysis to synthesis. You will learn to bring all the pieces together—entities, attributes, keys, and relationship constraints—to design and draw a complete Entity-Relationship Diagram (ERD) from a complex business scenario. This lesson is the culmination of our work on ER modeling and will equip you with the practical skills needed for your upcoming university project. By the end, you'll be able to translate a multi-paragraph description of a business into a full, professional ERD.

1. The Blueprint: A Step-by-Step Process for ERD Creation

Creating an ERD from a business description can seem daunting, but a systematic approach makes it manageable. The process involves identifying the core components, defining their connections, and then visually representing them.

The following guide from Miro outlines a clear, five-step method that takes you from the initial scenario to a refined diagram. We will use this as our framework for the rest of the lesson.

How to Draw an ER Diagram: Step-by-step with example

This article provides a detailed walkthrough of creating an ERD for a digital library system. It's an excellent demonstration of a structured design process.

Read through the section titled "How to draw an ER Diagram: Step-by-step with example". Focus on understanding the goal of each of the five steps: Identify your entities: How to pick out the main "nouns" or concepts. Define attributes for each entity: How to list the properties, including Primary and Foreign Keys. Map relationships between entities: How to determine the connections and their cardinality (1:1, 1:M, M:N). Add cardinality notations: Applying the Crow's Foot symbols you learned in the last lesson. Refine and validate your diagram: Checking your work for correctness and completeness. Pay special attention to how the author handles many-to-many (M:N) relationships (like Book to Author) by introducing a "junction table" (e.g., BookAuthor). This is a critical technique.


2. Seeing it in Action: A Guided Walkthrough

Now that you have the five-step process, let's watch a guided example. The following video walks through the creation of an ERD for a library circulation process, applying a very similar methodology. This will help solidify your understanding of how to move from abstract rules to a concrete diagram.

Entity Relationship Diagram (ERD) Tutorial and EXAMPLE

This video from The Business Analysis Doctor provides a practical, real-world example of creating a logical ERD from a set of business rules.

Watch the segment from "now let's look at an example" to the end. Observe how the presenter: Starts with a set of business rules. Uses the "noun technique" to identify the five main entities. Defines the attributes for each entity, including Primary Keys (PK) and Foreign Keys (FK). Systematically analyzes the relationships between entities, determining the cardinality for each one (e.g., "a single book can have no reservations or can have several reservations").

A Closer Look at Many-to-Many Relationships

You may have noticed that M:N relationships, like a STUDENT enrolling in many COURSEs (and a COURSE having many STUDENTs), present a challenge. You can't directly link them in a relational database using a simple foreign key.

The solution, as hinted at in the Miro article, is to create an intermediary entity, often called a composite, bridge, or associative entity. This new entity breaks the M:N relationship down into two 1:M relationships.

The video below explains this concept perfectly.

Entity Relationship Diagrams

This clip from the "Entity Relationship Diagrams" video by Decomplexify clearly explains why and how to resolve M:N relationships.

Watch the final part of the video, focusing on the section that begins around "The only kind of relationship we can’t express". Notice how the M:N relationship between PERSON and PET is resolved by introducing a new PET OWNERSHIP entity in the middle. This turns one M:N link into two 1:M links, which can be implemented in a database.


3. Your Turn: Design a Database for a Language School

It's time to put your skills to the test. You will now act as the database designer for a language school. Your task is to read the business requirements and create a complete ERD.

Defining the Requirements for a Language School

This section from an article by Craig Dickson provides a clear, multi-paragraph business scenario.

Read the section titled "Defining the requirements". This contains all the information you need to build your ERD.

Now, on a piece of paper or using any drawing tool, follow the five-step process to create an ERD for the International Language School.

  1. Identify Entities: Read the requirements and list the main nouns (people, concepts, things). You should find about four main entities.
  2. Define Attributes: For each entity, list some logical attributes. Every entity needs a Primary Key (e.g., TeacherID, ClientID).
  3. Map Relationships: Identify the verbs connecting your entities (e.g., a teacher teaches a course).
  4. Determine Cardinality: For each relationship, use the business rules to determine the (min, max) cardinality on both sides. For example, the rules state, "Each course has one teacher at any given time," and "each of whom may teach multiple courses." How would you represent this?
  5. Draw the ERD: Sketch the diagram using Crow's Foot notation. Remember to resolve any M:N relationships with a composite entity!

Take about 15-20 minutes to complete your diagram. This is the central exercise of the lesson, so give it your best effort.

Click here to see a completed ERD and analysis

Here is the completed ERD for the language school scenario, as presented in the article you read.

Completed ERD for Language School
A complete ERD for the language school, showing entities, attributes, and relationships with cardinality.

Let's break down the design choices:

  • Entities: The four core entities are Teacher, Client, Course, and Participant.
  • 1:M Relationships:
    • Teacher-Course: A teacher can teach (0,N) courses (zero or many), and a course is taught by (1,1) teacher (one and only one). The Foreign Key (teacher_id) is placed in the Course entity (the "many" side).
    • Client-Course: A client can offer (1,N) courses, and each course is offered by (1,1) client. The FK (client_id) is in the Course entity.
    • Client-Participant: A client employs (1,N) participants, and a participant is employed by (1,1) client. The FK (client_id) is in the Participant entity.
  • M:N Relationship:
    • Participant-Course: The rules state, "Participants may be enrolled in more than one course." And logically, a course will have many participants. This is a classic many-to-many relationship.
    • As shown in the diagram, this is modeled with a diamond labeled "takes." To implement this, you would create a new composite entity (e.g., ENROLLMENT) with two 1:M relationships: one to Participant and one to Course.

How does your diagram compare? If you identified the M:N relationship and thought about how to resolve it, you are on the right track!


Conclusion

In this lesson, you've integrated all the concepts from this module to build a complete ERD from a real-world scenario. This process of synthesis is the core skill of a database designer.

Key Takeaways:

  • A systematic, five-step process (identify entities, define attributes, map relationships, add cardinality, refine) provides a reliable framework for ERD creation.
  • You can translate business requirements into entities (nouns), relationships (verbs), and constraints (cardinality and participation).
  • Many-to-many (M:N) relationships cannot be implemented directly and must be resolved by creating an intermediate composite entity that breaks the M:N relationship into two 1:M relationships.

You have now completed the journey from understanding basic data models to designing complex ones. The next step is to look inside the tables you've designed. In our next lesson, we will begin our study of normalization, a process for organizing attributes within tables to reduce data redundancy and prevent data anomalies. This will ensure your well-designed schema is also robust and efficient.