| Component | Function | Typical examples |
|---|---|---|
| CPU (Central Processing Unit) | Executes instructions, performs calculations | Intel Core i5, AMD Ryzen 5 |
| RAM (Random‑Access Memory) | Temporary storage for data and programs while they are running | 4 GB, 8 GB DDR4 |
| ROM (Read‑Only Memory) / BIOS | Stores firmware that starts the computer | BIOS, UEFI |
| Motherboard | Connects all components, provides buses and slots | ATX, Micro‑ATX |
| Power Supply Unit (PSU) | Converts mains AC to DC for the computer | 450 W, 650 W |
| Graphics Processing Unit (GPU) | Renders images, video and 3‑D graphics | NVIDIA GTX 1660, integrated Intel UHD |
| Storage devices (see §2) |
| Media type | Technology | Typical capacity | Advantages | Disadvantages |
|---|---|---|---|---|
| Magnetic hard‑disk drive (HDD) | Spinning platters, magnetic heads | 500 GB – 4 TB | Large capacity, low cost per GB | Mechanical wear, slower than SSD |
| Solid‑state drive (SSD) | Flash memory chips | 120 GB – 2 TB | Fast access, no moving parts | Higher cost per GB |
| Optical disc (CD/DVD/BD) | Laser‑etched pits | 700 MB – 100 GB | Portable, inexpensive for distribution | Limited rewrite cycles, slower access |
| USB flash drive | Flash memory, USB interface | 4 GB – 256 GB | Very portable, plug‑and‑play | Easy to lose, limited lifespan |
| Cloud storage | Remote servers accessed via Internet | Variable (pay‑as‑you‑go) | Accessible from any device, automatic backup | Requires Internet, ongoing cost |
| Device | Data type | Advantages | Disadvantages |
|---|---|---|---|
| Keyboard | Alphanumeric, control keys | Fast, accurate for text | Requires typing skill |
| Mouse / Touchpad | Pointing, clicking | Intuitive for GUI navigation | Not suitable for text entry |
| Scanner | Images, printed text (OCR) | Digitises paper documents | Requires software to interpret |
| Digital camera / webcam | Images, video | Capture visual information | Large file sizes |
| Microphone | Audio | Voice input, recordings | Background noise issues |
| Barcode reader | Alphanumeric (encoded) | Fast data entry, reduces errors | Limited to bar‑coded items |
| Sensor (e.g., temperature, motion) | Numeric, binary | Automates data collection | Requires calibration |
| Device | Output type | Advantages | Disadvantages |
|---|---|---|---|
| Monitor (LCD/LED) | Visual – text, graphics, video | Immediate feedback, high resolution | Eye strain if used long |
| Printer (laser/inkjet) | Hard copy – text, images | Permanent records, useful for reports | Consumables cost, slower than screen |
| Speaker / headphones | Audio – speech, music | Useful for alerts, multimedia | Can be disruptive in shared spaces |
| Plotter | Large‑scale graphics (architectural, engineering) | High‑quality line drawings | Specialised, expensive |
| Topology | Layout | Pros | Cons |
|---|---|---|---|
| Star | All nodes connect to a central switch/router | Easy to manage, single point of failure for each link only | Central device failure disables whole network |
| Bus | All nodes share a single backbone cable | Simple, cheap cabling | Hard to isolate faults, limited bandwidth |
| Ring | Each node connects to two neighbours forming a circle | Predictable performance | Failure of one node breaks the ring (unless using dual ring) |
| Mesh | Multiple redundant paths between nodes | High reliability | Expensive, complex cabling |
| Domain | Application example | Key ICT features used |
|---|---|---|
| Business & finance | Online banking, accounting software | Database, secure transactions, e‑payment gateways |
| Education | Virtual learning environment (VLE) | Web‑based content, forums, assessment tools |
| Healthcare | Electronic patient records | Data security, searchable databases, reporting |
| Retail | E‑commerce website | Shopping cart, online payment, inventory database |
| Manufacturing | Computer‑controlled CNC machines | Automation, sensors, real‑time monitoring |
| Transportation | GPS tracking and routing | Geographic information systems, real‑time data |
| Media & entertainment | Streaming services | Compression, bandwidth management, user profiles |
| Question | Purpose |
|---|---|
| How do you currently record exam scores? | Identify existing method (paper, spreadsheet, etc.) |
| Which users need to view the results? | Define user groups (teachers, pupils, parents, admin) |
| What reports are required? | Specify output formats (class list, summary chart) |
| How often are results updated? | Determine frequency and validation needs |
| Requirement | Type | Priority |
|---|---|---|
| Store each pupil’s exam score | Functional | High |
| Generate a printable PDF report per class | Functional | Medium |
| System must run on existing school PCs | Non‑functional | High |
| Response time for a class report ≤ 2 seconds | Non‑functional | Low |
| Field Name | Data Type | Length (bytes) | Example | Validation Rule |
|---|---|---|---|---|
| StudentID | Alphanumeric | 8 | AB123456 | Presence; unique; pattern ^[A-Z]{2}\d{6}$ |
| FirstName | Alphanumeric | 20 | Emma | Presence; length ≤ 20 |
| LastName | Alphanumeric | 20 | Brown | Presence; length ≤ 20 |
| DateOfBirth | Date (YYYY‑MM‑DD) | 10 | 2005-04-12 | Presence; valid date; not future |
| Score | Numeric (integer) | 3 | 85 | Presence; numeric; range 0‑100 |
Total record length \(L = \sum{i=1}^{n} li\) where \(l_i\) is the length of field \(i\).
Chosen format for the case study: CSV file with columns in the order shown in the table above. CSV can be created in spreadsheet software and parsed easily.
Required outputs for the school system:
Validation enforces the rules defined in the design stage.
| Field | Rule | Reason |
|---|---|---|
| StudentID | Presence, pattern, uniqueness | Identifies the record uniquely. |
| FirstName / LastName | Presence, length ≤ 20 | Prevents truncation and blank names. |
| DateOfBirth | Presence, valid date, not future | Ensures realistic ages. |
| Score | Presence, numeric, range 0‑100 | Score must be a valid exam mark. |
IF StudentID = "" THEN
DISPLAY "Student ID is required"
ELSIF NOT MATCH(StudentID, "^[A-Z]{2}\d{6}$") THEN
DISPLAY "Student ID must be 2 letters followed by 6 digits"
ELSIF EXISTS(StudentID) THEN
DISPLAY "Student ID already exists"
END IF
IF LEN(FirstName) = 0 THEN
DISPLAY "First name is required"
ELSIF LEN(FirstName) > 20 THEN
DISPLAY "First name cannot exceed 20 characters"
END IF
IF NOT ISDATE(DateOfBirth) OR DateOfBirth > TODAY() THEN
DISPLAY "Enter a valid date of birth"
END IF
IF NOT ISNUMERIC(Score) THEN
DISPLAY "Score must be a number"
ELSIF Score < 0 OR Score > 100 THEN
DISPLAY "Score must be between 0 and 100"
END IF
required, pattern, min/max) and server‑side checks.| Test ID | Test Description | Input Data | Expected Result | Actual Result | Pass/Fail | Remarks |
|---|---|---|---|---|---|---|
| T01 | Valid record import | CSV row with correct data | Record stored, no error | |||
| T02 | Score out of range | Score = 105 | Validation error “Score must be between 0 and 100” | |||
| T03 | Missing StudentID | StudentID = "" | Validation error “Student ID is required” | |||
| T04 | Boundary test – Score = 0 | Score = 0 | Record accepted | |||
| T05 | Boundary test – Score = 100 | Score = 100 | Record accepted |
For each test case fill the “Actual Result” column, compare with “Expected Result”, and note any remedial action (e.g., fix validation logic, adjust field length).
| Method | How it works | Advantages | Disadvantages |
|---|---|---|---|
| Direct changeover | Old system is switched off and the new one starts immediately. | Fast, low cost. | High risk – if the new system fails there is no fallback. |
| Parallel | Both old and new systems run together for a period. | Low risk – errors can be caught by comparing results. | More expensive; double data entry may be needed. |
| Pilot | New system is introduced to a small group (e.g., one year‑group). | Allows real‑world testing and user feedback. | May delay full roll‑out. |
| Phased | System is introduced module by module (e.g., first input, then reporting). | Gradual learning curve; issues isolated to a module. | Longer overall implementation time. |
Recommended approach for the school exam‑record system: a pilot in one year‑group, followed by a phased roll‑out to the remaining years. This limits disruption and provides feedback before full deployment.
| Criterion | Specification | Actual Result | Judgement |
|---|---|---|---|
| All required fields captured | Yes | Yes | Pass |
| Report generation time | ≤ 2 s | 1.8 s (average) | Pass |
| User‑error rate (validation failures) | ≤ 5 % of entries | 3 % | Pass |
| System uptime during pilot | ≥ 99 % | 99.5 % | Pass |
| Documentation completeness | All sections present, clear language | Met | Pass |
| Measure | Purpose | Example |
|---|---|---|
| Passwords & authentication | Prevent unauthorised access | Minimum 8 characters, mixed case, numbers, symbols |
| Firewalls | Block unwanted network traffic | Windows Defender Firewall, router ACLs |
| Antivirus / anti‑malware | Detect and remove malicious software | Windows Defender, Avast |
| Two‑factor authentication (2FA) | Add a second verification step | SMS code, authenticator app |
| Encryption | Protect data in transit and at rest | HTTPS for web traffic, AES‑256 for file storage |
State clearly what the system is intended to achieve – e.g., “to record, store and report exam results efficiently, reducing manual paperwork and errors”.
School/Year5/Exams/2025/.YYYYMMDDSubjectClass.ext (e.g., 20250412MathY5A.csv).Your generous donation helps us continue providing free Cambridge IGCSE & A-Level resources, past papers, syllabus notes, revision questions, and high-quality online tutoring to students across Kenya.