Syllabus & Assessment
H2 Computing (Syllabus 9569)
The syllabus aims to develop problem-solving and computational thinking skills in students, as well as 21st Century Competencies that will help them to adapt to advancements in the field of computing and global changes impacting the workplace and society. Students will acquire fundamental knowledge in core areas of computing and draw connections to real-world problems by applying these knowledge, skills and attitudes to solve a variety of authentic learning tasks.
Section 1: Algorithms & Data Structures
1.1 Algorithmic Representation
Pseudocode, Flowchart, Control structures: Sequence, Selection, Iteration
Decision tables, Modular design
1.2 Fundamental Algorithms
Sorting algorithms (Insertion, Bubble, Quicksort, Merge)
Searching algorithms (Linear, Binary, Hash table)
Big-O notation
1.3 Data Structures
Memory allocation, stack, queue, linear linked list, binary search tree
Section 2: Programming
2.1 Coding Standards and Good Programming Style
Indentation, white spaces
Naming conventions (e.g. meaningful identifier names)
Comments
2.2 Programming Elements and Constructs
Data Types, Mathematical operations, Functions and procedures
Sequence, selection and iteration
Recursion
2.3 Implementing Algorithms and Data Structures
Implement Insertion sort, Bubble sort, Quicksort, Merge sort
Implement Linear search, Binary search, Hash table search
Write programs to implement operations for stacks, queues (linear and circular), linear linked lists and binary search trees
File operations (serial and sequential text files)
2.4 Data Validation and Program Testing
Data validation and data verification
Data validation techniques
Syntax, logic and runtime errors
Testing and debugging
2.5 Fundamentals of Object-Oriented Programming
Classes and objects
Encapsulation, information hiding and implementation independence
Inheritance and software reusability
Polymorphism and code generalisation
Section 3: Data & Information
3.1 Data Representation
Understanding denary, binary and hexadecimals
Implement programs to convert positive integers between different number bases: denary, binary and hexadecimal forms; and display results
3.2 Character Encoding
ASCII code and Unicode
3.3 Databases and Data Management
Relational database
NoSQL database
Privacy and integrity of data
Data protection
3.4 Social, Ethical, Legal and Economic Issues
Conduct of Computing professionals
Impact of Computing in real-life situations
Social, ethical, legal, and economic issues of computing and technology
Section 4: Computer Networks
4.1 Fundamentals of Computer Networks
LAN, WAN, intranet and the internet
IP addressing and domain name server
Communication protocols
Data transmission in packet-switching network
Client-server architecture
Implement socket programming
4.2 Web Applications
Develop web applications and apply usability principles for targeted audience
4.3 Network Security
Threats to computers and networks
Firewall, intrusion detection system (IDS), intrusion prevention system (IPS)
Encryption, digital signature, authentication to ensure network security
Assessment
Students will demonstrate computational thinking in a range of real-world problems requiring computing solutions. They will be familiar with and can apply fundamental algorithms and data structures; be able to comment on the social, ethical, legal and economic consequences of computing; understand good design principles and implementation considerations for computing solutions.
All candidates will offer Paper 1 and Paper 2. All questions are compulsory in both papers.