Module 16 · Normalization · Drill
Normalization drill
Scenario prompts that check whether normalization is usable under pressure. Answer out loud, then compare.
0 of 4 graded
Prompt 1
Normalize this table to 3NF, naming each anomaly it suffers and each dependency you remove: OrderLine(order_id, order_date, customer_id, customer_name, customer_city, product_id, product_name, unit_price, quantity). One order has many products; price is the product's list price.
Prompt 2
R(A, B, C, D, E) with F = {A → B, BC → E, ED → A}. Find all candidate keys, list prime attributes, and determine the highest normal form R satisfies. Then decompose into BCNF and say whether dependencies are preserved.
Prompt 3
Employee(emp_id, project, skill) records which projects each employee works on and which skills they have; projects and skills are unrelated. The table has thousands of rows per senior engineer. Identify the problem formally, fix it, and explain why BCNF did not catch it.
Prompt 4
An analytics team argues that normalization is outdated because joins are slow, and wants one wide table for the orders service. Give a balanced engineering answer: when the normalized design must stay the source of truth, when denormalized copies are appropriate, and how to keep them correct.