Unit 4 Study Guide

A comprehensive review of all Unit 4 content for exam preparation.

Unit Overview

Unit 4 builds on Unit 3 by developing software solutions, programming skills, and networking concepts. Students apply the software development cycle (SDC), create algorithms, and explore network communications.

Core Knowledge Areas

Key Skills Checklist

Developing Software

  • Describe different software types (OS, utility, application)
  • Compare software licensing models (freeware, open source, shareware)
  • Apply the SDC stages to solve programming problems
  • Document solutions with clear explanations

Programming

  • Use appropriate data types for different values
  • Apply control structures: sequence, selection, iteration
  • Write algorithms using pseudocode and flowcharts
  • Create and use trace tables to check logic
  • Select appropriate test data (normal, boundary, invalid)
  • Identify and fix syntax, logic, and runtime errors

Networks and Communications

  • Identify and explain network hardware components
  • Distinguish between PAN, LAN, and WAN
  • Compare client/server and peer-to-peer models
  • Describe network topologies (star, bus, ring)
  • Explain transmission media and email protocols
  • Identify security threats and protection methods

Quick Reference Definitions

SDC
Software Development Cycle - State the problem, Plan and design, Develop, Test, Evaluate.
Trace Table
A table used to step through code manually, tracking variable values at each step.
Router vs Switch
Router connects different networks; Switch connects devices within one network.
SMTP
Simple Mail Transfer Protocol - used for sending emails (outgoing).
POP3 vs IMAP
POP3 downloads and deletes from server; IMAP syncs across devices and keeps on server.
Virus vs Worm
Virus needs user action to spread; Worm self-replicates automatically across networks.

Common Mistakes to Avoid

  • ❌ Only using valid test data (must include normal, boundary, AND invalid)
  • ❌ Confusing protocols with transmission media
  • ❌ Forgetting decision labels (Yes/No) on flowchart diamonds
  • ❌ Using = instead of ← for assignment in pseudocode
  • ❌ Mixing up WHILE (pre-condition) with REPEAT-UNTIL (post-condition)

Practice Prompts

Use these prompts to test your knowledge:

  1. Explain the difference between a virus and a worm.
  2. Describe the five stages of the SDC.
  3. Construct a trace table for a given algorithm.
  4. Design a flowchart for a number guessing game.
  5. Compare client/server and peer-to-peer network models.
  6. Justify your choice of network topology for a given scenario.
  7. Analyse test data and explain why boundary testing is important.

Self-Assessment Checklist