T2-138 Back-End Development and Database
T2-138 Back-End Development and Database
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
N
am
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
es
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
:..
NESA
In
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
...
NATIONAL EXAMINATION
de
AND SCHOOL INSPECTION
...
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
x
AUTHORITY
...
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
nu
...
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
SWD - Back-End Development and
...
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
...
be
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
...
Database
...
:..
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
...
...
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
...
...
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
T2-138
...
...
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
...
...
...
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
...
...
...
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
...
...
Monday, 14 July 2025
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
...
...
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
...
...
8:30 AM to 11:30 AM
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
...
...
...
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
...
...
...
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
...
...
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
...
...
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
...
...
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
...
...
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
TSS NATIONAL EXAMINATIONS, LEVEL 5, 2024-2025
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
QUESTIONS and ANSWERS BOOKLET
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
TRADE (s): SOFTWARE DEVELOPMENT (SWD)
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
SUBJECT: BACK-END DEVELOPMENT AND DATABASE
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
DURATION: 3 Hours
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
Read carefully the instructions on page 3 TOTAL MARKS.........../100
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
FOR EXAMINER’S USE ONLY
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
QUESTIONS 1 2 3 4 5 6 7 8 9 10 Total
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
Marks
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
QUESTIONS 11 12 13 14 15 16 17 18 19 20 Total
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
Marks
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
QUESTIONS 21 22 23 24 25 26 27 28
•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• 29 30 Total
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
Marks
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
2024 - 2025 NESA (National Examination and School Inspection Authority) 1
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
2024 - 2025 NESA (National Examination and School Inspection Authority) 2
T2-138_Back-End Development and Database
DURATION: 3 HOURS
INSTRUCTIONS TO CONDIDATE:
1. This Exam paper is composed of three sections (A, B and C). Follow the
instructions given below and answer the indicated questions for a total of
100 marks.
Section B: Among the five (5) questions, attempt any three (3) 30 marks
Section C: Among the two (2) questions, attempt anyone (1) 15 marks
2. Fill in your actual names and Index number on the provided space(Cover).
3. Do not remove or tear any page or part of this Questions and Answers Booklet.
4. Answer in the language in which the Examination is set.
5. In section A, answer questions in the provided space. In case of multiple-
choice questions, just circle the letter corresponding to the correct option.
6. In section B and C, answer questions in the provided space after section C
questions.
7. Allowed materials:
- Blue or Black pen.
- Geometrical Instruments
- Silent non-programmable calculators
2024
2024 - 2025
– 2025 NESANESA (National
(National Examination
Examinations and
and SchoolInspection
School Authority)3
Inspection Authority)
T2-138_Back-End Development and Database
01. Read the sub-questions below and circle the correct answers among the (4Marks)
options given:
i. What is the primary purpose of an Entity-Relationship Diagram (ERD)?
a) To represent data movement in a system
b) To show relationships between entities in a database
c) To define decision-making rules
d) To illustrate user interactions with a system
ii. Why flowcharts are commonly used in system design?
a) To manage computer hardware
b) To visually represent an algorithm or process
c) To define system security policies
d) To create web applications
02. Using the table below match the backend system components with their (3Marks)
correct descriptions:
Component Description Answer
1. API A. Handles business logic between the
1 = ....
user and database.
2. Database server B. Stores and manage data.
2 = ....
03. Circle the letter corresponding to the answer to the sub-questions among (4Marks)
the options given below.
i. Which of the following is a benefit of using data encryption in securing
RESTful APIs?
a) Increase API response time.
b) Ensure data confidentiality during transmission.
c) Reduces the need for authentication.
d) Prevents the use of third-party libraries
2024 2024
– 2025- 2025
NESANESA (National
(National Examination
Examinations and
and SchoolInspection
School Authority) 4
Inspection Authority)
T2-138_Back-End Development and Database
04. Circle the letter corresponding to the answer to the sub-questions among (4Marks)
the options given below.
i.What is the main purpose of an Admin Panel in a CMS?
a) To view website analytics
b) To edit and manage content
c) To manage user comment
d) To design the website layout
ii.Which of the following is commonly used to store content in a CMS?
a) JSON files
b) MySQL databases
c) HTML files
d) PHP scripts
05. Read the questions below and circle the correct answer to each of the (3Marks)
following sub-questions.
i. What is the primary purpose of Flutter's widget Tree in UI design?
a. To store database records
b. To manage application States
c. To define the hierarchical structure of UI components
d. To handle user authentication
ii. Which of the following is NOT a core widget in Flutter?
a. Text
b. Image
c. Button
d. Firewall
2024
2024 - 2025
– 2025 NESANESA (National
(National Examination
Examinations and
and SchoolInspection
School Authority)5
Inspection Authority)
T2-138_Back-End Development and Database
06. Circle the letter corresponding to correct answer to each of the following (4Marks)
sub-questions:
i. Which of the following is required for publishing an App on the Apple
App Store?
a. Developer Profile
b. App Store Connect account
c. Mobile Device with iOS
d. Email account
ii. Which of the following tools is primarily used for submitting Android
apps to Google Play?
a. Xcode
b. Android Studio
c. Google Play Console
d. Eclipse
07. Read the statements below and answer with True (T) if the statement is (4Marks)
correct, or False (F) if the statement is incorrect.
a. MongoDB allows both embedding documents within other documents
and using references between documents to establish relationships……
b. When designing MongoDB collections, the only proper way to establish
relationships is through embedded documents………………………
c. In MongoDB, you should embed documents when the data is frequently
accessed together and has a strong belonging relationship……………..
d. In NoSQL database, data is always stored in a fixed schema like in
relational database………………………….
2024 2024
– 2025- 2025
NESANESA (National
(National Examination
Examinations and
and SchoolInspection
School Authority) 6
Inspection Authority)
T2-138_Back-End Development and Database
08. Circle the letter corresponding to correct answer to each of the following (4Marks)
sub-questions:
i. Which of the following is a characteristic of a normalized table?
a) It must have only one column
b) It should only have primary keys
c) Each column must have atomic values
d) Each record must be stored in a separate database
ii. Which of the following best describes a one-to-many relationship in a
database?
a) One record in a Table A is related to only one record in a Table B.
b) Many records in Table A are related to one record in Table B.
c) One record in Table A can be related to multiple records in Table B.
d) Each record in Table A must match exactly one record in Table B.
09. Circle the correct answer to each of the following questions: (4Marks)
i. Why is it important to use HTTP status codes like 200, 201, and 404 in
a RESTful API?
a. To specify the error message
b. To identify the database schema
c. To inform the client about the outcome of the request
d. To limit the number of API calls
ii. What does the following code snippet do in a Node.js Express app?
app.use((err, req, res, next) => {
res.status(500).send('Something
went wrong!');
});
2024
2024 - 2025
– 2025 NESANESA (National
(National Examination
Examinations and
and SchoolInspection
School Authority)7
Inspection Authority)
T2-138_Back-End Development and Database
10. Using the table below match the testing types in column A with their (4Marks)
corresponding descriptions in column B:
11. Circle the letter corresponding to correct answer to each of the following (5Marks)
sub-questions:
2024 2024
– 2025- 2025
NESANESA (National
(National Examination
Examinations and
and SchoolInspection
School Authority) 8
Inspection Authority)
T2-138_Back-End Development and Database
12. Read the questions below and circle the correct option among the given to (4Marks)
each sub-question.
i. Which of the following is the correct way to insert data into a database
using PDO in PHP?
a) $conn->query("INSERT INTO users VALUES ('John',
'[email protected]')");
b) $conn->prepare("INSERT INTO users (name, email) VALUES (?, ?)");
$conn->execute(['John', '[email protected]'])
c) mysqli_query($conn, "INSERT INTO users VALUES ('John',
'[email protected]')");
d) pdo_insert($conn, "INSERT INTO users (name, email) VALUES (?, ?)",
['John', '[email protected]']);
2024
2024 - 2025
– 2025 NESANESA (National
(National Examination
Examinations and
and SchoolInspection
School Authority)9
Inspection Authority)
T2-138_Back-End Development and Database
14. Referring to knowledge of Mobile App Development, match each feature (4Marks)
from Column A with the appropriate use case in Column B.
16. A hospital wants a database to track patients, doctors and appointments. (10marks)
Analyze the following case study and answer questions that follow:
Each patient has a patientID, Name and Address.
Each Doctor has a DoctorID, Name and Specialty.
Each appointment connects one patient to one Doctor and records the
Date and Time.
Patients
PK patient ID Doctors
Appointments
Name PK patient ID PK doctor ID
PK name
address doctor ID
date Specialty
time
Questions
i. Which type of relationship exists between Patient and Appointments?
ii. Name the primary key in the Patients table
2024
2024 - 2025
– 2025 NESANESA (National
(National Examinationand
Examinations andSchool
School Inspection Authority)11
Inspection Authority)
T2-138_Back-End Development and Database
17. Analyze how different http request methods (GET, POST, PUT, DELETE) (10marks)
would be applied in a mobile application that manages user accounts.
“For each method, explain the specific scenario where it would be
appropriate and highlight potential risks or challenges when handling
server responses for each method.”
18. Bigwi leads a high school project team developing a Node.js backend (10marks)
application for managing student attendance and grading. As the team
approaches the deployment phase, they must choose the most suitable
method to host and run their application. Bigwi is tasked with evaluating
different deployment approaches to help the team decide between setting
up everything manually on a server or using Docker for containerized
deployment.
i. Evaluate Manual Deployment and Docker-based Deployment for a
NodeJS backend application by briefly explaining them, and
discussing their advantages and disadvantages.
ii. Based on your evaluation, recommend which deployment method
would be better for a high school project team and justify your choice.
19. Muneza is developing a PHP-based web application for a local business to (10marks)
manage inventory and sales data. As he begins interacting with database,
she must choose between using MySQLi and PDO for connecting her PHP
application to the database. To decide, Muneza needs to understand how
each method works and weigh their pros and cons.
“Evaluate the use of MySqli and PDO for connecting PHP applications to
a database by explaining each method, and discussing their advantages
and disadvantages.”
20. A company has hired you as a junior database developer to build for them (15marks)
a simple internship management system.
The database should store the following:
Students (student_id, full_name, university, major, phone_number).
Companies (company_id, company_name, industry)
Internship (intership_id, student_id, company_id, start_date, end_date,
internship_status).
i. Create a database InternshipDB and three tables above with
appropriate data types and constraints.
ii. Insert at least one records into each table.
iii. Write a query to find students currently doing internships in the
software industry.
iv. Grant select permission on the students table to a user
intern_manager.
21. A school has hired you to build a simple Bookstore Inventory database (15marks)
using MongoDB for their library. The system should manage:
Tasks:
END
2024
2024 - 2025
– 2025 NESANESA (National
(National Examinationand
Examinations andSchool
School Inspection Authority)13
Inspection Authority)
T2-138_Back-End Development and Database
RESERVED SPACE FOR SECTION B AND C ANSWERS
Do not
iii. Identify the entities, attributes, and relationships needed for write in
this margin
conceptual schema.
iv. Explain how to transform the conceptual design into a logical database
design by listing tables and key constraints.
17. Analyze how different http request methods (GET, POST, PUT, DELETE) (10marks)
would be applied in a mobile application that manages user accounts.
“For each method, explain the specific scenario where it would be
appropriate and highlight potential risks or challenges when handling
server responses for each method.”
18. Bigwi leads a high school project team developing a Node.js backend (10marks)
application for managing student attendance and grading. As the team
approaches the deployment phase, they must choose the most suitable
method to host and run their application. Bigwi is tasked with evaluating
different deployment approaches to help the team decide between setting
up everything manually on a server or using Docker for containerized
deployment.
i. Evaluate Manual Deployment and Docker-based Deployment for a
NodeJS backend application by briefly explaining them, and
discussing their advantages and disadvantages.
ii. Based on your evaluation, recommend which deployment method
would be better for a high school project team and justify your choice.
19. Muneza is developing a PHP-based web application for a local business to (10marks)
manage inventory and sales data. As he begins interacting with database,
she must choose between using MySQLi and PDO for connecting her PHP
application to the database. To decide, Muneza needs to understand how
each method works and weigh their pros and cons.
“Evaluate the use of MySqli and PDO for connecting PHP applications to
a database by explaining each method, and discussing their advantages
and disadvantages.”
20. A company has hired you as a junior database developer to build for them (15marks)
a simple internship management system.
The database should store the following:
Students (student_id, full_name, university, major, phone_number).
Companies (company_id, company_name, industry)
Internship (intership_id, student_id, company_id, start_date, end_date,
internship_status).
i. Create a database InternshipDB and three tables above with
appropriate data types and constraints.
ii. Insert at least one records into each table.
iii. Write a query to find students currently doing internships in the
software industry.
iv. Grant select permission on the students table to a user
intern_manager.
21. A school has hired you to build a simple Bookstore Inventory database (15marks)
using MongoDB for their library. The system should manage:
Tasks:
END
2024
2024 - 2025
– 2025 NESANESA (National
(National Examinationand
Examinations andSchool
School Inspection Authority)15
Inspection Authority)
2023-NESA (National Examination and School Inspection Authority) 7
T2-138_Back-End Development and Database
Do not
write in
iii. Identify the entities, attributes, and relationships needed for this margin
conceptual schema.
iv. Explain how to transform the conceptual design into a logical database
design by listing tables and key constraints.
17. Analyze how different http request methods (GET, POST, PUT, DELETE) (10marks)
would be applied in a mobile application that manages user accounts.
“For each method, explain the specific scenario where it would be
appropriate and highlight potential risks or challenges when handling
server responses for each method.”
18. Bigwi leads a high school project team developing a Node.js backend (10marks)
application for managing student attendance and grading. As the team
approaches the deployment phase, they must choose the most suitable
method to host and run their application. Bigwi is tasked with evaluating
different deployment approaches to help the team decide between setting
up everything manually on a server or using Docker for containerized
deployment.
i. Evaluate Manual Deployment and Docker-based Deployment for a
NodeJS backend application by briefly explaining them, and
discussing their advantages and disadvantages.
ii. Based on your evaluation, recommend which deployment method
would be better for a high school project team and justify your choice.
19. Muneza is developing a PHP-based web application for a local business to (10marks)
manage inventory and sales data. As he begins interacting with database,
she must choose between using MySQLi and PDO for connecting her PHP
application to the database. To decide, Muneza needs to understand how
each method works and weigh their pros and cons.
“Evaluate the use of MySqli and PDO for connecting PHP applications to
a database by explaining each method, and discussing their advantages
and disadvantages.”
20. A company has hired you as a junior database developer to build for them (15marks)
a simple internship management system.
The database should store the following:
Students (student_id, full_name, university, major, phone_number).
Companies (company_id, company_name, industry)
Internship (intership_id, student_id, company_id, start_date, end_date,
internship_status).
i. Create a database InternshipDB and three tables above with
appropriate data types and constraints.
ii. Insert at least one records into each table.
iii. Write a query to find students currently doing internships in the
software industry.
iv. Grant select permission on the students table to a user
intern_manager.
21. A school has hired you to build a simple Bookstore Inventory database (15marks)
using MongoDB for their library. The system should manage:
Tasks:
END
2024
2024 - 2025
– 2025 NESANESA (National
(National Examinationand
Examinations andSchool
School Inspection Authority)17
Inspection Authority)
2023-NESA (National Examination and School Inspection Authority) 7
T2-138_Back-End Development and Database
Do not
write in
iii. Identify the entities, attributes, and relationships needed for this margin
conceptual schema.
iv. Explain how to transform the conceptual design into a logical database
design by listing tables and key constraints.
17. Analyze how different http request methods (GET, POST, PUT, DELETE) (10marks)
would be applied in a mobile application that manages user accounts.
“For each method, explain the specific scenario where it would be
appropriate and highlight potential risks or challenges when handling
server responses for each method.”
18. Bigwi leads a high school project team developing a Node.js backend (10marks)
application for managing student attendance and grading. As the team
approaches the deployment phase, they must choose the most suitable
method to host and run their application. Bigwi is tasked with evaluating
different deployment approaches to help the team decide between setting
up everything manually on a server or using Docker for containerized
deployment.
i. Evaluate Manual Deployment and Docker-based Deployment for a
NodeJS backend application by briefly explaining them, and
discussing their advantages and disadvantages.
ii. Based on your evaluation, recommend which deployment method
would be better for a high school project team and justify your choice.
19. Muneza is developing a PHP-based web application for a local business to (10marks)
manage inventory and sales data. As he begins interacting with database,
she must choose between using MySQLi and PDO for connecting her PHP
application to the database. To decide, Muneza needs to understand how
each method works and weigh their pros and cons.
“Evaluate the use of MySqli and PDO for connecting PHP applications to
a database by explaining each method, and discussing their advantages
and disadvantages.”
20. A company has hired you as a junior database developer to build for them (15marks)
a simple internship management system.
The database should store the following:
Students (student_id, full_name, university, major, phone_number).
Companies (company_id, company_name, industry)
Internship (intership_id, student_id, company_id, start_date, end_date,
internship_status).
i. Create a database InternshipDB and three tables above with
appropriate data types and constraints.
ii. Insert at least one records into each table.
iii. Write a query to find students currently doing internships in the
software industry.
iv. Grant select permission on the students table to a user
intern_manager.
21. A school has hired you to build a simple Bookstore Inventory database (15marks)
using MongoDB for their library. The system should manage:
Tasks:
END
2024
2024 - 2025
– 2025 NESANESA (National
(National Examinationand
Examinations andSchool
School Inspection Authority)19
Inspection Authority)
2023-NESA (National Examination and School Inspection Authority) 7
T2-138_Back-End Development and Database
Do not
write in
Section C: Attempt only one (1) question (15 marks) this margin
______________________________________________________________________________
20. A company has hired you as a junior database developer to build for them (15marks)
a simple internship management system.
The database should store the following:
Students (student_id, full_name, university, major, phone_number).
Companies (company_id, company_name, industry)
Internship (intership_id, student_id, company_id, start_date, end_date,
internship_status).
i. Create a database InternshipDB and three tables above with
appropriate data types and constraints.
ii. Insert at least one records into each table.
iii. Write a query to find students currently doing internships in the
software industry.
iv. Grant select permission on the students table to a user
intern_manager.
21. A school has hired you to build a simple Bookstore Inventory database (15marks)
using MongoDB for their library. The system should manage:
Tasks:
END
conceptual schema.
iv. Explain how to transform the conceptual design into a logical database
design by listing tables and key constraints.
17. Analyze how different http request methods (GET, POST, PUT, DELETE) (10marks)
would be applied in a mobile application that manages user accounts.
“For each method, explain the specific scenario where it would be
appropriate and highlight potential risks or challenges when handling
server responses for each method.”
18. Bigwi leads a high school project team developing a Node.js backend (10marks)
application for managing student attendance and grading. As the team
approaches the deployment phase, they must choose the most suitable
method to host and run their application. Bigwi is tasked with evaluating
different deployment approaches to help the team decide between setting
up everything manually on a server or using Docker for containerized
deployment.
i. Evaluate Manual Deployment and Docker-based Deployment for a
NodeJS backend application by briefly explaining them, and
discussing their advantages and disadvantages.
ii. Based on your evaluation, recommend which deployment method
would be better for a high school project team and justify your choice.
19. Muneza is developing a PHP-based web application for a local business to (10marks)
manage inventory and sales data. As he begins interacting with database,
she must choose between using MySQLi and PDO for connecting her PHP
application to the database. To decide, Muneza needs to understand how
each method works and weigh their pros and cons.
“Evaluate the use of MySqli and PDO for connecting PHP applications to
a database by explaining each method, and discussing their advantages
and disadvantages.”
2024
2024 - 2025
– 2025 NESANESA (National
(National Examinationand
Examinations andSchool
School Inspection Authority)21
Inspection Authority)
2023-NESA (National Examination and School Inspection Authority) 7
T2-138_Back-End Development and Database
Do not
write in
iii. Identify the entities, attributes, and relationships needed for this margin
conceptual schema.
iv. Explain how to transform the conceptual design into a logical database
design by listing tables and key constraints.
17. Analyze how different http request methods (GET, POST, PUT, DELETE) (10marks)
would be applied in a mobile application that manages user accounts.
“For each method, explain the specific scenario where it would be
appropriate and highlight potential risks or challenges when handling
server responses for each method.”
18. Bigwi leads a high school project team developing a Node.js backend (10marks)
application for managing student attendance and grading. As the team
approaches the deployment phase, they must choose the most suitable
method to host and run their application. Bigwi is tasked with evaluating
different deployment approaches to help the team decide between setting
up everything manually on a server or using Docker for containerized
deployment.
i. Evaluate Manual Deployment and Docker-based Deployment for a
NodeJS backend application by briefly explaining them, and
discussing their advantages and disadvantages.
ii. Based on your evaluation, recommend which deployment method
would be better for a high school project team and justify your choice.
19. Muneza is developing a PHP-based web application for a local business to (10marks)
manage inventory and sales data. As he begins interacting with database,
she must choose between using MySQLi and PDO for connecting her PHP
application to the database. To decide, Muneza needs to understand how
each method works and weigh their pros and cons.
“Evaluate the use of MySqli and PDO for connecting PHP applications to
a database by explaining each method, and discussing their advantages
and disadvantages.”
20. A company has hired you as a junior database developer to build for them (15marks)
a simple internship management system.
The database should store the following:
Students (student_id, full_name, university, major, phone_number).
Companies (company_id, company_name, industry)
Internship (intership_id, student_id, company_id, start_date, end_date,
internship_status).
i. Create a database InternshipDB and three tables above with
appropriate data types and constraints.
ii. Insert at least one records into each table.
iii. Write a query to find students currently doing internships in the
software industry.
iv. Grant select permission on the students table to a user
intern_manager.
21. A school has hired you to build a simple Bookstore Inventory database (15marks)
using MongoDB for their library. The system should manage:
Tasks:
END