Student name: Hatem Saleh Alshamrani
Student number: 445820172.
Step 1: Identify Functional Dependencies:
Each employee has a unique identifier (EmployeeID) that determines their name,
department, manager’s identifier, and location.
Each manager has a unique identifier (ManagerID) that determines their name.
Step 2: Create Normalized Tables:
Employee Table:
EmployeeID (Primary Key)
EmployeeName
DepartmentID (Foreign Key)
ManagerID (Foreign Key)
Department Table:
DepartmentID (Primary Key)
DepartmentName
Location
Manager Table:
ManagerID (Primary Key)
ManagerName
Step 3: Populate the Tables and Define Primary and Foreign Keys:
In this step, we insert the existing data from the denormalized table into the normalized tables.
Employee Table:
EmployeeID(pk) EmployeeName DepartmentID(fk) ManagerID(fk)
101 Alice 1 100
102 Bob 2 100
103 Charlie 1 100
100 David 4 NULL
Department Table:
DepartmentID (PK) DepartmentName Location
1 Sales New York
2 Marketing New York
4 Management Chicago
Manager Table:
ManagerID (Primary Key) ManagerName
Bob 100
Step 5: Ensure Third Normal Form:
Finally, we ensure that the normalized tables adhere to the Third Normal Form (3NF)
With these steps, we achieve effective data organization, avoiding redundancy, and ensuring
data integrity and efficiency.