1.1 Data representation
Candidates
should be able to:
1.1.1
Binary systems
•
recognise the use of binary numbers in computer systems
•
convert denary numbers into binary and binary numbers into denary
•
show understanding of the concept of a byte and how the byte is used to measure
memory size
•
use binary in computer registers for a given application (such as in robotics,
digital instruments
and
counting systems)
1.1.2
Hexadecimal
•
represent integers as hexadecimal numbers
•
show understanding of the reasons for choosing hexadecimal to represent numbers
•
convert positive hexadecimal integers to and from denary
•
convert positive hexadecimal integers to and from binary
•
represent numbers stored in registers and main memory as hexadecimal
•
identify current uses of hexadecimal numbers in computing, such as defining
colours in Hypertext
Markup
Language (HTML), Media Access Control (MAC) addresses, assembly languages and
machine
code, debugging
1.1.3
Data storage
•
show understanding that sound (music), pictures, video, text and numbers are
stored in different
formats
•
identify and describe methods of error detection and correction, such as parity
checks, check
digits,
checksums and Automatic Repeat reQuests (ARQ)
•
show understanding of the concept of Musical Instrument Digital Interface
(MIDI) files, jpeg files,
MP3
and MP4 files
•
show understanding of the principles of data compression (lossless and lossy
compression
algorithms)
applied to music/video, photos and text files
1.2 Communication and Internet technologies
Candidates
should be able to:
1.2.1
Serial and parallel data transmission
•
show understanding of what is meant by transmission of data
•
distinguish between serial and parallel data transmission
•
show understanding of the reasons for choosing serial or parallel data
transmission
•
show understanding of the need to check for errors
•
explain how parity bits are used for error detection
•
identify current uses of serial and parallel data transmission, such as
Integrated Circuits (IC) and
Universal
Serial Bus (USB)
1.2.2
Security aspects
•
show understanding of the security aspects of using the Internet and understand
what methods
are
available to help minimise the risks
•
show understanding of the Internet risks associated with malware, including
viruses, spyware and
hacking
•
explain how anti-virus and other protection software helps to protect the user
from security risks
(this
also links into section 1.4 of the syllabus)
1.2.3
Internet principles of operation
•
show understanding of the role of the browser and Internet server
•
show understanding of what is meant by hypertext transfer protocol (http) and
HTML
•
distinguish between HTML structure and presentation
•
show understanding of the concept of MAC address, Internet Protocol (IP)
address and cookies
1.3 Hardware and software
Candidates
should be able to:
1.3.1
Logic gates
•
use logic gates to create electronic circuits
•
understand and define the functions of NOT, AND, OR, NAND, NOR and XOR (EOR)
gates,
including
the binary output produced from all the possible binary inputs (all gates,
except the NOT
gate,
will have 2 inputs only)
•
draw truth tables and recognise a logic gate from its truth table
•
recognise and use the following standard symbols used to represent logic gates:
NOT
AND OR NAND NOR XOR
•
produce truth tables for given logic circuits, for example:
a
b c out
0
0 0
0
0 1
0
1 0
0
1 1
1
0 0
1
0 1
1
1 0
1
1 1
•
produce a logic circuit to solve a given problem or to implement a given
written logic statement,
such
as IF (switch A is NOT on) OR (switch B is on AND switch C is NOT on) then
alarm, X,
sounds
1.3.2
Computer architecture and the fetch-execute cycle
•
show understanding of the basic Von Neumann model for a computer system and the
stored
program
concept (program instructions and data are stored in main memory and
instructions are
fetched
and executed one after another)
•
describe the stages of the fetch-execute cycle
1.3.3
Input devices
•
describe the principles of operation (how each device works) of a range of
input devices
including
2D and 3D scanners, barcode readers, digital cameras, keyboards, mice, touch
screens,
microphones
•
describe how these principles are applied to real-life scenarios, for example:
scanning of
passports
at airports, barcode readers at supermarket checkouts, and touch screens on
mobile
devices
•
describe how a range of sensors can be used to input data into a computer
system, including
light,
temperature, magnetic field, gas, pressure, moisture, humidity,
pH/acidity/alkalinity and
motion/infra-red
•
describe how these sensors are used in real-life scenarios, for example: street
lights, security
devices,
pollution control, games, and household and industrial applications
1.3.4
Output devices
•
describe the principles of operation of a range of output devices, including:
inkjet, laser and 3D
printers;
2D and 3D cutters; speakers and headphones; actuators; flat-panel display
screens,
including
Liquid Crystal Display (LCD) and Light-Emitting Diodes (LED); and LCD
projectors and
Digital
Light Projectors (DLP)
•
describe how these principles are applied to real-life scenarios for example:
printing single items
on
demand or in large volumes; banks of digital displays; use of small screens on
mobile devices;
smart
boards
1.3.5
Memory, storage devices and media
•
show understanding of the difference between: primary, secondary and off-line
storage and
provide
examples of each, such as, primary: Read Only Memory (ROM), Random Access
Memory
(RAM)
and DVD-RAM; secondary: hard disk drive (HDD) and Solid State Drives (SSDs);
off-line:
Digital
Versatile Disks (DVDs), Compact Disks (CDs), Blu-ray, USB flash memory and
removable
disks
•
describe the principles of operation of a range of types of storage devices and
media including
magnetic,
optical and solid state
•
describe how these principles are applied to currently available storage
solutions, such as SSDs,
hard
disk drives, USB flash memory, DVDs, CDs and Blu-ray
•
calculate the storage requirement of a file
1.3.6
Operating systems
•
describe the purpose of an operating system
•
show understanding of the need for interrupts
1.3.7
High- and low-level languages and their translators
•
show understanding of the need for both high-level and low-level languages
•
show understanding of the need for compilers when translating programs written
in a high-level
language
•
show understanding of the use of interpreters with high-level language programs
•
show understanding of the need for assemblers when translating programs written
in assembly
language
1.4 Security
Candidates
should be able to:
1.4.1
•
show understanding of the need to keep data safe from accidental damage,
including corruption
and
human errors
•
show understanding of the need to keep data safe from malicious actions,
including unauthorised
viewing,
deleting, copying and corruption
1.4.2
•
show understanding of how data are kept safe when stored and transmitted,
including:
○
use
of passwords, both entered at a keyboard and biometric
○
use
of firewalls, both software and hardware, including proxy servers
○
use
of Secure Socket Layer (SSL)
○
use
of symmetric encryption (plain text, cypher text and use of a key) showing
understanding
that
increasing the length of a key increases the strength of the encryption
1.4.3
•
show understanding of the need to keep online systems safe from attacks
including denial of
service
attacks, phishing, pharming
1.4.4
•
describe how the knowledge from 1.4.1, 1.4.2 and 1.4.3 can be applied to
real-life scenarios
including,
for example, online banking, shopping
1.5 Ethics
Candidates
should be able to:
•
show understanding of computer ethics, including copyright issues and
plagiarism
•
distinguish between free software, freeware and shareware
•
show understanding of the ethical issues raised by the spread of electronic
communication and
computer
systems, including hacking, cracking and production of malware
Section
2 Practical Problem-solving and Programming
2.1 Algorithm design and problem-solving
Candidates
should be able to:
2.1.1
Problem-solving and design
•
show understanding that every computer system is made up of sub-systems, which
in turn are
made
up of further sub-systems
•
use top-down design, structure diagrams, flowcharts, pseudocode, library
routines and sub-
routines
•
work out the purpose of a given algorithm
•
explain standard methods of solution
•
suggest and apply suitable test data
•
understand the need for validation and verification checks to be made on input
data (validation
could
include range checks, length checks, type checks and check digits)
•
use trace tables to find the value of variables at each step in an algorithm
•
identify errors in given algorithms and suggest ways of removing these errors
•
produce an algorithm for a given problem (either in the form of pseudocode or
flowchart)
•
comment on the effectiveness of a given solution
2.1.2
Pseudocode
•
understand and use pseudocode for assignment, using
←
•
understand and use pseudocode, using the following conditional statements:
IF
... THEN ... ELSE ... ENDIF
CASE
... OF ... OTHERWISE ... ENDCASE
•
understand and use pseudocode, using the following loop structures:
FOR
... TO ... NEXT
REPEAT
... UNTIL
WHILE
... DO ... ENDWHILE
•
understand and use pseudocode, using the following commands and statements:
INPUT
and
OUTPUT
(e.g.
READ
and
PRINT
)
totalling
(e.g.
Sum
←
Sum
+
Number
)
counting
(e.g.
Count
←
Count
+
1
)
(Candidates
are advised to try out solutions to a variety of different problems on a
computer using a
language
of their choice; no particular programming language will be assumed in this
syllabus.)
Section
2 Practical Problem-solving and Programming
2.1
Algorithm design and problem-solving
Candidates
should be able to:
2.1.1
Problem-solving and design
•
show understanding that every computer system is made up of sub-systems, which
in turn are
made
up of further sub-systems
•
use top-down design, structure diagrams, flowcharts, pseudocode, library
routines and sub-
routines
•
work out the purpose of a given algorithm
•
explain standard methods of solution
•
suggest and apply suitable test data
•
understand the need for validation and verification checks to be made on input
data (validation
could
include range checks, length checks, type checks and check digits)
•
use trace tables to find the value of variables at each step in an algorithm
•
identify errors in given algorithms and suggest ways of removing these errors
•
produce an algorithm for a given problem (either in the form of pseudocode or
flowchart)
•
comment on the effectiveness of a given solution
2.1.2
Pseudocode
•
understand and use pseudocode for assignment, using
←
•
understand and use pseudocode, using the following conditional statements:
IF
... THEN ... ELSE ... ENDIF
CASE
... OF ... OTHERWISE ... ENDCASE
•
understand and use pseudocode, using the following loop structures:
FOR
... TO ... NEXT
REPEAT
... UNTIL
WHILE
... DO ... ENDWHILE
•
understand and use pseudocode, using the following commands and statements:
INPUT
and
OUTPUT
(e.g.
READ
and
PRINT
)
totalling
(e.g.
Sum
←
Sum
+
Number
)
counting
(e.g.
Count
←
Count
+
1
)
(Candidates
are advised to try out solutions to a variety of different problems on a
computer using a
language
of their choice; no particular programming language will be assumed in this
syllabus.)
2.2
Programming
Candidates
should be able to:
2.2.1
Programming concepts
•
declare and use variables and constants
•
understand and use basic data types: Integer, Real, Char, String and Boolean
•
understand and use the concepts of sequence, selection, repetition, totalling
and counting
•
use predefined procedures/functions
2.2.2
Data structures; arrays
•
declare the size of one-dimensional arrays, for example: A[1:n]
•
show understanding of the use of a variable as an index in an array
•
read values into an array using a
FOR
... TO ... NEXT
loop
2.3
Databases
Candidates
should be able to:
•
define a single-table database from given data storage requirements
•
choose a suitable primary key for a database table
•
perform a query-by-example from given search criteria
7.
Description of components
7.1
Scheme of assessment
All
candidates need to demonstrate basic levels of knowledge and understanding. To
do this, they need to
recall
information and either apply that information or explain it. All candidates
also need to demonstrate
some
level of problem-solving and practical skills. This will require them to show
their ability to comprehend
and
analyse computational tasks and design, implement, test and evaluate solutions
using a variety of
methods.
Component
1: Paper 1 Theory
This
is a compulsory question paper, consisting of short-answer and structured
questions set on Section 1
of
the syllabus. Candidates must answer all questions. Candidates will answer on
the question paper.
Component
2: Paper 2 Problem-solving and Programming
This
is a compulsory question paper, consisting of short-answer and structured
questions set on Section 2
of
the syllabus. Candidates must answer all questions. Candidates will answer on
the question paper.
20
of the marks in this paper are from questions set on tasks provided in the
Paper 2 Problem-solving and
Programming
pre-release materials.
Centres
should spend approximately 50% of the total time studying this section of the
syllabus. Centres
should
ensure that candidates are taught the contents of this section in a largely
practical way. Candidates
will
be expected to be able to program in a high-level programming language to be
chosen by the Centre.
The
programming language should be procedural. There will be some examining of
knowledge with
understanding,
but the bulk of the credit will be for using techniques and skills to solve
problems. In all
cases
the logic will be of more importance than the syntax.
7.2
Paper
2 Problem-solving and Programming pre-release
materials
The
Paper 2 Problem-solving and Programming pre-release materials will be made
available to Centres six
months
before the exam. Centres are advised to encourage their candidates to develop
solutions to tasks
using
a high-level programming language, such as Visual Basic, Pascal/Delphi or
Python. The purpose of the
pre-release
material tasks is to direct candidates to some of the topics which will be
examined in Paper 2.
Teachers
are expected to incorporate these tasks into their lessons and give support in
finding methods and
reaching
solutions. 20 of the marks in this paper will be from questions testing
candidates’ understanding
gained
from developing programmed solutions to these tasks. The tasks will be
appropriate for all ability
levels.
The
exam questions will require candidates to have practical programming experience
including writing their
own
programs, executing (running), testing and debugging them. Knowledge of
programming language
syntax
will not be examined. The higher ability candidates are to be encouraged to
extend their practical
programming
beyond the scope of these tasks
No comments:
Post a Comment