For years ABC Vocational School has depended on their manual information recording procedures to store information about their students, teachers and courses. The school maintains these different types of information in separate paper-based files.
This manual procedure is quite difficult to handle and maintain, especially in the instances where retrieval of data or a search for information is required. As you can imagine, retrieving a required record from a massive file is both difficult and time consuming. Apart from these problems storing many paper-based files requires significant storage space.
To overcome these problems ABC Vocational School has decided to take advantage of technology available today to create an application that will allow them to perform these functions in a more efficient manner.
The school has decided to handover the design of the database of this project to an Information Technology student, you! Below is a description of the data needed and how it interrelates. You are expected to model this information via an ER / EER diagram and map it to relations.
The database will need to model information about three different types of people that the application will be concerned with: students, teachers, and administrators. Each person will have some common information recorded against them, including their ID, first name, last name, date of birth, phone, address 1, address 2, suburb, postcode, and type (which can be "student", teacher, or administrator).
In addition to the general information above, these types of people have some additional information that pertains themselves only. For students, the qualification code and start date will be stored. For teachers, their registration number and password will be stored. For administrators, the role and password will be stored.
Students can enroll in a qualification. Each qualification has qualification code, name, and duration. As examples only, qualifications might be the "Diploma of Website Development" or the Diploma of Software Development. Note that a student may only enroll in one qualification and the qualification can have any number of students.
Each qualification has courses mapped to it. The course information comprises of the course ID, name, year, semester, and the teacher responsible. In addition, each course can be mapped in any number of qualifications. For example, the "Diploma of Website Development" might include in part Programming in HTML and Programming in Java, whilst the Diploma of Software Development might include in part Data Structures and Programming in Java. Each course only has one teacher and a teacher can teach any number of courses.
Students will be enrolled in their courses to complete their qualification. Students will therefore be enrolled in multiple courses and each course will have any number of enrolments. Each enrolment record will also record the mark that was obtained.
Task 1
Draw an ER/EER diagram for the above-mentioned database in Microsoft Visio 2016 using Crow's Foot Database Notation.
For each entity:
For each relationship:
Task 2
In this task, you will create a relational model for the above-mentioned database.