[go: up one dir, main page]

0% found this document useful (0 votes)
28 views19 pages

795 Comp Science AL

The document outlines the syllabus for the Advanced Level Computer Science examination by the Cameroon GCE Board, emphasizing the importance of computer science in problem-solving and its integration into various disciplines. It details the examination structure, including theory and practical components, and the aims of the syllabus, which include providing a conceptual basis for further studies and exploring the societal impact of computers. Additionally, it specifies prerequisites, core content areas, and assessment methods to ensure candidates are well-prepared for careers in IT and related fields.

Uploaded by

arseneguekoue
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views19 pages

795 Comp Science AL

The document outlines the syllabus for the Advanced Level Computer Science examination by the Cameroon GCE Board, emphasizing the importance of computer science in problem-solving and its integration into various disciplines. It details the examination structure, including theory and practical components, and the aims of the syllabus, which include providing a conceptual basis for further studies and exploring the societal impact of computers. Additionally, it specifies prerequisites, core content areas, and assessment methods to ensure candidates are well-prepared for careers in IT and related fields.

Uploaded by

arseneguekoue
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 19

CAMEROON GENERAL CERTIFICATE OF EDUCATION (GCE) BOARD A/L 795 omputer 2011

CAMEROON GENERAL CERTIFICATE OF EDUCATION BOARD

795 Computer Science


1. Introduction
The discipline of computer science focuses on understanding of how requisite tools and their operating
environment are designed and controlled for efficient solutions to problems. It sits on a continuum that
overlaps with assorted disciplines is thus at the heart of a technology that has influenced almost every
sphere of human Endeavour, in every society around the world. Largely because of this impact, it has
become imperative for Computer Science to be introduced early in the curriculum. Computer Science is
different from most other disciplines in that, it does not only involves the transfer of knowledge, but also
importantly, it involves the learners gaining skills that can be applied in problem solving across various
disciplines. Most of these skills can only be acquired with a lot of practice.

This syllabus is designed to introduce the candidate to fundamental topics in Computer Science and
related disciplines. It provides a general introduction to Computer Science and related issues, and also
covers topics that include computer architecture, programming, binary arithmetic and Boolean logic,
data structures, simple algorithms, as well as a broad treatment of key topics in the area of Information
and Communication Technologies. Algorithmic thinking is encouraged throughout. A well-trained
Computer Science student is expected to be able to make informed decisions on issues related to
appropriateness of algorithms, and their implementation as solutions to everyday problems. Such a
student is also prepared for specialisation in some higher vocational or academic aspect of computer
science.

The syllabus is non-vocational in its outlook, with an emphasis on the general educative aspects of
Computer Science. It is also comparable to similar curricula across the world, but adapted to local
realities. The subject is largely independent of other non-computing related subjects offered at the
Advanced Level, though the mathematical sciences and some social science subjects like Economics
tend to be natural allies. However, its content has a significant overlap with the GCE Advanced Level
Information and Communication Technologies subject offered by the Cameroon GCE Board.
Knowledge of Computer Science at the Ordinary Level is not a pre-requisite. However, prior IT skills
CAMEROON GENERAL CERTIFICATE OF EDUCATION (GCE) BOARD A/L 795 omputer 2011

greatly facilitate the learning process. In particular, holders of the G.C.E. Ordinary Level foundations of
Computer Science and Information and Communication Technologies have a considerable advantage.
With respect to career opportunities, this syllabus is designed to:
A. Provide career paths that lead to IT and computer-focused employment including computer
management, programming, software engineering, IT services and systems development.
B. Facilitate further studies in the fields of programming, Systems Engineering, Artificial
intelligence and other computer related disciplines.
C. Provide an essential preparation for, or exemptions from requirements in, higher-level studies in
Computer Science and related disciplines.
D. Establish pre-requisite knowledge for, and exemptions from, computing-related requirements in
vocational and tertiary educational programmes.

2. Aims
The aims of this syllabus are:
2.1. To provide a conceptual basis for studies in;
a. theoretical computer science,
b. information and communication technology,
c. major topics in computer science.
2.2. To explore the impact of computers on people both as individuals in society and as
integral parts of an organisation.

3. Examination Objectives
The examination will be designed to measure the extent to which candidates are able to:
A. demonstrate their knowledge of pervasiveness of computers in everyday life.
B. demonstrate their knowledge of implications of computer technology in the society.
C. appreciate computer hardware organization and computer architectures.
D. appreciate the purpose, usefulness, and risks of data communication over computer networks.
E. demonstrate an understanding of fundamental principles in relational database design.
F. demonstrate an understanding of operating systems and the roles of major components.
G. demonstrate an understanding of the purpose and use of commonly used software tools.
H. appreciate how large data collections (files) are abstracted from progressively smaller structures
(records, fields, data types, numbers).
I. demonstrate understanding of key Computer Science concepts including data structures and
algorithms.
J. demonstrate understanding of high level languages and code translation.
K. demonstrate an understanding of key topics in programming: recursion, classical sort and search
algorithms.
L. appreciate the notions of complexity and computability.
CAMEROON GENERAL CERTIFICATE OF EDUCATION (GCE) BOARD A/L 795 omputer 2011

M. demonstrate an understanding of various programming paradigms and


philosophies.
N. demonstrate the ability to develop algorithms to solve problems.
O. demonstrate the ability to convert algorithms into high level language computer programs.
P. demonstrate understanding of the Von Neumann architecture and other architectures.
Q. interpret simple assembly language programs.
R. demonstrate knowledge of digital arithmetic and simple Boolean logic, and their roles in the
design of basic computer circuitry.
S. complete a project that solves a problem, test and document the solution.

It is worth noting that several themes (for example: algorithm design) are pervasive in that they occur in
several areas of the syllabus. Candidates are therefore advised to consider these as they prepare for the
examination.
4. The Examination Structure
The examination will consist of two theory papers and one practical paper. Should a candidate's practical
score fall below an eliminatory mark, the overall performance in the examination may be adversely
affected.
4.1. Paper 1 (1½ Hours):
This will consist of a multiple choice examination for the duration of one and a half hours and shall
constitute 30% of the total mark for the subject.
4.2. Paper 2 (2½ Hours):
This will constitute 40% of the total mark for the subject lasting
two hours and will consist of nine essay-type questions of which candidates will be required to answer
six questions carrying equal marks.
4.3. Paper 3(3 Hours):
This paper will consist of two parts:
4.3.1. Part 1: Project Report (School Based Assessment- - 08 weeks)
Candidates will be required to present evidence of suitable practical work in the form of a work book
and a Project Report. A project report is a school based open room practical examination, involving
guidance. The assessment of the report will constitute 5% of the total mark for the subject. Each
candidate will have to answer one from seven competency domains to complete this component of paper
three. The domains shall include:
1. Computer Workstation Environment,
2. Computer and Information Ethics,
3. Data and Information System Creation, Production, Processing and Management,
4. Algorithmic Thinking and Programming,
5. Communication and Networking,
6. Computer Workstation and Network Setting, Maintenance and Security,
7. Design and Implementation of Information Systems/Technology Projects.
CAMEROON GENERAL CERTIFICATE OF EDUCATION (GCE) BOARD A/L 795 omputer 2011

The Project Report examination will last eight weeks, making six weeks for candidates and two weeks
the evaluation and transmission to the GCE Board. The initial assessment of this report shall be by the
teacher and shall be subject to moderation by the GCE Board.

External candidates will be required to identify a school which will evaluate and grade their practical
work books and projects.
Schools are required to transmit ALL Project Reports in sealed envelopes to appropriate examination
centres during Part II of the Practical Test.

4.3.2. Part II (3 hours): Practical Test:


The practical test will last for three hours and will constitute 25% of the total mark for the subject. In the
practical test, candidates will be expected to analyse and use their computing skills to solve problems,
possibly presented as case studies. Here, computer applications (Spreadsheets in Windows or Linux
environments, RDBMS: Microsoft SQL Server Express or MySQL in Windows or Linux
environments), Windows or Linux operating systems, Website authoring tools (Visual Web Developer
or any Open Source package), Pascal, C/C++, or any of the 2010 or later express edition of Microsoft
Visual Studio (visual C++, Visual C#, or Visual Basic) shall be tested.

4.3.3. Summary of the Examination Structure


Paper Mode of Assessment Nº of Nº of Questions to Duration Weighting
Questions be answered
Set
1 MCQ 50 50 1½ hours 30 %
2 Essay /Problem Solving 9 6 2½ hours 40%
Project Report
Practical (School-Based 1 1 8 weeks 5%
3
Exam Assessment)
Practical Test 1 1 3 hours 25%

5. Cross Curricula Requirement


Mathematics Requirement
Candidates for Advanced Level Computer Science are expected to have passed Mathematics at the GCE
Ordinary Level or its equivalent.
English Language Requirement
Candidates for Advanced Level Computer Science are expected to have passed English Language at the
GCE Ordinary Level or its equivalent.

5.1 Restrictions on Subject Combinations


Candidates sitting for Advanced Level Information and Communication Technologies may not sit for
the Advanced Level Computer Science examination.
CAMEROON GENERAL CERTIFICATE OF EDUCATION (GCE) BOARD A/L 795 omputer 2011

5.2 Examination Centre Approval


Centres wishing to offer this subject are expected to apply to the Cameroon GCE Board for an
inspection of their computing facilities and subsequent approval, before registration of candidates
begins.
CAMEROON GENERAL CERTIFICATE OF EDUCATION (GCE) BOARD A/L 795 omputer 2011

6. Core Syllabus

Part 1: Computer Organisation


6.1 Basic Concepts of Computer Organisation
Content Attainment Targets
Candidates should be able to:
6.1-1 Computer Define computer organisation
organization
6.1-2 Scope of computer Identify the different layers of hardware
organization

1.2. Hardware
Candidates should be able to demonstrate an awareness of the nature of the hardware involved in
computer systems. They should be able to relate the choice of particular types of peripheral devices and
processor to the application. They should be able to describe the need for and means of connection
between devices. Candidates should be able to describe the principles of hardware but are not expected
to show knowledge of the technical aspects. They should be able to discuss possible future
developments.

Content Attainment Targets


Candidates should be able to:
1.2-1Processor a. Identify assorted classification of computers based on their processor
architectures architecture: RISC and CISC machines; SISD, SIMD and MIMD machines.
b. Identify assorted computers; mainframe, minicomputer, microcomputer arid
parallel and distributed computing.
1.2-2 Processor Describe processor hardware components: Detailed technical knowledge of
hardware processor hardware is not expected. Only an appreciation of the need for and
nature of the various components, including standard buses and interfaces, is
required.
1.2-3 State the functions and characteristics of storage devices and media: RAM,
Storage devices and ROM, CD ROM, disks and tapes, possible future developments.

1.2-4 Peripheral List the characteristics and performance of a range of peripheral equipment and
equipment and media directly manipulated by users. Keyboards, monitors, printers, pointing
data handling devices, scanners, bar-code readers, speech, input, output and input-output
media devices; possible future developments.
1.2-5 Hardware and Describe the suitability of different hardware devices and media for various
media selection applications.
CAMEROON GENERAL CERTIFICATE OF EDUCATION (GCE) BOARD A/L 795 omputer 2011

1.3.Digital arithmetic, Boolean Logic and Digital Electronics


Candidates should be able to convert numbers from any base to binary (base 2), and from binary to base
8, 10,and 16. They should be able to add, subtract, multiply, divide and complement numbers in base 2.
They should be able to identify basic logic components, apply fundamental Boolean algebra and provide
truth tables with a maximum of three operands involving NOT, OR, AND, NOR, NAND and XOR
gates. They should be able to deduce the outputs of simple digital circuits. They should understand
arithmetic operations with basic digital circuits such as full adder, serial and parallel adder. They may be
required to use simple. Programming syntax (see part 5 of the syllabus) to decide on ON and OFF states
of a switch, e.g. the emergency switch.

Content Attainment Target


Candidates should be able to:
1.3-1 Binary a. Convert from base 2 to base 8, 10 and 16 and vice versa;
Arithmetic b. Compute arithmetic operations in base 2: addition, subtraction, multiplication
and division.
c. Compute complement in subtraction using, for example, sign magnitude (or
sign absolute) notations, as well as one's and two’s complement.
1.3-2 Boolean a. Define Logic Gates.
Logic and b. Identify and sketch logic gate symbols: OR, AND, NOT, NAND, NOR, and
Logic Gates XOR.
c. Explain Boolean Algebra and Boolean expressions, and draw truth tables.
d. Deduce the output of a simple digital circuit.
e. Identify basic logic functions involving: Negation (NOT), Conjunction
(AND), Disjunction (OR), NAND, NOR and XOR.
f. Apply De Morgan's theorem.
1.3-3 Basic digital Deduce output and inputs of given circuits and circuit components, binary adder
circuits and other basic circuits.

1.4.Computer Architecture
Candidates should have a general understanding of the Von Neumann stored program model, and how
the model lends itself to the design of powerful, flexible, computing machines. Treatment of computer
organization is more detailed than in the Advanced Level ICT course.
Candidates should be able to describe how a processor operates and the types of operation it carries out.
They should be able to describe the fetch-decode-execute cycle and event detection (polling- and
interrupts).

Content Attainment Target


Candidates should be able to:
1.4-1The von Neumann a. Describe the stored program concept.
architecture b. Recall the outline of the von Neumann architecture and
CAMEROON GENERAL CERTIFICATE OF EDUCATION (GCE) BOARD A/L 795 omputer 2011

Content Attainment Target


Candidates should be able to:
contrast with computers without memory.
1.4-2Computer a. Describe processor configuration: Control unit; arithmetic
organization and logic unit; registers; the bus system: bus types and their
roles; bus size. Memory systems: RAM ROM, PROM,
PROM, EEPROM; cache memory.
b. Discuss the role of secondary storage, and examples; the
notion of storage hierarchies. Roles of input and output
devices, including examples.
c. Display knowledge of address mapping.

1.4-3Machine instruction Describe the Fetch-decode-execute cycle.


cycle
1.4-4Polling and R for polling and interrupts; contrast polling and interrupts;
interrupts detection of interrupts.
1.4-5 Other computer Brief treatment of other computer architectures: CRAY, parallel
architectures processors, data flow architectures.

1.5.Low Level Programming


Candidates should be aware of machine code instructions and the need for assembly language
programming. Candidates should be able to interpret simple assembly language programs. Programming
in assembly language or machine code is not required.

Content Attainment Target


Candidates should be able to:
1.5-1Low level Demonstrate insight
programming a. The construction of machine code.
b. Instruction set (transfer, logical, shift, arithmetic, branch,
input and output; register instructions).
c. Modes of operand addressing: immediate, direct, indirect,
indexed, relative.
d. Assembly language principles: instruction format;
addressing modes; typical instructions; assemblers and
loaders.
Part 2: Systems Software
2.1. Operating System and Server Concepts
Candidates should have knowledge of the nature, purpose and use of the facilities of different types of
operating system so that they are able to select the most appropriate for particular applications of
CAMEROON GENERAL CERTIFICATE OF EDUCATION (GCE) BOARD A/L 795 omputer 2011

computers. They should have practical experience of the use of the facilities of at least one type of
operating system, using both a command line interface and graphical user interface (GUI).

Content Attainment Target


Candidates should be able to:
2.1-1 a. Identify the different types of operating system.
Types of operating b. Examine the evolution of operating systems. Batch, on-line, multi-access,
system and evolution real time transaction processing; network and process control operating
systems.
2.1-2 a. Demonstrate understanding of common languages.
Operating system b. Show the use of menus, mice, icons and windows; graphical user
interfaces interfaces.
c. Use one of: DOS/MS Windows or Linux/Unix command line and GUI
interfaces.
2.1-3 Illustrate knowledge of Cloud computing, Grid computing, High performance
Novel Operating computing, Software and Hardware virtualization, Internet computing.
Systems
2.1-4 Construct knowledge of file directories; file access control: locks, privileges;
File storage file storage accounting.
management

2.2 System software


Candidates should be able to describe in broad terms the need for the use of, and the operation of
particular pieces of systems software. Candidates are not expected to have detailed knowledge of the
internal design of particular pieces of software.

Content Attainment Target


Candidates should be able to:
2.2-1 Define and describe the need for system software and explain the scope and
Definition range of system software.
2.2-2 Describe linking loaders, file re-organization and transfer programs; subroutine
Systems and utility libraries.
programs
2.2-3 Demonstrate the ability to use compilers, interpreters, lexical analysis, syntax
Language translators analysis, code generation, stack mechanism for procedure calling and
parameter passing.
CAMEROON GENERAL CERTIFICATE OF EDUCATION (GCE) BOARD A/L 795 omputer 2011

2.3 Resource management


Candidates are expected to understand the main functions of an operating system.

Content Attainment Target


Candidates should be able to:
2.3-1 a. Explain the purpose of OS including the need for the resources of the
Operating system (OS) system to be organized and shared in an efficient manner, the need to
components provide the user with an interface; resources such as processor,
memory and peripheral devices; the need for a secure system.
b. Recall of different user interfaces: command line, GUI.
2.3-2 a. Explain the concept of sharing of the processor: multi-tasking multi-
Process management programming.
b. Illustrate understanding of basic process management: scheduling
strategies: pre-emptive and non pre-emptive; examples such as First
Come First Served, Shortest Job First, Round Robin and Shortest
Remaining Time.
2.3-3 a. Explain the meaning of memory management: the need to run
Memory management several processes dynamically and safely on a system with physically
finite storage resource.
b. Describe process loading and swapping.
c. Describe memory sharing schemes: fixed and variable partition,
simple paging and simple segmentation. Introduction to virtual
memory management.
2.3-4 Demonstrate understanding of I/O including system calls, interrupt
Device management handling, device drivers, buffering and spooling: introduction to file
systems including file naming and directory organisation.
2.3-5 Show knowledge of network operation system components illustrated
Network Operating by the rationale to develop OSI layered model and the function of levels
Systems to allow cooperation of processing tasks involved in data transmission
up to LAN packets, WAN transport and application transparency.
2.3-6 Describe file management systems.
File Management

Part 3: Communication and Information Systems


3.1. Information Systems

Content Attainment Target


Candidates shall be assessed on their ability to:
Information a. Define an information system and list the different types of information systems.
Systems- Basic b. Demonstrate an understanding of the need for an information system and the
Concepts components of an information system.
CAMEROON GENERAL CERTIFICATE OF EDUCATION (GCE) BOARD A/L 795 omputer 2011

Content Attainment Target


Candidates shall be assessed on their ability to:
c. Define the terms entity, attribute, relationship, association, constraint, primary key,
and foreign key as in use in the design of information systems.
d. Show an understanding of the need for normalization and describe the Normal
Forms (1-4NF) up to the fourth normal form.
e. Describe and display the need for the Universal Modelling Language (UML) and
the structure Entity-Relational (ER) diagrams used to describe and present
relationships involving entities.
f. Demonstrate an understanding of the need for, and use of data types in
programming and working with databases: character, decimal, time, date, money,
binary, integer, real, string, Boolean.

3.2 Design of an Information system


Content Attainment Target
Candidates should be able to:
3.2-1 Organizational issues a. Identify the structure of the organisation.
b. Identify the flow of information within the organisation.
3.2-2 Domain or problem a. Identify information needs of the organisation.
specification b. Specify the tasks required to transform an existing system into a
computer based system.
3.2-3 Modelling Use descriptive tools to highlight the structure of the system. (Dataflow
diagrams, pseudo code or structured English).
3.2-4 Software Design Select Software tools to be used and identify entities requiring Software
development.
3.2-5 Software Demonstrate the ability to install and configure Software
Implementation and
Verification
3.2-6 Testing Select data sample and test system functionality after input of data
sample

3.3 Computer Networks and Data Communication


Candidates should be able to make reasonable decisions about the appropriateness of networks of
machines in comparison to stand-alone computer systems for particular applications. They should be
able to comment on the merits of different types of network topologies. Candidates should be able to
describe the main features of communications in computer applications and discuss the types of
applications that are made possible through the combination of computing and communications
technology. They should be able to describe the principles of networks and communications, but are not
expected to show knowledge of the technical aspects. Candidates should be aware of the nature and
CAMEROON GENERAL CERTIFICATE OF EDUCATION (GCE) BOARD A/L 795 omputer 2011

purpose of communication between devices and simple error detection/correction mechanisms for such
communication.

Content Attainment Target


Candidates should be able to:
3.3-1 a. List types of networks: For example local area networks (LAN), wide
Types of network, their area network (WAN)
topologies and relative b. Explain the principles of operation of Ethernet and Token ring
advantages networks; wide area networks (WAN).
c. Describe network topologies: star, bus, ring topologies. Client-server,
peer-to-peer networks.
d. Explain the principles of operation of wireless networks.
3.3-2 a. Identify the features of data communication networks.
Fe Features of data b. Explain the purpose of data transmission, communications protocol,
communication networks synchronous and asynchronous transmission.
c. Explain the working of common communications hardware: modems,
multiplexers, routers, network cards. Transmission media: twisted pair,
coaxial cables, fibre optics, microwave channels and satellite links.
d. Identify the role of devices like bridges & gateways, repeaters, routers.
3.3-3 a. Outline the benefits and limitations of data communication networks:
Benefits and limitations of Resources and data sharing. Speed of communication. Client-server
data communication computing, distributed computing.
networks. b. Outline the limitations: complexity, security and privacy concerns.
3.3-4 Explain knowledge of risks related to open nature of networks;
Security aspects of networks ease of propagation of malware.
3.3-5 Understand the difference between internets, intranets, and extranets, the
Internet and Email role of the Internet, the role of mark-up languages and applications to
Communications simple HTML design; Use of browsers, search engines. Electronic mail
systems.

Part 4: Database Design Systems and Modelling

4.1.Basic Concepts
Content Attainment Target
Candidates should be able to:
4.1-1 a. Define a database.
Introduction to databases b. Compare computerized database systems with non-computerized
databases systems.
c. Outline the goals of effective database design.
d. Explain the need for verification and validation of data; flat files vs.
use of multiple files; Database management systems.
CAMEROON GENERAL CERTIFICATE OF EDUCATION (GCE) BOARD A/L 795 omputer 2011

4.1-2 Identify types of database systems.


Types of databases

4.2 Relational Database Management Systems


Candidates should understand the principles of database management systems and be able to describe
the nature of relational databases and the reasons for their use in applications. They should be able to
demonstrate a general understanding of the need for and purpose of relational database management
systems. Candidates should be able to design relational database structures.

Content Attainment Target


Candidates should be able to:
4.2-1 a. Define Relational database.
Relational databases b. Describe the Logical structure of data within a database: the physical
organisation of a database as a set of files related through links and/or
common fields.
c. Develop competences in the use of at least one relational database system
such as Microsoft Access and Open Office Base.
d. Develop competencies in the use of either Microsoft SQL Server Express
or MySQL in either the Windows or Linux environment.
e. Describe and set up various relationships: many-to-many, one-to-many,
one-to-one.
f. Define and implement joins: inner join and outer joins.
g. Display an understanding of what constraints are and how constraints are
enforced.
h. Distinguished between referential integrity and check constraints.
4.2-2 a. Appraise the purpose of a database management system. Goals (with
Database development simple examples only) of data modeling: Entity-relationship modeling;
first, second and third normal forms; entities, attributes. The role of data
dictionary. The role of keys and their representation.
b. Represent relational database tables: name followed by field names;
tabular representation.
c. Design and work with databases tables with respect to the fourth normal
form (4 NF); and be familiar with the concept of: entities, attributes,
relationships, keys and constraints.
d. Design and work up to seven tables in a database.
e. Decompose many-to-many into simpler relationships.
f. Draw explicit database diagrams.
g. Use ER diagrams to set up a database and populate and retrieve data.
4.2-3 a. Demonstrate basic user skills in the use of a relational DBMS: Microsoft
Use of a DBMS SQL Server Express or MySQL in either the Windows or Linux
(RDBMS) environment.
CAMEROON GENERAL CERTIFICATE OF EDUCATION (GCE) BOARD A/L 795 omputer 2011

Content Attainment Target


Candidates should be able to:
b. Demonstrate knowledge of Structure Query Language (SQL) in a familiar
RDBMS to populate and retrieve data in a database.
c. Implement joins, write sub queries, and standard clauses to populate and
retrieve data.
d. Publish their work to the Internet or other networks by implementing given
PHP codes or HTML5.
e. Describe knowledge of report generators, query languages, and need to
transfer data between software applications.
4.2-4 Demonstrate knowledge of other Relational Database models. For example:
Other Database Models Object-oriented, Object-relational.

Part 5: Programming and Algorithm Design


5.1 Data Structures

Candidates should be able to design or select appropriate data types and structures for the
implementation of Software designs. Candidates should also be able to select appropriate data types to
represent particular entities. They should appreciate the consequences of the use of particular data types
because of the ways in which they are represented. They should be able to explain how data may be
represented by collections of elementary data types or bit patterns. They should be able to describe the
use of a character set and the value of a standard one. They should be able to illustrate the
representations of integers, to carry out simple operations with such representations and to explain the
advantages of particular representations. They should be able to describe the nature of and the need for
floating point representation and to show awareness that such representations are not normally precise
and that this may have adverse consequences for some types of problem solution. They will not be
expected to carry out numerical operations involving floating point representation of numbers.

Candidates should also understand how data is grouped into bits, bytes, and words, and how these
smaller units are further grouped into fields, records, and files.
Content Attainment Target
Candidates should be able to:
5.1-1 Explain the use of predefined or standard data types: Boolean;
Standard and application- Characters; Integers; Real.
specific data types
5.1-2 Represent complex data types as a composition of standard types:
CAMEROON GENERAL CERTIFICATE OF EDUCATION (GCE) BOARD A/L 795 omputer 2011

Construction of data Arrays, strings, records, lists.


structures
5.1-3 Identify the units of storage: Bits, bytes, words, groups of words.
Units of storage

5.2 Algorithm Design

Content Attainment Target


Candidates should be able to:
5.2-1 a. Describe control structures: sequence, choice, iteration.
Control Structures b. Explain the use control structures.
5.2-2 a. State various design strategies: top-down, bottom-up, step-wise;
Design Strategies b. Demonstrate knowledge of modular designs but are not expected to
use them.
5.2-3 State the use of simple sort algorithms: Bubble sort, insertion sort,
Commonly used merge sort; Search algorithms: sequential, binary search.
algorithms
5.2-4 Establish the correctness of a simple algorithm.
Analysis of Algorithms
5.2-5 a. Define recursion and recursive functions.
Recursion b. List examples of recursive structures; examples of classical problems
that can use recursion: Factorial, Fibonacci numbers, Towers of
Hanoi.
c. Explain the use of an internal stack structure in the processing of
recursive functions.
d. Describe the possibility of exhausting available memory; inefficient
recursive functions and possible remedies: e.g. computation of
Fibonacci sequence.

5.3 Programming I

Content Attainment Target


Candidates should be able to:
5.3-1 Recall basic notions of computer programs and programming.
Basic Concepts
5.3-2 Demonstrate understanding of Assembly, low level (machine) languages,
Programming Languages high level languages (FORTRAN, COBOL, etc.); generations of software.
5.3-3 a. Identify the different programming paradigms (imperative,
Programming paradigms declarative, etc.).
b. Demonstrate understanding of programming paradigms.
c. Define recursion and recursive functions; examples of recursive
CAMEROON GENERAL CERTIFICATE OF EDUCATION (GCE) BOARD A/L 795 omputer 2011

structures; examples of classical problems that can use recursion:


factorial, Fibonacci numbers, towers of Hanoi.
5.3-4 Demonstrate knowledge of Keywords, character sets, identifiers,
Syntax and semantics constants, variables, simple and complex data types, data declarations,
scope of variables, documentation.
5.3-5 Implement simple debugging techniques: print statements, debugger
Debugging features: breakpoints, watch points, variable and instruction tracing.
5.3-6 Document information commonly found in user manuals.
Documentation

5.4 Computational Complexity and Computability

The candidate should have an informal appreciation of tasks that are effective (computability) and those
that are feasible or realistic (complexity). The formal or mathematical foundations of these concepts are
not required, nor the ability to determine computable problems or their complexity. However, the
candidate should be able to follow an informal, intuitive argument on which problems could be effective
or feasible. The idea is that the candidate develops an awareness of the limitations of the machine.

Content Attainment Target


Candidates should be able to:
5.4-1 a. Demonstrate an intuitive notion of computable functions and what
Computability computers can do in principle (i.e., computability).
b. Show an intuitive understanding of decidability, undecidability, semi-
decidability and simple illustrative examples of these concepts.
c. Explain the halting problem and the existence of non-computable
functions.
d. Explain the notion of algorithms as effective procedures.
e. Give an informal definition and demonstrate awareness of: Turing
machines and computability; denumerable sets and computability:
Church-Turina thesis.
5.4-2 a. Show an acquisition an intuitive notion of what tasks are realistic or
Computational feasible. Explain informal notions of complexity as relative measure of
Complexity efficiency of algorithms; tractability and intractability.
b. Handle Qualitative differentiation of computational complexity from
software development complexity metrics. Knowledge of these metrics is
not required. Define and give examples of decision, optimization and
reduction problems. Show and intuitive understanding of time and space
complexity.
c. Give intuitive definitions of polynomial (P) and non-deterministic
problems and examples of such classes of problems.
d. Derivation of the complexity of such problems and their classification are
CAMEROON GENERAL CERTIFICATE OF EDUCATION (GCE) BOARD A/L 795 omputer 2011

Content Attainment Target


Candidates should be able to:
not required.

Part 6: Software Development


Candidates are expected to have practical experience of the design and selection of appropriate software
for a variety of applications. They should be able to implement such designs and selections using
software packages and other software tools. Although they should appreciate the fact that software
designs may be expressed by using a high-level language for design description, practical work
associated with this unit need not involve programming in a high-level language.

6.1 System Design and implementation

Content Attainment Target


Candidates should be able to:
6.1-1 Illustrate Top-down design; modular design; design of algorithms using the
Software design constructs of sequence, selection and iteration (repetition); selection of
data types; design of file structure.
6.1-2 Represent software design notations: unit and structure diagrams, sequence
Simple software design of steps, textual descriptions.
notations
6.1-3 a. Reuse existing software and be aware of the criteria for selecting
Software reuse existing software.
b. Demonstrate awareness of the notions and purpose of library units,
repositories, software packages.
6.1-4 Construct a prototype; feedback from users; prototype refinement.
Prototyping
6.1-5 Select programming paradigm and high-level programming languages
Programming paradigms (imperative, declarative, object orientated) to use.
6.1-6 Codify, program and test software.
Software Design test data. Understand the notions of Application Programmer
implementation Interfaces (API's) and Programming Support Environments; portability of
data between software application packages.
6.2 Algorithm design
There are two key aspects:
a. Choice of algorithm
b. Choice of strategy based on those selected in section 5.2
The candidate should demonstrate knowledge of parallel algorithm design but is not required to use this
technique.
CAMEROON GENERAL CERTIFICATE OF EDUCATION (GCE) BOARD A/L 795 omputer 2011

6.3 Programming
Candidates should be able to describe the characteristic features of high-level programming languages.
They should show an awareness of the need to have an unambiguous definition of a programming
language and should be able to illustrate how rules of syntax can be expressed.

Candidates should have some practical experience of programming and program testing using Pascal,
C/C++, or any of the 2010 or later express edition of Microsoft Visual Studio (visual C++, Visual C#, or
Visual Basic). They may be required to demonstrate basic user skills in writing PHP and HTLM5
scripts. Candidates should be able to describe the characteristics and the need for other programming
language paradigm.

Content Attainment Target


Candidates should be able to:
6.3-1 a. Map the data structures and algorithm to the programming language
Imperative b. Organise a program into small and clearly documented subprograms
programming or sections.
c. Use self-documenting identifiers and code and use standard units.
6.3-2 a. Describe Objects, properties, controls, events, methods for objects,
Object-oriented and control arrays; polymorphism and inheritance.
event-driven b. Carry out Encapsulation.
programming
6.3-3 Display an understanding of Logic programming and functional
Declarative programming.
programming
6.3-4 a. Design test data.
Component and b. Debug a program and generate program traces.
program testing
6.3-5 Display an understanding of:
High-level language data types, structures and values, programming constructs, constants,
features variables, expressions, statements, control structures, local and global
variables, functions and procedures (units), parameter passing by value
and by reference, input, output and file handling operations.
CAMEROON GENERAL CERTIFICATE OF EDUCATION (GCE) BOARD A/L 795 omputer 2011

8. Practical Work
Candidates would be expected to show proof of competence in several areas of the syllabus. This shall
include the capacity to use some standard packages and write programs in a familial programming
language indicated in section 6.3 programming.

A. Tools
1. Spreadsheets in Windows or Linux environments.
2. RDBMS: Microsoft SQL Server Express or MySQL in Windows or Linux
environment.
3. Linux or Microsoft Window Operating systems.
4. Website authoring tools (Visual Web Developer or any Open Source package).
5. Pascal, C/C++, or any of the 2010 or later express edition of Microsoft Visual Studio
(visual C++, Visual C#, or Visual Basic).

B. Practical Test
This may require the use of one or more tools listed in (A) above, to implement the solution to a
problem, as well as the development of an appropriate solution to a practical problem.

C. School based Project


This shall be assessed through a Project Report.

You might also like