2026 JPJC Computing Prelim P1 final
Uploaded by Kozak327 · 4 October 2026
Preview
Text from the first pagesName:____________________________________ Class:_____________ JURONG PIONEER JUNIOR COLLEGE JC2 Preliminary Examination 2026 COMPUTING 9569/01 Higher 2 16 September 2026 Paper 1 (Written) 3 hours Additional materials: 12-page Answer Booklet Answer all the questions. Approved calculators are allowed. You are reminded of the need for clear presentation in your answers. Answer papers will be provided with the question paper. Write your name and civics class on all the work that you hand in. Write in dark blue or black pen on both sides of the paper. You may use an HB pencil for any diagrams or graphs. Do not use staples, paper clips, glue or correction fluid. Write your answers to every question on a fresh page of paper. The number of marks is given in brackets [ ] at the end of each question or part question. The total number of marks for this paper is 100. This document consists of 11 printed pages and 1 blank page. [Turn over
2 1 JPStream is a hybrid teaching platform used by JPJC. The platform can record students’ course enrolment. It can also track students that attend lessons that are conducted on-campus or streamed online. The company maintains two types of data storage: Relational Database (RDBMS): Stores structured data such as user accounts, courses, class sessions, enrolments, and attendance. Non-relational Database (NoSQL DB): Stores unstructured or semi-structured data such as real-time activity logs (e.g. “joined session”, “left session”, “played video”) and device information. Any student who wishes to use JPStream must register for an account. The company wants to store core data in a relational database with the following requirements: 1. Each student has their student ID and name. 2. Each course has a course ID and name. 3. Session records details of each scheduled live lesson for a course, namely, session ID, course ID, session date, start time, and delivery mode (eg. online or on-campus). 4. Enrolment records details of each student’s course enrolment, namely, student ID, course ID, enrolment date, and status (eg. Active or Withdrawn). 5. Attendance records details of a student’s attendance of a session. It includes the time the student joins the session, which will be used to update the punctuality (eg. Present or Late).
3 (a) At present, a junior developer has proposed using a single table called ClassParticipation to store all information about students, courses, sessions, enrolments, and attendance. (i) A table description can be expressed as: TableName(Attribute1, Attribute2, Attribute3, …) The primary key is indicated by underlining one or more attributes. Foreign keys are indicated by using a dashed underline. An attribute that is both a primary and foreign key will have both solid and dotted lines, ie. Attribute. Write the table description for the SINGLE table described above in First Normal Form (1NF). (ii) Explain one limitation of using this single 1NF table design and why there is a need to further normalise it into multiple related tables. (iii) Draw an entity-relationship (ER) diagram to show the FIVE tables in Third Normal Form (3NF) and the relationship(s) between them. (iv) Write the table descriptions for the FIVE tables in 3NF identified in part (a) (iii) [2] [2] [3] [3] (b) Using tables created, write SQL statements for the following queries: (i) Display the student ID and the total number of lesson sessions attended, for each student who has attended at least one session. (ii) Display the top three students who attended the most live lesson sessions, sorted from highest to lowest number of attendances. Show their student ID, name and corresponding attendance count. [3] [3] [Turn over
4 (c) The real-time activity logs are stored in a NoSQL document database (e.g. MongoDB) using the following document structure: { "studentID": "ST12345", "sessionID": "S67890", "eventType": "JOIN_SESSION", "deviceInfo": { "type": "mobile", "os": "Android" }, "networkQuality": "poor", "timestamp": "2025-07-15T13:45:00Z" } (i) Explain one advantage of using a NoSQL database instead of a relational database for storing high-volume, high-frequency activity logs like the above. (ii) Describe one scenario where the relational database design is still preferable for JPStream, even though NoSQL is available. [2] [2]
5 2 A company is developing a simulation to model a fleet of delivery vehicles. Vehicles are categorised as Vans, Motorbikes or Bicycles. For each vehicle, the following items of data are stored: ● a unique registration number ● status (active or inactive) ● distance travelled today, in km (an integer between 0 and 300 inclusive) ● efficiency score (initialised to a random number between 50 and 100 inclusive) For each van, the additional data item stored is: ● fuel used today, in litres (an integer between 5 and 50 inclusive) For each motorbike, the additional data item stored is: ● fuel used today, in litres (an integer between 1 and 10 inclusive) For each bicycle, there is no additional data items stored. The simulation runs one day at a time. During each day, the efficiency score of a vehicle is recalculated: ● a van's efficiency score decreases by subtracting the fuel used today, multiplied by 2 ● a motorbike's efficiency score is modified by adding the distance travelled today and then subtracting the fuel used today, multiplied by 3 ● a bicycle's efficiency score increases by 1 If the efficiency score is less than or equal to 0, the vehicle's status is set to inactive (it requires servicing). Object-oriented programming will be used to model the simulation. (a) Draw a class diagram that shows the following for the simulation described above: ● the superclass ● any subclasses ● inheritance ● attributes ● appropriate methods [8] (b) Define what is meant by instantiation. [1] (c) (i) Describe encapsulation using an example from the simulation. (ii) Describe inheritance using an example from the simulation. (iii) Describe polymorphism using an example from the simulation. [2] [2] [2] [Turn over
6 (d) Copy and complete the table below to give an appropriate example of each type of test data that can be used to test the input of fuel used today for a van. Type of test Test data Normal Abnormal Extreme [3] (e) State two benefits of using a superclass and inheritance in this simulation, rather than writing three separate, unrelated classes. [2]
7 3 JP cafe is developing a digital menu system to improve order processing. For each menu item, the system stores the year the item was introduced. The introduction year of a menu item is expected to be from 1990 to 2090. Range-size mapping is a technique for efficiently storing a value that is known to fall within a fixed range. Instead of storing the value itself, the offset from the minimum value is stored (e.g., a year could be stored as year − 1990), so only enough bits to represent the number of possible values in the range are needed, rather than enough bits to represent the largest value directly. That is, you store the offset from the minimum: storedValue = actualValue − minValue And recover the original value later using: actualValue = storedValue + minValue (a) With workings shown clearly, calculate the minimum number of bits needed to effectively represent the given year range. [3] (b) During development of the cafe’s software, the programmer must convert values between different number bases for the purpose of testing. With workings shown clearly, convert the following numbers from one base to another: (i) 15610 to binary, (ii) 100101102 to denary, (iii) 1101110012 to hexadecimal. [2] [2] [1] [Turn over
8 4 The notifications of an operating system are managed and stored in a linked list data structure that is implemented using a fixed-size array
Content continues in the PDF. Download PDF
Related notes
- NYJC 2026 Prelim P2Exam Papers · 2026
- NYJC 2026 Prelim P1Exam Papers · 2026
- DHS 2026 Y6 H2 Computing Prelim Paper 2_finalExam Papers · 2026
- ACJC 2026 JC2 Computing Prelim Paper 2 (Practical)Exam Papers · 2026
- 2026_NJC Prelim_Computing_P2.pdfExam Papers · 2026
- 2026_JPJC_Computing_Prelim_P2_finalExam Papers · 2026
- 2026_JPJC_Computing_Prelim_P1_markschemeExam Papers · 2026
- 2026 ACJC Prelim Computing Paper 2Exam Papers · 2026
- 2024 ACJC Computing PromoExam Papers · 2024
- 2023 ACJC Promo QPExam Papers · 2023
- 2022 ACJC Computing Promo Paper 2Exam Papers · 2022
- 2021 ACJC Computing Promo Paper 2Exam Papers · 2021
- See all H2 Computing notes

