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
Developing Software
Programming
Networks
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:
- Explain the difference between a virus and a worm.
- Describe the five stages of the SDC.
- Construct a trace table for a given algorithm.
- Design a flowchart for a number guessing game.
- Compare client/server and peer-to-peer network models.
- Justify your choice of network topology for a given scenario.
- Analyse test data and explain why boundary testing is important.