This repository is used to submit your work for the “Advanced database modeling” assignment.
The goal of this task is to:
- Practice reading and interpreting an enhanced ERD / data model.
- Apply conceptual database modeling terminology.
- Reason about primary keys, surrogate keys, composite keys, and 1:1 relationships.
- Figure Q5.8 – The Product Data Model
The figure shows:
- A
PRODUCTentity with attributes such as product number, title, release date, price, and type. - Three subtypes:
BOOK,CD, andMOVIE, each with their own specific attributes. - A discriminator attribute
Prod_Type.
-
Questions 1–8
You will answer questions 1–8 based on your understanding of Figure Q5.8 and general ER modeling concepts.
Create a file called answers.md (or answers.pdf / answers.docx) in this repository and provide clear, numbered answers to all of the following tasks.
Q1. Movie attributes
-
Using Figure Q5.8, list all attributes that describe a movie.
- Include both the attributes inherited from
PRODUCTand the attributes specific to theMOVIEsubtype.
- Include both the attributes inherited from
Q2. PRODUCT–CD relationship
-
Based on the data model in Figure Q5.8, determine whether every row in
PRODUCTmust be related to a row inCD.- Answer Yes/No and justify your answer using the subtype/supertype structure and constraints shown in the figure.
Q3. BOOK without PRODUCT
-
Analyze whether it is possible for a row to exist in the
BOOKtable without a corresponding row inPRODUCT.- Answer Yes/No and explain your reasoning using primary key / foreign key dependencies and the supertype–subtype design.
For Questions 4–8, answer in your own words. Use concise but complete explanations (2–6 sentences per answer).
Q4. Entity cluster
- Explain what an entity cluster is in conceptual database modeling and describe the advantages of using entity clusters in large or complex ER diagrams.
Q5. Desirable properties of primary keys
-
List the main desirable characteristics of a primary key (for example: uniqueness, stability, minimality, etc.).
- For each characteristic, briefly explain why it is important in database design.
Q6. Composite primary keys
-
Describe when it is appropriate to use a composite primary key.
- Include at least one typical example scenario, such as an associative (bridge) entity between two tables.
Q7. Surrogate primary keys
-
Define a surrogate primary key and explain when and why you might choose a surrogate key instead of a natural key.
- Mention at least one benefit and one potential drawback.
Q8. 1:1 relationship and foreign key placement
-
Consider a 1:1 relationship between two entities where one side is mandatory (must exist) and the other side is optional (may or may not exist).
- Specify in which table you would place the foreign key.
- Explain whether that foreign key should be mandatory (NOT NULL) or optional (NULL allowed) and justify your decision.
Example structure:
.
├── product_data_model.png # Figure Q5.8 (if provided by instructor)
├── README.md # This file
└── answers.md # Your answers to Q1–Q8
All answers must be written in your own words. You may consult lecture slides, textbooks, and trusted online resources, but copy–paste of text or solutions is not allowed.
Happy modeling!
