You Were Just Hired By An Airline Industry To Create A Datab
You Were Just Hired By An Airline Industry To Create a Database To Rec
Review the existing report, functional dependencies provided, sample data, field domains, and common knowledge. Document any assumptions beyond those specified and identify initial entities such as person, place, or thing. Clarify the scope and context of the data model, focusing on entities like Airlines and Pilots, and their attributes.
Define functional dependency, and explain one row of the functional dependencies provided above in plain English using field names. Describe how certain attributes depend on each other, for example, how PilotID uniquely determines other pilot attributes or how AirlineID determines airline-specific data.
Based on multiplicity, explain the relationship between the initial entities in plain English—whether it is one-to-many or many-to-many. For instance, explain whether one airline has many pilots or if pilots can work for multiple airlines, based on the data provided.
Design the database in progressive normalization stages:
- First Normal Form (1NF): Assess the UNF table, quote the 1NF definition from the text, and determine whether the table conforms to 1NF. If not, make necessary adjustments. Document the resulting 1NF tables with schema notation or spreadsheet format, and explain how each table meets 1NF.
- Second Normal Form (2NF): Quote the 2NF definition, assess the 1NF tables, and make modifications to achieve 2NF if needed. Document these tables and explain compliance with 2NF.
- Third Normal Form (3NF): Quote the 3NF definition, evaluate the 2NF tables, and adjust to achieve 3NF if necessary. Document these tables and explain how they conform to 3NF.
Construct the final database in MS Access using the 3NF tables, load the sample data, and name the database as per instructions (e.g., LastName_TermProject).
Create a query to list each PilotID, First Name, Last Name, and the airline they work for, sorted by pilot.
Design a form titled "New Pilot Input" for entering new pilot data.
Create a report titled "Pilot List" that lists all pilots along with their first name, last name, and salary.
Upload the completed database and deliverables as specified.
Ensure the entire submission is well-organized, clear, free of spelling and grammatical errors, and professionally formatted.
Paper For Above instruction
The process of designing a relational database for the airline industry, focusing on pilots and airlines, begins with understanding and analyzing the provided information. The initial report specifies that each pilot has a unique PilotID and each airline has a unique AirlineID, with pilots assigned to only one airline and each airline potentially having multiple pilots. Additional attributes include pilot details such as FName, LName, JobTitle, and Salary, and airline attributes like NPlanes, NRoutes, and NPilots. These details form the foundation for the database design.
In establishing assumptions, it is reasonable to presume that each PilotID is a primary key for the Pilot entity, capturing personal and employment details. Airlines are represented with unique AirlineID, with associated attributes tracking fleet size (NPlanes), routes served (NRoutes), and the number of pilots (NPilots). The initial entities directly derive from the key points: a Pilot entity with unique PilotID, and an Airline entity with unique AirlineID. The relationship links each pilot strictly to one airline (one-to-many from airline to pilots), implying that an airline has many pilots, but each pilot belongs to only one airline.
A functional dependency describes how one set of attributes uniquely determines another. For instance, PilotID → FName, LName, JobTitle, Salary, AirlineID, NPlanes, NRoutes, NPilots indicates that each pilot's identifier determines all their attributed details, confirming PilotID as a primary key. To explain in plain language with an example: "Knowing a pilot’s PilotID, we can determine their first name, last name, job title, salary, and the airline for which they work."
The multiplicity between entities reflects a one-to-many relationship: each airline can have many pilots, but each pilot is associated with only one airline. This is a classic one-to-many relationship, conforming to the typical airline staffing model: a single airline employs multiple pilots, but a pilot works for one airline at a time.
Designing the database involves normalization. Starting with the unnormalized form (UNF), the data could be stored in a single flat table, which we then assess for 1NF compliance. According to the definition (Elmasri & Navathe, 2015, p. 107), a table is in 1NF if it contains only atomic values and each field contains unique values for each record. The initial table, containing PilotID, FName, LName, JobTitle, Salary, AirlineID, NPlanes, NRoutes, NPilots, meets 1NF if all fields are atomic. If any multi-valued fields or repeating groups appear, they must be removed or arranged into separate tables.
For 2NF, every non-prime attribute must depend on the entire primary key (Elmasri & Navathe, 2015, p. 111). Since PilotID uniquely determines all other attributes, and AirlineID determines airline-specific fields, further decomposition is necessary to eliminate partial dependencies. This process involves creating separate tables for pilots and airlines, with PilotID as the primary key in the pilot table, and AirlineID as the primary key in the airline table, with the related attributes stored accordingly.
Achieving 3NF requires removing transitive dependencies; that is, non-key attributes depending on other non-key attributes. For instance, airline attributes like NPlanes, NRoutes, and NPilots depend directly on AirlineID, and not on PilotID. Segregating airline attributes into an airline table and pilot attributes into a pilot table achieves 3NF, where each table contains only data directly dependent on its primary key. The final design includes a Pilot table with PilotID, FName, LName, JobTitle, Salary, and AirlineID, and an Airline table with AirlineID, NPlanes, NRoutes, NPilots.
Using the normalized tables, a Microsoft Access database can be created, and sample data loaded. The query to list PilotID, First Name, Last Name, and airline name (or identifier), sorted by PilotID, can then be implemented. The database also includes a form for entering new pilot data and a report listing all pilots with their names and salaries for presentation purposes.
In conclusion, this database design process—rooted in normalization principles, understanding of entity relationships, and functional dependencies—ensures data integrity, minimizes redundancy, and supports efficient data retrieval suitable for airline operational management. Proper documentation, clear organization, and adherence to normalization standards are essential for building a reliable and scalable database system.
References
- Elmasri, R., & Navathe, S. B. (2015). Fundamentals of Database Systems (7th ed.). Pearson.
Journal of Data Management, 23(4), 55-65. Relational Database Design and Implementation. Morgan Kaufmann. Modern Database Management (13th ed.). Pearson. A First Course in Database Systems. Pearson. Information Systems Journal, 20(2), 127-142. An Introduction to Database Systems. Addison-Wesley. Database Design for Smart Users. Wiley. Communications of the ACM, 13(6), 377-387. Data Engineering Journal, 32(3), 95-102.