Exam
Exam
ICT 271
Databases
Final Examination
December 2022
Duration: 3:00 HRS
INSTRUCTIONS:
There are four questions in this paper. Answer question one and any other two questions
The total marks for this paper are 100.
Present tidy and readable work.
Write your student ID on your answer booklet.
1
Question 1 (Mandatory)
For today’s web developers, the ability to design and implement databases has become a very critical
skill because web applications developed today are mostly dynamic in nature. Presented below are
the data requirements of a company called ENOX.
Scenario:
Enox is organized into departments. Each department has a unique name, a unique number, and a
particular employee who manages the department. We keep track of the start date when that
employee began managing the department. A department may have several locations. A department
controls a number of projects, each of which has a unique name, a unique number, and a single
location. The database will store each employee’s name, Social Security number, address, salary, sex
(gender), and birth date. An employee is assigned to one department, but may work on several
projects, which are not necessarily controlled by the same department. It is required to keep track of
the current number of hours per week that an employee works on each project, as well as the direct
supervisor of each employee (who is another employee). The database will keep track of the
dependents of each employee for insurance purposes, including each dependent’s first name, sex,
birth date, and relationship to the employee.
Using the above case study, answer the tasks that follow below.
Tasks:
(a) Describe the conceptual modeling phase in database development (5 Marks)
(b) Describe the logical modeling phase in database development (10 Marks)
(c) Using your answer in (a), construct a conceptual model for the above scenario (10 Marks)
(d) Using your answer in (b), show the logical model for the above scenario clearly highlighting
the primary and foreign keys. (15 Marks)
Question 2
a) To ensure validity of data in databases, the non violations of integrity constraints is very critical
regardless of the amount of transactions executing in the system. Explain, the different types of
integrity constraints in database systems. (12 Marks)
b) Discuss the benefits of database management systems. Your discussion should include scenarios
where database management systems are not suitable. (18 Marks)
2
Question 3
The following tables below present part of a schema for the Datsoft university database.
Student
Table 1
Course
code name
Table 2
3
CourseGrade
Table 3
a) Write DDL statements for creating each of the above tables (15 Marks)
b) Write a query that retrieves all details of students whose firstnames begin with letter “J” and
lastnames end with letter “a” (3 Marks)
c) Write a query that retrieves the gender with the most number of students. (6 Marks)
d) Write a query that retrieves the name of a student with the highest number of “A” grades. (6
Marks)
Question 4
Database management systems execute transactions concurrently and this helps to increase the
throughput of database systems. However, to avoid corruption of data, concurrently executing
transactions should be carefully management.
a) What is a transaction? (2 Marks)
b) Explain the properties of transactions. (8 Marks)
c) Discuss problems that arise when concurrently executing transactions are not carefully
managed. The problems should be clearly presented with the aid of application scenarios
(20 Marks)
[Total: 100 Marks]
-----------------------------------------END OF EXAM-------------------------------------