CS Syllabus Working Draft 25-082020

Download as pdf or txt
Download as pdf or txt
You are on page 1of 57

REPUBLIC OF CAMEROON

MINISTRY OF SECONDARY EDUCATION

COMPETENCY BASED CURRICULUM

Teaching Syllabus
For
High School Computer Science

WORKING DRAFT
August 2020

Observe the environment and choose better study options for a fulfilling life

Page 1 of 57
TABLE OF CONTENT
1.0 GENERAL INFORMATION ........................................................ 3

1.1 INTRODUCTION ...................................................................................................................... 3


1.2 COURSE DESCRIPTION ............................................................................................................ 7
1.3 AIMS............................................................................................... Erreur ! Signet non défini.
1.4 OBJECTIVES .................................................................................... Erreur ! Signet non défini.
1.5 TEACHING AND LEARNING STRATEGY .......................................... Erreur ! Signet non défini.
1.6 COMPUTER SCIENCE PROJECT ...................................................... Erreur ! Signet non défini.
1.7 ASSESSMENT AND EVALUATION .................................................. Erreur ! Signet non défini.
1.8 REQUIREMENTS ............................................................................. Erreur ! Signet non défini.

2.0 SCOPE AND SEQUENCE OF HIGH SCHOOL COMPUTER SCIENCE

SYLLABUS....................................................................................... 9

Module 1: COMPUTER APPLICATIONS AND THE SOCIO-ECONOMIC IMPLICATIONS ...................... 9


OF THE USE OF COMPUTERS .............................................................................................................. 9
Module 2: SOFTWARE ...................................................................................................................... 14
Module 3: COMPUTER NETWORKS, DATA COMMUNICATIONS AND SECURITY ........................... 21
MODULE 4: DATA STRUCTURES AND ALGORITHMS ...................................................................... 25
Module 8: COMPUTER ORGANIZATION AND ARCHITECTURE ........................................................ 39
Module 9: INFORMATION SYSTEMS ................................................................................................ 43
MODULE 10: DATABASE SYSTEMS ................................................................................................... 46

3.0 CONCLUSIONS ................................................................... 56

4.0 ACKNOWLEDGMENTS .......................................................... 56

5.0 REFERENCES ......................................................................... 56

Page 2 of 57
1.0 GENERAL INFORMATION

1.1 INTRODUCTION

Information and Communication Technology (ICT), also known as Information Technology (IT), is the
driving force in technological development. Its role in boosting economies of nations, industrial
productivity, socio-cultural integration, development of professions, education and research,
medicine, politics, communication, private households, and entertainment etc., has been enormous
and popularized. There is therefore the need, to guide the Cameroonian youth into developing
competencies in this domain thereby providing solutions to real life challenges. Such competencies
developed at this level, are to build a solid framework for students who will continue with this
domain of study, or other related disciplines, at the University level, those who will start their
professional activities after High School, and those who just require digital literacy for solving
commonly encountered personal problems.

The high school program in Computer Science is designed to equip students with necessary skills and
experience to apply computational thinking practices to solve a problem using a computer. With a
unique focus on creative problem solving techniques, representation and ethical use of computer,
the course offers in students a broad range of competences, individual skills and motivation, which
are essential for a successful working life.

This syllabus is expected to provide students with the opportunity to gain national qualifications in
Computer Science recognized by educational institutions and employers towards obtaining a degree
or to further endeavour in the field or employment. Students acquire knowledge and understanding
of the academic aspects of Computer Science through theoretical lessons, practical applications and
teamwork.

It is strongly recommended that the teaching of this syllabus should adopt the Competence-Based
Approach. This is a task-oriented methodology to give students more computer user-time practices
to help them gradually bring out solutions to problems. Many hands-on practical tasks have been
suggested to enable students to practice what they will learn. It is hoped that teachers will follow
the suggestions and provide opportunities for students to explore and discover more in a computing
environment.

SECOND CYCLE LEARNER PROFILE


In this information age, the necessity to develop and adapt tools that facilitate the
processing and dissemination of information is imperative. Learners in second cycle of high
school offering computer science at the end of their studies will develop skills that will
permit them to build computer systems that address problems in their community.
Specifically, the learners will use the skills learnt to:

 Build computer software


 Design a database.
 Setup and configure a network
Page 3 of 57
 Run a project successfully
 Propose IT solutions to tackle real life issues.
 Produce websites
 Assure the quality of a developed software
 Analyse computer system architectures

LEARNING DOMAIN AND CORRESPONDING DISCIPLINES


Though Computer science is a subject in its own right, it is in a wider perspective
seen as a tool that would enable and facilitate the apprehension of all the subjects across the
curriculum. Consequently, the subject is open to the Arts, Humanities and the Sciences.

THE PLACE OF COMPUTER SCIENCE IN THE CURRICULUM


AND ITS CONTRIBUTION TO THE LEARNING AREAS
Computer science builds in the learner analytical thinking and critical thinking skills
which are needed in other learning areas or domains of life. Also, the learner’s ability to
manipulate modern technology will facilitate research and access to information to enforce
their learning of other subject areas and domains.

CONTRIBUTION OF SYLLABUS TO LIFE SITUATIONS


Information technology crosscuts in all domains of life as shown in the table below
Table 2: Summary of contribution of ICT syllabus to Life Situation

LIFE SITUATION CONTRIBUTION


Study and appraise business correspondence
Prepare home budgets
Manage domestic chows
Social and family life
Manipulate electronic devices
Communicate and disseminate information
Build IT systems for home use
Develop and manage business databases
Develop business computer systems
Make rational use and management of
resources and services
Business Decision making
Project planning implementation and
evaluation
Digital services
Entrepreneurship
Protect nature
Develop and manage databases of sites
Environment, Health, and well-being
Practice e-healthcare including telemedicine
Take actions and act wisely to protect and
Page 4 of 57
harness the environment
Use the computer resources purposefully
Citizenship Manage privacy and intellectual property
Protect public utilities
Facilitate communication through
multimedia resources
Media and communication Set up and manage computer networks
Manipulate communication devices

FAMILIES OF SITUATIONS COVERED IN THIS SYLLABUS


The successful acquisition and use of a computing or ICT systems generally may go
through 5 stages which represent what you need to go through in order to qualify as being
able to efficiently use an Information System. These stages have been coined here, into 5
modules. The paradigm behind the development of each of the five modules is as follows:

1. Understanding and using computer components responsibly (Module 1)


2. Understanding operating systems (Module 2)
3. Implementing and configuring secured networks (Module 3)
4. Designing solutions to problems using Algorithmic tools (Module 4)
5. Translating an algorithm into a program (Module 5)
6. Applying phases that guide the development of a software (Module 6)
7. Understanding and applying strategies use to run a project (Module 7)
8. Understanding and analyzing computer architectures (Module 5)
9. Designing and Exploiting information systems (Module 9)
10. Designing and Exploiting databases (Module 10)
11. Mobilizing project management and software development phases to develop a
software (Module 11)

A successful navigation through these modules adequately prepares the learner to


demonstrate competencies in solving real life situations that can be handled with the use of
IT.

COMPREHENSIVE TABLE SHOWING THE DIFFERENT


MODULES FOR EACH CLASS
Table 1: Comprehensive Table Showing Different Modules for each Class

Page 5 of 57
CLASS MODULES DURATION

Module 1: Computing Environment and Components 76


LOWER SIXTH
Module II: Impacting society with digital technology 80

Module III: Building ICT systems 116

Module IV: Communication, resource sharing in IT and 77


UPPER SIXTH
Information Security

Module V: Practical problem solving in the digital world 77

The total learning time for all the modules on the High School ICT curriculum within two
years is 426 periods with approximately 60% of the time used in the first year(A period is an
average of fifty minutes.)

The time spent in each module, depends on the content and nature of lesson in that module.
However, a minimum of 8 periods has been attributed to be the total learning time per week
in schools.

PRESENTATION OF THE MODULES

Each module has two main parts: the introduction of the module and the table.
The introduction has the presentation of the module and the real life situations through which
the competencies of that module are demonstrated.
The table on the other hand, is made up of three main columns which are subdivided into
eight columns:
o The contextual framework embodies the families of situations and some examples
of real life situations where the knowledge and skills (competencies) can be
applied. Teachers are expected to come out with more real life situations within
their environment.
o The Competencies (competent actions) is divided into categories of actions and
examples of actions: These are groups of some actions which are related to the
mastery of the competencies expected for the module.
o The Resources have the essential or core knowledge which gives all the set of
cognitive and affective resources which the learner needs to mobilize to
successfully treat a family of situations. It is divided into four components: the
ICT notions, the skills or know-how, attitudes to be disposed or to be acquired as
Page 6 of 57
well as other resources (material) necessary for the acquisition of these
competencies.

1.2 STRUCTURE

1. Computer Applications and the Socio-


Economic Implications of the Use of
Computers

2. Software

3. Computer Networks and Data


Communications
Year 1
Lower 4. Data structures and Algorithms
Sixth
5. Programming

Computer 6. Software Development I


Science
High School 7. Computer Science Project

8. Computer organisation and


Architecture
Year 2
9. Information systems
Upper
Sixth
10. Database Systems

11. Software Development II

Page 7 of 57
High School Computer Science Modules
1 COMPUTER APPLICATIONS AND SOCIO-ECONOMIC IMPLICATIONS LS

1 SOFTWARE US
2 COMPUTER NETWORKS, DATA COMMUNICATIONS AND SECURITY US
3 DATA STRUCTURES AND ALGORITHMS LS
4 PROGRAMMING LS
5 SOFTWARE DEVELOPMENT I LS
6 COMPUTER SCIENCE PROJECT LS. US
7 COMPUTER ORGANIZATION AND ARCHITECTURE US
8 INFORMATION SYSTEMS LS
9 DATABASE SYSTEMS LS
10 SOFTWARE DEVELOPMENT II US

Page 8 of 57
2.0 SCOPE AND SEQUENCE OF HIGH SCHOOL COMPUTER SCIENCE SYLLABUS

Module 1: COMPUTER APPLICATIONS AND THE SOCIO-ECONOMIC IMPLICATIONS


OF THE USE OF COMPUTERS

Class: Lower Sixth Theory: Practical: Duration of Period:

Specific objectives: On completion of this module, students should have the opportunity to:
a) Describe ways in which computing enables innovation.
b) Explain some areas or domain that the computer could be used to facilitate work.
c) List examples of input and output devices.
d) State clearly the various stages of information processing cycle and give examples.
e) Know the various software that can be used in data processing to accomplish tasks. Discuss the ways in which innovations
enabled by computing affect communication and problem solving.
f) Analyze how social and economic values influence the design and development of computing innovations.
g) Discuss issues of equity, access and power in the context of computing resources.
h) Communicate the legal and ethical concerns raised by computational innovations.
i) Discuss privacy and security concerns related to computational innovations.
j) Explain positive and negative effects of technological innovation on human culture.

Page 9 of 57
Module 1: COMPUTER APPLICATIONS AND THE SOCIO-ECONOMIC IMPLICATIONS OF COMPUTERS
Duration: hours
PRESENTATION OF THE MODULE
This module introduces learners to what a computer system looks like and prepares them to demonstrate competency in identifying, selecting and using
hardware and other digital resources. It also guides the learner on responsible use of computer systems and gives them an understanding of the socio-
economic implications of computer systems.
CONTRIBUTION OF MODULE TO CURRICULAR GOALS AND ACHIEVEMENT
This module enables the learner to understand what the computing system looks like and how it works for the learner to use responsibly digital
resources and be productive in the economic, Social and Family, and Media and communication life domains.
CONTRIBUTION OF MODULE IN THE LEARNING DOMAIN
The module is expected to lead the learner to explore hardware devices and act responsibly when using digital resources.
CONTRIBUTION OF MODULE TO THE TEACHING SYLLABUS AND OTHER DOMAINS OF LIFE
This module would enable the learner to:
 Manipulate hardware devices,
 Use communication and collaboration tools,
 Identify privacy related issues when using computer system.

Page 10 of 57
CONTEXTUALIZATION COMPETENCIES TO BE ATTAINED RESOURCE
Duration(i
Family of life Examples of real life Categories of
Examples of Actions Core knowledge Skills Attitudes Didactic Material n
situations situations Actions
period(s))
 Buying a computer  Describe types of  Input devices;  Compare characteristics: size,
computers;  Processing processing capabilities, price. of
 Choosing software  Identify input & output devices; computers;
devices;  Output devices;  Connect correctly input, processing and Printer, camera,
 Describe how a computer  Storage devices; output devices; keyboard, mouse,
Description of
 Choosing hardware system functions  Peripheral devices.  Power a computer (soft and warm processor, chips,
Computer system Innovative and
 Manipulate input and booting); smartphones, 2
creative spirit
 Assembling a output devices.  Transfer data/information to peripheral scanner, monitor,
computer devices; video projector, hard
 transfer data/information from Peripheral disk, USB key, .
devices;
 Connecting input  Enter information into computer system;
and output devices  Print a document.
to system unit  Describe communication  Communication  Select suitable communication &
& collaboration tools; tools; collaboration tool for a given situation;
 Click a mouse  Exploit communication &  collaboration tools;  Setup a learning environment using
button Team spirit
collaboration tools;  PC, Smart Phones, communication and collaboration tools;
 Exploit social media digital cameras …  Share information/data over a network;
 Enter data with the platform;  Participate in learning using; Communication
keyboard  Compare manual and communication and collaboration tools; Skills
automated systems  Communicate, Collaborate and Share
 Draw diagrams with (digital vs manual.); resources using social media (Facebook, Critical thinking Billing machines
the mouse WhatsApp, YouTube …); Digital cameras
Utilization of digital  Outline the advantages and Ethical Smart phones
resources disadvantages of manual and automated reasoning PCs
 Sending and systems. 4
Receiving emails skills in critical Computer
judgement, Internet
 Uploading data to a reasoning, Mobile or Fixed
net work prediction, phones.
inference,
Computer Applications

 Downloading evaluation,
information from a problem
network solving,
interpretation
 Chatting of a forum
 communicating with
a telephone call

Page 11 of 57
CONTEXTUALIZATION COMPETENCIES TO BE ATTAINED RESOURCE
Duration(i
Family of life Examples of real life Categories of
Examples of Actions Core knowledge Skills Attitudes Didactic Material n
situations situations Actions
period(s))
 Identify domains of use of  monitoring and  Determine use of general purpose  Sharing files
general purpose and control system; applications in commerce, industry, on a network
computing applications;  simulation and science, education, arts and media  Electronic  Internet
Utilization of General  Exploit productivity tools. modelling systems; (essay) {Field visit to: Shops Pharmacies, mailing  Websites
purpose and  batch and online Banks/IT firms, Insurance Companies };
 Retrieving  Architectural/
computing processing systems  Establish a solution to a problem using
to files on a building plans
applications  word processing; productivity tools (spreadsheets, word 4
processors, database, presentation computer  Photoshop
 Desktop publishing.
software,).  Using the  Digital camera
telephone  ATM machines
 Basic  Application software
database
design
Assessing the  Explain the Socio-  Notion of computer  Outline social challenges associated with
Socio-Economic  Responsible
Buying a computer economic effects of crimes and how to the use of computers  Charts
Implications of use of
Disposing computers Describe the Social computers on people and prevent them.  outline measures to combat social  Cardboard
the use of computer
Cleaning a computer and cultural influences organisations.  Effects of the use of challenges associated with the use of  Scheme of work
computers  Good
of Computers computer computers  Endorsed textbooks
ergonomic 2
equipment (health, and digital resources
practices.
work place)
 Discuss the legal  Identify laws that prohibit  Copyright laws
issues related to computer crimes. stipulations;
the use of  Knowledge of  Charts
computers crimes linked to  Awareness of  Cardboard
computer usage; binding  Syllabus
 Copyright laws  Knowledge of how legislation of  Scheme of work
Explain Legislation to recognize copyright  Learner guide
and Ethical Issues licensed open  Awareness of  Endorsed textbooks
 Data Protection related to the use of source software; measures to and digital resources 2
laws Computers
combat  Teacher support
computer websites
 Privacy crimes  Discussion forum
 Resource List
 Intellectual property
Cyber security

Page 12 of 57
CONTEXTUALIZATION COMPETENCIES TO BE ATTAINED RESOURCE
Duration(i
Family of life Examples of real life Categories of
Examples of Actions Core knowledge Skills Attitudes Didactic Material n
situations situations Actions
period(s))
 Recognizing privacy and  Knowledge of  Charts
integrity of commercially Professional  Cardboard
sensitive or personal Standards of  Awareness of  Syllabus
 Identify and discuss
material on the internet. conducts, eg. BCS, professional,
the ethical and  Scheme of work
IEEE, ACM, etc. ethical and
moral obligations of Identifying issues of  Learner guide
moral
the users Privacy and Integrity  Endorsed textbooks
obligations of
in Computer Usage and digital resources 2
users of
 Equity, access and  Teacher support
information
power websites
systems
 Discussion forum
 Resource List
 Analyse the  Illustrating the economic  Benefits and
economic aspects advantages and limitations of the
related to the use of disadvantages of use of computers in
computers computers to society. economic domain.  Charts
 Awareness of  Cardboard
 Fostering economic  Endorsed textbooks
innovation Discussing the effects of the and digital resources
Economic values of computers on  Teacher support
Computer Usage people and websites
2
 Exploitation of organisations.  Discussion forum
information  Resource List

 Limits on
information access

Page 13 of 57
Module 2: SOFTWARE
Class: Lower Sixth Theory: Practical: Duration of Period : 50 minutes

Specific objectives: On completion of this module, students should have the opportunity to:
a) Demonstrate an understanding of software Requirements.
b) Differentiate between application and system software.
c) Know the different types of operating systems.
d) Understand the structure, functions, and philosophy of operating systems.
e) Understand scheduling, dispatch and deadlocks simulation computing.

Module 2: SOFTWARE
Duration: hours
PRESENTATION OF THE MODULE
This module enables the learners to categorize software and understand how the operating system manages the activities and resources of the
computer system. It also introduces the learner to techniques used to maintain an operating system.
CONTRIBUTION OF MODULE TO CURRICULAR GOALS AND ACHIEVEMENT
This module focuses on a specific component of a computer system called software and explains in detail how the operating system works.
CONTRIBUTION OF MODULE IN THE LEARNING DOMAIN
The module is expected to lead the learner to explore operating systems.
CONTRIBUTION OF MODULE TO THE TEACHING SYLLABUS AND OTHER DOMAINS OF LIFE
This module would enable the learner to:
 Categorize software,
 understand operating systems.

Page 14 of 57
Contextualization Competencies Resources
Family Attitudes Duration
of life Example of life Category of Skills Didactic (in
Examples of actions core Knowledge
situation situations actions material period(s)
s )
Categorization of  Classify software;  Software,  source (search) for software in the
 Buying software
software  Evaluate demands in  Application software and community or online;
acquiring software (financial, categories  Evaluate software for a specific
 Choosing
software
legal, security).  System software and types task (suitability and limitations).
o Operating system,
o Utility software,
 Responsible use
 acquiring o Language translators  Projector
of proprietary
 Textbook 6hrs
EXPLORING SOFTWARE

software o Device drivers;


software
 Acquiring software:  Internet
 Honesty
o Outsourcing;
 developing o Freeware;
software o Open Source;
o Closed source;
o Shareware;
 installing software
 Attributes of good software;

Page 15 of 57
Contextualization Competencies Resources
Family Attitudes Duration
of life Example of life Category of Skills Didactic (in
Examples of actions core Knowledge
situation situations actions material period(s)
s )
Description of  Explain the purpose of  Role of system software;  Choose suitable system software
System software System Software;  System and utility programs for a given purpose;
 Describe the scope and for:  Differentiate parameter passing
range of system software; o linking loaders, techniques ( call by value, name,
 Describe the need for and o file re-organization, value result reference);
the operations of specific o transfer programs,  Differentiate stages of the
pieces of system software; o subroutine libraries; compilation process;
 Describe how the compiler  Compilation processes:  identify the functions of systems
functions. o lexical analysis, and utility programs (linking
o syntax analysis, loaders;
o code generation;  Differentiate stacks and Stack
 Booting the  Stack mechanism for pointers ;
computer procedure calling and  Write steps to set a stack and  Textbook
parameter passing. establish it as the current stack;
 Installing software  Internet
 Differentiate parameter passing
 Video
ways between procedures;  Responsible use of
projector 8hrs
 differentiate procedures and system software
 Uninstalling  Computer
functions;
software with an
 write pseudo code syntax for a OS.
procedure;
 write a procedure;
 write code fragment for a function;

Page 16 of 57
Contextualization Competencies Resources
Family Attitudes Duration
of life Example of life Category of Skills Didactic (in
Examples of actions core Knowledge
situation situations actions material period(s)
s )
Management of  Explain the purpose of OS;  Purpose of OS;  Differentiate the types of OS
system resources  Describe types of OS;  Types of operating systems:  Explain how operating systems are
 Identify resources to be o Batch, installed.
managed by the OS; o on-line,  Describe file storage methods
 Describe computer user o multi-access,
interface; o real time transaction
processing,
o network,
o process control;
 Saving a file  Textbook
 User interfaces (GUI, CL) and
their characteristics;  Internet
- Organise
 Printing a file  Notions of:  Video
- Management
projector 4hrs
o Cloud computing, - Collaboration
o Grid computing,  Computer
-
 Adding a new  with an
o High performance
device OS.
computing,
o Internet computing;
 File storage methods
o File directories,
o File access control,
o Lock.

Management of  Explain the role of OS in - Process;  Explain the rationale for process
processes in a process management; - Sharing of processor: management; - Scheduling tasks
computer o Multi-tasking, with ease
 Adding memory  Explain concepts in process  Outline process management
o Multi-programming; - Management of
to a computer management. activities;
 Process creation and waiting queues
 Outline the states of a process in  Textbook
termination; - Equitable sharing
 Multi-tasking a the computer;  Internet
of access time to a
computer  Concurrent processes;  Sketch the process State diagram  Charts 10hrs
limited resource
 Race condition; (five states);  Cardboard
such as water from
 Installing software  Mutual exclusion;  Differentiate communicating and
a public tap, road
 Deadlock; non-communicating concurrent
junction access by
 Deadlock detection and processes;
vehicles(police vs.
resolution strategies;  Identify the race condition in a
traffic light)
 Context switching. given real life scenario;

Page 17 of 57
Contextualization Competencies Resources
Family Attitudes Duration
of life Example of life Category of Skills Didactic (in
Examples of actions core Knowledge
situation situations actions material period(s)
s )
 Explain methods to resolve race
condition;
 outline the conditions for deadlock
to occur;
 Sketch a resource allocation
graph(RAG) for a given scenario;
 Use a RAG to detect decide if
deadlock is possible or not;
 Explain ways of solving deadlock;
 Explain how the O.S uses stacks
 Scheduling strategies: when switching context during
 Notion of burst time function calls;
 Describe scheduling o pre-emptive  Differentiate concepts in process
strategies used by the OS to  notion of quantum management;
manage processes time,  Describe criteria for selecting a
 Round Robin CPU-scheduling algorithm for a
 Priority particular system;
 Shortest Remaining
 Differentiate Scheduling algorithm
Time Next.
(FCFS, SJF, RR, Priority);
o non pre-emptive;
 Represent process scheduling
 First Come First
using a Gantt chart;
Served,
 Compute:
 Shortest Job First,
Average Turnaround time,
o Gantt chart representation
Average waiting time,
of process scheduling.
for given processes;

 Explain Starvation and ageing of


processes.

 Adding memory  Describe how OS manage  Description of memory  Describe various ways of
to a computer memory; management; organizing memory hardware;
 Textbook
 Explain the need to run  Process loading and  Differentiate various memory- - Flexibility with
 Internet
 Multi-tasking a several processes swapping; management techniques, (paging management of 6hrs
 Charts
computer Management dynamically and safely on a  Memory sharing schemes: and segmentation); computer memory
Memory by OS system with physically finite o fixed and variable  Differentiate logical and physical
 Installing software storage resource; partition; address spaces (logical address vs

Page 18 of 57
Contextualization Competencies Resources
Family Attitudes Duration
of life Example of life Category of Skills Didactic (in
Examples of actions core Knowledge
situation situations actions material period(s)
s )
 Describe the functions of OS o Simple paging and simple physical address);
on memory management. segmentation.  Describe Process swapping.
 Virtual memory and role;
 Notions of addressing
modes/assembly language.
 Adding memory  Describe how devices  Device drivers;  explain the performance
to a computer interconnect in a computer  Device controllers; characteristics of mass-storage
system;  Interrupts types and interrupt devices;
 Multi-tasking a  Explaining how the OS management by OS;  differentiae spooling and buffering;
computer handles interrupt;  Buffering and spooling and  Differentiate Interrupt Driven I/O
 Describing various I/O effect on system performance. and DMA.  Mastery of
 Textbook
management techniques different
 Installing software Management  Internet
such as: Program I/O hardware options 6hrs
of Devices by OS  Charts
(Pooling), Interrupt Driven for computer
I/O and DMA. systems
 Adding devices to
system

 Installing device
driver.
 Adding memory  Describe how file are  File characteristics such as:  Describe how the file directory is
to a computer organised and stored in the filename, file extension, file organised (single level, two level,
computer; size; tree structure directories);
 Multi-tasking a  Determine ratings of file  File system: naming and  Determine ratings of file access
computer access methods; directory organisation; methods;
 Create and managing files in  General notions on files;  Outline file attributes;
 Textbook
 Installing software the computer;  File access methods:  Outline OS operations on a file;
 Internet
 Explain file system (eg Sequential and direct.  Differentiate Sequential Access - Proper saving of
Management of file  Charts
FAT16, FAT32, NTFS, ext in  FAT16, FAT32, NTFS, ext in and direct access; files 6hrs
 Adding devices to by OS  A PC with
unix environment). unix environment);  Compare file systems. - confidence
system a windows
 Working with files in a GUI
OS
environment.
 Installing device
driver.

 Saving a file

Page 19 of 57
Contextualization Competencies Resources
Family Attitudes Duration
of life Example of life Category of Skills Didactic (in
Examples of actions core Knowledge
situation situations actions material period(s)
s )
 Installing  Explain OS security strategy  Access security:  Describe security strategy in OS;
programs for a computer system; o password protection,  outline types of errors in OS;
 Explain how the OS o logins,  identify sources of errors in OS;
 Updating manages errors in a o authentication;  Describe error management
programs computer.  Error management in OS. strategy in OS. - safety usage of the  Textbook
Maintenance of an
o error detection, computer  Internet 4hrs
OS
 Removing o error recovery. - securing data
programs

 A computer stalls
(hangs)

Page 20 of 57
Module 3: COMPUTER NETWORKS, DATA COMMUNICATIONS AND SECURITY

Class: Lower Sixth Theory: Practical: Duration of Period: 50 minutes

Specific objectives: On completion of this module, students should have the opportunity to:
a) Appreciate the need for data communication networks.
b) Identify the different equipment and components used.
c) Know all transmission modes, and media.
d) Describe the various network communications standards
e) Recognize the need for communication Protocols.
f) Understand modulation and multiplexing.
g) Explain the concepts of computer Networks and Topology.
h) Understand network implementation and security.

Module 3: COMPUTER NETWORKS, DATA COMMUNICATIONS AND SECURITY


Duration: hours
PRESENTATION OF THE MODULE
This module introduces learners to computer networks prepares them to demonstrate competency in choosing network equipment and setting up
a secured computer network. It also permits the learner to gain skills on exploiting the internet for research and business.
CONTRIBUTION OF MODULE TO CURRICULAR GOALS AND ACHIEVEMENT
This module enables the learner to exploit the internet which can help him/her to be productive in the economic, Social and Family, and Media
and communication life domains.
CONTRIBUTION OF MODULE IN THE LEARNING DOMAIN
The module is expected to lead the learner to set up, configure and use computer networks.
CONTRIBUTION OF MODULE TO THE TEACHING SYLLABUS AND OTHER DOMAINS OF LIFE
This module would enable the learner to:

Page 21 of 57
 Set up a secured computer network
 Exploit the internet.

CONTEXTUALIZATION COMPETENCIES TO BE ATTAINED RESOURCE


Family of Examples of life Categories of Actions Examples of Actions Basic (core) knowledge Skills Attitudes Didactic Duration (in
life situations Material period (s))
situations

 recall types of network  Types of network (LAN,  Choose appropriate type of


(LAN, MAN, WAN); MAN, WAN); network for a given context;
 Describe types of network  Components of a  outline network software;
connections (point to point, network;  Compare, network topologies  A physical
 Choosing an
multipoint, …);  Network topology; based on characteristics like:  Creative Network
appropriate 2
Exploration of computer  Explain features of network  Network operating robustness, scalability … thinking  Video
network topology
network platform operating systems system;  Select suitable physical and logical  Proactive Tutorials
4
(multitasking, multi-user);  Network architecture. topologies;
 Describe network  Differentiate types of network
architectures. architectures.

 Explain how network  Network devices;  Select and connect the hardware
devices function (MODEM,  Transmission mediums; components of a network; cables,
 Connecting the repeaters, switches, bridges,  network configuration; switch, router, modem;
different routers, and gateways … );  Mobile technology;  Compare transmission mediums
equipment and  Describe transmission  Network troubleshooting. based on characteristics (data rate,
mediums (cables and transmission distance, ease of
Computer network and data communication environments

components of a
 A network
network. wireless); installation …);  Collaborative
lab.
 Choosing Setting up a computer  Configure the operating  Explain the difference between  Profession
 Lab
appropriate network system for network; wired and wireless transmission;  Assertive
manual
network  Explain how mobile  Outline errors that may occur in a 6
components communication technology network;
 Troubleshooting work.  Set up a network;
a network  Configure an operating system for
networking;
 Troubleshoot a network.
 Identify the features of data  Explain the purpose of data  Creative and
 Selecting a transmission; Logical
communication network;  Network
convenient  Data communication;  Determine the differences between reasoning
Data Communication  Describe data lab
transmission  Data communication the modes of data transmission;  Communicate
communication modes  Textbook
technology for a modes.  Compare serial and parallel effectively
(simplex, half duplex,  Internet
given situation transmission based on speed,
duplex);

Page 22 of 57
CONTEXTUALIZATION COMPETENCIES TO BE ATTAINED RESOURCE
Family of Examples of life Categories of Actions Examples of Actions Basic (core) knowledge Skills Attitudes Didactic Duration (in
life situations Material period (s))
situations

 Differentiate between digital number of bits transmitted at a 6


data transmission types time, …;
(parallel, serial);  Explain in a report the advantages
 Explain the difference and disadvantages of analog and
between synchronous and digital signal transmission.
asynchronous transmission;
 Explain the function of
multiplexers, and De-
multiplexers;
 Differentiate between
baseband and broadband
transmission;
 Differentiate between analog
and digital signals
transmission
Securin  Explain data security;  data security, privacy  Explain concepts related to data
g data  Describe safety principles in and integrity; security (privacy, integrity, …);
from protecting data and network  Protect network,  Explain how backup ensures data
unautho from malware; computer and data from security;
rized  Use antivirus to protect viruses, spyware  Explain in a report techniques used
access. computer network from unauthorized access ... to fight plagiarism;
virus, Trojan horse, worm ;  Data backup;  Apply safety principles in protecting
 describe different types of  Firewall; data and network from malware  Ethical and
error detecting code (parity  Data encryption; (scan every incoming Self- discipline
 Implementation  Research
bits, hamming codes, cyclic  Malware; document/program before opening  Honest
of data protection Data security, privacy and Library
redundancy checks/check  Plagiarism. or running, …); behaviour 8
mechanism integrity  Internet
sum );  Scan a computer system using an  Conduct
lab
 Explain measures used to antivirus; testing.
protect computers and  Set up a firewall and web filtering
networks from intruders and using an antivirus;
natural disaster (username  Save data on cloud storage
and password, firewall, data systems (Google drive, …).
encryption, backup, …);
 Recognize ownership of
digital information and guard
against digital theft and

Page 23 of 57
CONTEXTUALIZATION COMPETENCIES TO BE ATTAINED RESOURCE
Family of Examples of life Categories of Actions Examples of Actions Basic (core) knowledge Skills Attitudes Didactic Duration (in
life situations Material period (s))
situations

plagiarism.
Commu  Produce a report comparing the  Creative and
 Establishing of  Standards and
nication  Describe different network OSI and TCP reference models; Logical  Textboo
communication protocols;
protocol standards, and protocols;  Discuss internet protocols (TCP, reasoning k
rules Networking standards and  The OSI reference
s  Explain the OSI reference UDP, IP, FTP …) (essay).  Communicate  Tutorials 4
 IPv6 and related protocols. model;
model. effectively
protocols  Internet protocols.
Explorin  Describe the history of the  history of the Internet;  Explain in a report major events in
g the  Sending and internet;  Notions of: Internet the history of the internet;
Internet receiving e-mail  Explain the concepts Intranet and extranet;  Select suitable hardware and
 Job search intranet, extranet and  Internet services; software needed for access to
 Participating in Internet;  Safety and security internet connectivity;
online social and  Describe services available risks in participating  Access a website using a browser;
cultural meetings. on the Internet (e- online;  Select appropriate internet service
 Compiling and commerce, e-learning, e- for a given context;
tracking an banking …);  Manage bookmarks using a  Self-directed
electronic  Exchange information using browser;  Responsible  Internet
transaction email;  Send and receive e-mail;  Inventive lab
 Selection of an  Use search engines;  Apply for a job online;  Innovative  Tutorials
Using the Internet
Internet service  Doing business online;  Apply for scholarship;  Cautious  Charts.
provider.  Change privacy settings.  ensure privacy;
 Searching for  Search information on the internet 8
information on using a search engine;
the Internet.  assess online information for
 Searching for relevance, bias, validity, reliability
scholarship and and sufficiency;
educational  Download from the internet
opportunities (images, files, software, and
drivers).

Page 24 of 57
MODULE 4: DATA STRUCTURES AND ALGORITHMS

Specific objectives: On completion of this module, students should have the opportunity to:

a) Demonstrate how data is efficiently organized in a computer


b) Practice and expand their ability to analyse and solve problems using a computer.
c) Analyse more complex problems and the development of solutions using Algorithmic tools.

Module 4: DATA STRUCTURES AND ALGORITHMS


Duration: hours
PRESENTATION OF THE MODULE
This module takes care of an important activity in design phase of software development life cycle. It prepares the learner to demonstrate
competency in choosing data structures, building data structures, and writing algorithms. It also introduces strategies used to design algorithms
and how to exploit commonly used algorithms.
CONTRIBUTION OF MODULE TO CURRICULAR GOALS AND ACHIEVEMENT
This module enables the learner to design and write algorithms. It acts as an important step needed by the next module to put in place a
functional computer system.
CONTRIBUTION OF MODULE IN THE LEARNING DOMAIN
The module is expected to lead the learner to design and write algorithms to tackle real life problems.
CONTRIBUTION OF MODULE TO THE TEACHING SYLLABUS AND OTHER DOMAINS OF LIFE
This module would enable the learner to:
 Use and design data structures for a given problem,
 Write algorithms to solve a given problem.

Page 25 of 57
CONTEXTUAL RESOURCES
COMPENTENCIES
FRAMEWORK
Family of
Examples of life Categories Duration(in
life Examples of actions Core Knowledge Skills Attitudes Didactic material
situations of actions period(s))
situations
Data  Recognise how data is  data structure;  Associate data type to the size of data in
 Organising
structure grouped for processing by the  data type the memory for the identifier having such
data for
Introduction computer; a data type Whiteboard
processing  Organised
to data  Classify data into various  Importance of data structure. Projector 1hr
 Defining data research
structure types. Charts
for
programming
 Distinguish the various data  Character;  Outline examples of a given data type;
types.  Integer;  Calculate memory allocated to each
 Organisation of Whiteboard
 Real or float; data type;
 Working with Simple data ideas Projector
 Boolean;  Declare variables using a programming 4hrs
data types types  Ensuring efficient Charts
 Representation of each language syntax.
use of data types
data type in a
programming language.
 Represent data into compound  Arrays (1D & 2D)  Declare an array of elements ;
structures;  string  Represent a range of data of same type
 Specify how elements shall be  Records, as an array of the type;
accessed;  List  Declare string data as an array of
 Building
 Specify possible operations characters;  Organisation of Whiteboard
complex data 4.3 Build
that can be performed on each  Represent heterogeneous data (data of ideas Projector
type from Complex data 4hrs
structure; different types ) describing a particular  Ensuring efficient Charts
simple data types
 Identify areas of application in object as a record ; use of data types
types.
programming;  Declare a list (enumeration) in a
programming language;
 Write algorithms to manipulate data in
arrays strings records and lists.
Abstract  Explain how pointers work;  Array of records;  Declare an array of records in a
data  Organising  Explain how data is inserted  Linked lists; programming language;
structures data into a and accessed in: Stacks,  Stacks;  Write algorithms to insert, search and
computational Using Queues, Binary trees, Hash  Queues ; sort data in an array of records;
model for easy compex data coded, tables;  Binary trees (binary  Outline Binary search tree(BST)
access for tyes  Describe linked lists as search tree as particular properties ;
various pointers. case);  Compare data structures;
purposes  Hash-coded tables.  Compare the pointer driven(variable)
data structures with fixed data structures

Page 26 of 57
CONTEXTUAL RESOURCES
COMPENTENCIES
FRAMEWORK
Family of
Examples of life Categories Duration(in
life Examples of actions Core Knowledge Skills Attitudes Didactic material
situations of actions period(s))
situations
(like arrays);
Developin  Describe forms of algorithms;  Algorithm;  Model the solution to a complex
g  Describe characteristics of a  Forms of algorithm problem in a series of precise and finite
Algorithms  Developing  Translating Whiteboard
Overview of good algorithm ; (pseudocode, flowchart); set of steps;
ways to solve a everyday activities Projector 2hrs
Algorithms  Write steps to solve a problem.  Characteristics of a good  Distinguish good and poor algorithms
problem into algorithms Charts
algorithm. with respect to the spelled out
characteristics.
 Using  Explain the use of various Control structures:  determine which course of action to
 Textbook
constructs to Algorithmic control structure by examples  Sequence; take with respect to prevailing conditions
 Digital
show how a constructs  Choice or selection; in order to arrive at the right solution;  Team spirit
resources, 3hrs
problem can be (Control  Loop or iteration;  Use looping appropriately.  Attention to details
 Charts
solved structures)  Self discipline
 Video projector
 Pre-emptive
 Interpret algorithms  Flowchart;  Design algorithmic solutions using thinking  Cut-out shapes in
 Representing Representing
represented in various ways;  Pseudo code flowcharts and pseudo code.  Logical reasoning the form of
an algorithm in algorithms. 3hrs
 Convert an algorithm from one flowchart symbols
various ways
form to another.  Charts
 Break down a complex problem Design strategies:  Choose a design strategy to solve a
into simpler solvable forms;  Top-down design; problem;
 Build solution for a problem  Bottom-up design;  Split complex problems into simpler  Attention to details
 Selecting an using the different modules of  Step-wise design; problems until they are easily solvable;  Self-discipline
Algorithmic  Charts
algorithm the problem.  Modular design.  solve the simple problems and combine  Peer discussion of
Design  Using scenarios 5hrs
design solutions to build the complex solution; suitable approach
strategies  Projector
strategy.  Split a problem into different modules to solving a given
which can run independently; problem
 Create an interface to coordinate the
different modules.
 Devise strategies to carry out  Sorting Algorithms:  Write algorithms to sort and search
sorting or searching; o Insertion sort elements in arrays and lists.
 Understanding  Team spirit
 Perform sort and search o Merge sort
and using
Commonly manually. o Bubble sort  Attention to fine  charts
algorithms to
used  Search algorithms: details  projector
sort and search 4hrs
Algorithms o Sequential,  Discipline  textbooks
elements in
o Binary,  Passion
complex data
 Sorting and searching  creativity
structures.
strategies:
o Swapping of

Page 27 of 57
CONTEXTUAL RESOURCES
COMPENTENCIES
FRAMEWORK
Family of
Examples of life Categories Duration(in
life Examples of actions Core Knowledge Skills Attitudes Didactic material
situations of actions period(s))
situations
elements
o Divide and conquer
 Express functions in terms of  Recursion;  Determine the base clause of a
itself;  Recursive problems recursive function (Fibonacci and
 Represent recursive functions; o Fibonacci numbers, factorial functions and towers of Hanoi);
 Illustrate the role of stack in o Factorial,  Explain how the O.S uses stacks during  Discs to
Recursion processing recursive functions; o Towers of Hanoi; recursive function calls;
 Representing a demonstrate the
and  Assess the limitation of  Stacks.  Explain why space complexity of  Team spirit
function in Hanoi structure 4hrs
Recursive recursion. recursive algorithms is bound to be  Attention to fine
terms of itself.  Projector
functions:. high at runtime; details
 Digital resources
 Explain why recursive functions for high  Discipline
values hardly produces correct results ;  Passion
creativity

 Optimize an algorithm to  Dry run of algorithms;  Estimate the order of the time
Explain
Steps to problem improve efficiency.  Algorithm testing; complexity of an algorithm in terms of  charts
Correctness
solving that  Evaluating efficiency in the number of times some key  projector
and 4hrs
minimizes waste terms of number of operations are executed at runtime;  textbooks
Efficiency of
of resources.. steps.  Perform dry running of algorithms
Algorithms

Page 28 of 57
MODULE 5: PROGRAMMING

Class: Theory: Practical: Period:

Specific objectives: On completion of this module, students should have the opportunity to:

1. Demonstrate the ability to use different data types in computer programs;


2. Demonstrate the ability to use control structures and simple algorithms in computer programs;
3. Describe fundamental programming concepts and constructs;
4. Plan and write simple programs using fundamental programming concepts;
5. Apply basic code maintenance techniques and conventions when writing programs.

Module 5: PROGRAMMING
Duration: hours
PRESENTATION OF THE MODULE
This module builds on the previous module and permits learners to transform their algorithms into a specific language understood by the
computer. It also introduces learners to the different programming paradigms;
CONTRIBUTION OF MODULE TO CURRICULAR GOALS AND ACHIEVEMENT
This module enables the learner to use a specific programming language to implement their algorithms. Such sills will permit the learner to be
productive in the economic, Social and Family, and Media and communication life domains.
CONTRIBUTION OF MODULE IN THE LEARNING DOMAIN

Page 29 of 57
This module focuses on the implementation phase of the software development life cycle. This skill plays an important role in the building of
computer systems.
CONTRIBUTION OF MODULE TO THE TEACHING SYLLABUS AND OTHER DOMAINS OF LIFE
This module would enable the learner to:
 Choose a programming language,
 Use a programming language to develop software,

CONTEXTUALIZATION COMPETENCIES TO BE ATTAINED RESOURCE


Family Skills
Examples of real
of life Categories of Attitude Didactic
life situations Examples of Actions Core knowledge Duration
situation Actions Material
s
 Present programming as a tool  Programming;  Justify in writing the choice of a
to solve problems using the  Program.. programming language for a given
computer; context;
 Describe types of programming  Differentiate between Program and
languages (low level and high algorithm;
level language);  Classify a given programming language;
 Explain the advantages and  Differentiate machine code and human  Sharing
Classification of
disadvantages of using various understandable code. knowledge
programming 4H
categories of programming  Collaboration.
languages.
languages;  Team spirit Whiteboard
Introducti  Identify areas of application of Projector
on to  Programming various programming Charts
program languages languages; Computers
ming  Explain why some Compilers
programming languages are
preferred to others.
 Explain paradigms (Imperative, programming paradigm;  Outline programming paradigms;
Declarative, Object oriented, Basic concepts of object-  Distinguish between paradigms;
Functional, Event driven); oriented programming:  Classify programming languages under  Sharing
Programming  Explain the concepts of OOP o object, various paradigms; knowledge
6H
paradigm.  Justify the application and o class,  Describe the basic concepts of OOP.  Collaboration
advantages of various o encapsulation,  Team spirit
paradigms. o inheritance,
o Polymorphism;
Writing of  Identifying a Syntax and  Identify the main elements of a  syntax ;  Sharing Whiteboard 4H

Page 30 of 57
CONTEXTUALIZATION COMPETENCIES TO BE ATTAINED RESOURCE
Family Skills
Examples of real
of life Categories of Attitude Didactic
life situations Examples of Actions Core knowledge Duration
situation Actions Material
s
codes in working language. semantics. program and give examples;  semantics;  Describe the main elements of a program; knowledge Projector
a  Practice how to declare and  Elements of a program  Outline examples of main elements of a  Collaboration. Charts
program use various program elements o Identifier, program;  Team spirit Computers
ming  Elaborating the in a code; o Variable/identifiers,  Declare and use various program  Research Compilers
language components and  Explain various program o Constant, elements in a code;  Computationa
rules of a structure; o Reserved word,  Document a programming process; l thinking
programming  Explain the importance of o Character sets,  Write global and local variables in a given
language. documentation in o Simple data types; programing language;
programming;  Scope of variables in a  Declare a variable in a chosen
 Explain the role of subroutine program: local and global; programming language;
 Understanding in a program.  programming language;  Write a subroutines.
the meaning of  Install, write and run simple  programming tools (compiler,  Install a compiler on a computer;
words or codes using a compiler. editor, debugging …);  Write and run a simple code given a
keywords in a
 Identify the important compiler.
working language.
elements to write and run a  Coding.
code.  Sharing
Programming
 Working with a knowledge 2H
environment
programming tool  Collaboration.
e.g. Pelles C,  Team spirit.
Free Pascal IDE,
etc.

 State elements of standard  I/O functions e.g. Pascal:  Explain the use of I/O functions;
program structure (Program writeln; C: printf, scanf;  Write simple programs e.g. compute
header or pre-processor  Variables, expressions, and areas, list of statements ...;
Whiteboard
 Understanding directives, Variable declaration, assignment statements.  Store and manipulate numbers and text in  Coding
Projector
the different parts Constant declaration, Body of a program using variables, expressions,  Collaboration
Charts
of a program. Program structure the program, Begin/end and assignment statements;  Team work 3H
Computers
notations);  Use I/O functions e.g.  Research Compilers
 Assignment notation; o Pascal: writeln;
 Improve on the structure of a o C: printf, scanf.
standard program.

Developi  Writing error free  Perform dry running to  Types of errors in a code:  Outline types of errors in code;  Collaboration Whiteboard
2H
ng  Performing codes (debugging) determine output. syntax, logic, and run-time  Differentiate between types of errors;  Team spirit Projector

Page 31 of 57
CONTEXTUALIZATION COMPETENCIES TO BE ATTAINED RESOURCE
Family Skills
Examples of real
of life Categories of Attitude Didactic
life situations Examples of Actions Core knowledge Duration
situation Actions Material
s
program program  Identify and use tools for error error.  Validate a computer program using test  Being Computer
ming validation checking;  Define debugging; cases. efficient Charts
techniqu  Perform program testing;  Debugging features:  Outline types of debugging; Compiler
es  Describe types of debugging; breakpoints, watch points  Perform debugging in a programming
and instruction tracing; environment.
 Test cases.
 Recursion;  Implement recursion in a chosen
 Explain recursion; Whiteboard
 Recursive problems e.g. language.
 Express functions in terms of Projector
Fibonacci numbers,  Efficient.
 Writing efficient  Implementation of itself; Charts
Factorial, Towers of Hanoi ...  Team spirit 2H
and shorter codes recursion  Use recursion as alternative Computer
 Mathematical representation  Coding
way of defining some Compilers
of recursive functions: base
functions.
case and general case.
 Use control structures to solve  Iteration;  Choose on a more efficient looping Whiteboard
repeated tasks.  counters; method;  Team work Projector
 Adopting ways to
 Looping structures  Trace values of variable during looping.  Coding Charts
resolve repeated  Iteration 4H
o While loop,  Express a looping problem using more  Research Computers
actions.
o Repeat loop, than one looping structure.  Efficient
o For loop; Compilers
 Defining functions  Explain advantages of the use  Sub routines  identify when to use functions in
for specific of functions or procedures;  Types of routines: function programming; Whiteboard
 Team work
problems  Sub routines  Represent mathematical and procedure.  Declare variables in functions or Projector
 Coding
 Representing (functions, functions in programs procedures (global and local); Charts 3H
 Research
smaller tasks as procedures)  Differentiate between function  Implement a function in programs e.g. Computers
 Efficient Compilers
modules and procedure. factorial, swap, ...;
 Call a function within a program.
 Building of  Declare complex data types in  Abstract or complex data  Declare and use complex data types
complex data a program (arrays, strings and types: (string, record, array, list) in a program.
types from simple records)  Manipulate elements of an array in a
 Coding Whiteboard
Working data types. Construction of data  Need for complex data types code: read, access, initialize, sort
 Validating Projector 6H
with structures as composition of standard elements, perform computation.
 Team work. Charts
group  Working with data types.
Computers
data complex data  Access and manipulating data
Compilers
types in complex structures.
 Explain different types of sort  Sort algorithms  Write simple sort algorithm;  Coding
Sorting techniques 4H
(Bubble sort, insertion sort,  Search algorithms  Describe sort techniques to sort elements  Collaboration

Page 32 of 57
CONTEXTUALIZATION COMPETENCIES TO BE ATTAINED RESOURCE
Family Skills
Examples of real
of life Categories of Attitude Didactic
life situations Examples of Actions Core knowledge Duration
situation Actions Material
s
 Selecting a merge sort, Selection sort, o Sequential in an array;  Team work
technique to sort Shell sort, Quick sort) o Binary search.  Evaluate/compare sorting methods;  Research
elements.  Use a sorting technique to sort  Write simple search algorithms.
elements in an array.
 Explain search algorithms.

MODULE 6: SOFTWARE DEVELOPMENT


Class: Theory: Practical: Period:

Specific objectives: On completion of this module, students should have the opportunity to:

a) Be familiar with the fundamental concepts of software development.


b) Identify software requirements.
c) Appreciate the design processes in software development.
d) Understand verification and validation Process.
e) Apply Software Management.

Page 33 of 57
CONTEXTUALIZATION COMPETENCIES TO BE ATTAINED RESOURCE

Family Categories
Basic (core) Didactic Duration(in
of life Examples of life situations of Examples of Actions Skills Attitudes
knowledge Material period(s))
situations Actions

 Explain Software  Software  Describe the activities of


 Computerising the process development; development; software development;
of: producing time tables.  Establish the purpose of  Software  Outline the importance of
software development; development developing software.
 Explain the activities phases;
 Developing software for involved in software
report cards in a school Fundamental development.  Projector
 Contributing to
concepts of  Computer
technology 2H
software
development  Charts
development
 Chalkboard

Software
Software  Describe software  Software  Compare software
Develop development development models; development development models;
ment processes  Explain advantages and models:  Select appropriate software
(models) limitations of each software o SDLC; development model in a  Projector
 Exploring models that are development model; o Waterfall; given context.  Computer
used to develop software  Assess criteria for o RAD;  Charts
 Contributing to
applicability of various o Spiral; technology  Chalkboard
 Using software models. o Prototype; development.
development model to
build a software

 Presenting software by Developing  Explain software  Software  Outline activities in software  Collaboration  Projector
requirement specification Software requirement analysis; requirement and requirement analysis  Computer 2H
requirements  Illustrate requirements of specification; (elicitation, validation,  Problem solving  Charts
specific software.  Technical specification and  Chalkboard

Page 34 of 57
CONTEXTUALIZATION COMPETENCIES TO BE ATTAINED RESOURCE

Family Categories
Basic (core) Didactic Duration(in
of life Examples of life situations of Examples of Actions Skills Attitudes
knowledge Material period(s))
situations Actions

requirements; verification);
 User requirement.  Write a requirement
specification document;
 Compare technical and User
requirement.

 Identify stages in software  Clearly identify


 Data types and design(interface, the aspects of
data structures architectural and detailed design
 Identify components of a design; design);  Projector
Design  Produce design document.  Abilities to
 Going through the tasks of software to be designed;  Architectural validate design  Computer 2H
process in
software design.  Explain design elements; design; data  Charts
software
 Specify design elements.  Interface design;  Chalkboard
 test data;
 Algorithm design;

Verification  Explain software  Verification;  Describe methods to test a  Truthful  Projector


 Validating software for 2H
and validation verification and validation;  Validation; software (code review, static  Collaboration  Computer
user consumption
Process  Explain testing  Testing methods: code analysis, unit testing,  Team spirit  Charts

Page 35 of 57
CONTEXTUALIZATION COMPETENCIES TO BE ATTAINED RESOURCE

Family Categories
Basic (core) Didactic Duration(in
of life Examples of life situations of Examples of Actions Skills Attitudes
knowledge Material period(s))
situations Actions

mechanisms of a o Unit testing; …);  Chalkboard


developed software. o Integration  Apply testing methods;  Internet
testing;  Differentiate between testing
o Smoke testing; methods.
o Regression
testing ;
o Acceptance
testing.
 Outsourcing;
 Management  Produce a report:
activities: o Software development
o Proposal stages;
writing, o software outsourcing;
o Project o software management  Projector
planning and activities;  Collaboration  Computer
Management  Charts
scheduling,  Team spirit
 Acquiring software of software  Explain project  Chalkboard 2H
o Project  Research
procedures development management activities.
monitoring
process
and reviews,
o Personnel
selection,
o Evaluation
report writing
and
Presentation.

Page 36 of 57
MODULE 7: COMPUTER SCIENCE PROJECT

Class: Theory: Practical: Period:

Specific objectives: On completion of this module, students should have the opportunity to:

a) Work in a team to integrate and apply the learning outcomes from the modules to the later stages of a sustained project.
b) Develop a small computer related business from the point of starting-up to running it.

Page 37 of 57
Contextualization Competences To Be Attained Resources

Skills
Family of life Categories of
Examples of life situations Examples of actions(Skills) Basic (Core) Knowledge Attitudes Didactic Material Duration.
situations actions(Topics)

 Study IT success stories (Nji Collins,


- Role play
Arthur Zang, Mark Zuckerberg, Bill
 Interviewing business  Communicative - Real life
 Identify businesses related to  Business world Gates, Steve Jobs, Jack Mah, )
persons Starting a business  Friendly scenarios
basic skills  E-commerce  Study IT success stories (Google, 2H
 Documenting findings  Knowledgeable (Sample
 Explain customer needs Apple, Amazon)
 Conversational interviews)
 Detect community needs that can be
- Video Projector
solved with IT.
 meetings  Run meetings
 Identify all use cases
Developing a project  Basic knowledge in database design  Design a database
 Break down the job into parts
and modelling
 Assign approximate timelines  Team spirit
 Simple Software design notations (e.g.
for each part  Diligence
 A project development unit and structure diagrams, sequence  Computer
Job planning  Identify required hardware  Critical thinking 6H
plan of steps, etc.) OS, DBMS
 Model a database  Attention to details
 Job planning time
 Costing
 Job planning design
 Explain techniques used to run
 Job planning cost
meetings.
 Implement a client-based  IDE  Set up development environment
project in a professional  Programming  Coding  Computer
Team spirit
manner.  Testing  Testing  Existing
Diligence
 Use appropriate techniques to  Debugging  Debugging Libraries and
Job execution Critical thinking 8H
plan the implementation of a software
Attention to details
sustained project requiring the packages
allocation and management of
multiple resources.
Deploy application  business domain of your software  Justify decisions, assess results and
 Make a formal presentation of a  Public speaking skills learn from reflecting on the process
Do a demo (Explain  Presentation skills
Job termination final product to Clients. in a written report.  Computer
functionalities and cost  Negotiation skills 2H
 Obtain acceptance of the  Sign termination contracts.  Projector
effectiveness)  Technical writing
implementation.

Page 38 of 57
Module 8: COMPUTER ORGANIZATION AND ARCHITECTURE

Class: Lower Sixth Theory: Practical: Duration of Period: 50 minutes

Specific objectives: On completion of this module, students should have the opportunity to:
a) Demonstrate an awareness of the nature of the hardware involved in computer systems.
b) Appreciate the choice of a combination of particular types of peripheral devices, the operating system and the processor.
c) Understand and analyze computer systems architecture.
d) Explain the structure and functioning of computer instruction set.
e) Describe the organization of different bus systems and their characteristics in a computer system.
f) Understand low-level parallelism and its implementation in a processor.
g) Know basic logic gates.
h) Carry out arithmetic operations with basic digital circuits.

Page 39 of 57
Contextualization Competencies Resources

Family of life Examples of life Categories of Didactic Duration (in


Examples of actions Core Knowledge skills Attitudes
situation situation actions material period(s)

 Connect computer hardware components


 Outline the benefits and drawbacks of
 Concept of computer embedded systems
organization  Describe the principal operations of peripheral
 Describe the functional
 connecting  Notion of computer devices including: Laser printer, 3D printer,
setup of computer
hardware Explaining system microphone, speakers, magnetic hard disk, solid
system
components computer  Types of computers: state (flash) memory, optical disc reader/writer,
 Explain the role of 1H
of the system  Mainframe, touchscreen, virtual headset  Text
internal hardware
Computer  Microcomputer  Explain the role of internal hardware books
components.  Curiosity
 Minicomputer components (e.g., CPU, RAM, ROM,  Chalkboa
 Careful
 Super computer. cache, hard drive, motherboard, power supply, rd
Computer handling of
video card, sound card)  Internet
organization equipment
 Differentiate between types of computers  Charts
 Team spirit
 Hardware and  Compute
 Relate hardware devices to specific applications  Research
hardware rs
 Classify computer and people
 Classifying classification  Devices
hardware components  Describe the functional setup of computer
hardware Classification of (processing, storage,
 Explain processor system
computer output, input)
architecture  Outline differences between RISC and CISC 3H
 Selecting hardware  Processors
 Identify interfaces and processor architectures
hardware for components architecture: RISC,
communication paths for  Outline the importance / use of
specific use CISC,
device connectivity pipelining and registers in RISC processors
 Standard buses and

interfaces
 Stored program
 Compare the Von Neumann architecture with
 Explain Von Neumann concept
other architectures like Flynn, CRAY, Data flow
model and the stored  Von Neumann model
and Harvard,
program concept  Other models: Flynn
 Explain briefly the characteristics of  Text
 Identify the functions of (SISD, MISD, SIMD,
Computer  Exploring the Types of massively parallel computers  Curiosity books
the main components of and MIMD)
architecture computer computer  Outline the roles of virtual machines  Team spirit  Chalk 3H
a computer  CRAY, Harvard
design architecture architectures  Explain the benefits and limitations of virtual  Research  Internet
 Describe computer (description only)
machines  Charts
architectures and their  Computers without
 Explain how data are transferred
characteristics. memory.
between various components of the computer
  Shared memory vs
system
separate memory

Page 40 of 57
Contextualization Competencies Resources

Family of life Examples of life Categories of Didactic Duration (in


Examples of actions Core Knowledge skills Attitudes
situation situation actions material period(s)

 Describe components of
 Components of the
the CPU and stating  Explain the roles of the Arithmetic and Logic Unit  Text
CPU;
their functions; (ALU), Control Unit (CU)and system clock, books
 Bus system;  Curiosity
 Rating components Immediate Access Store (IAS);  Internet
 Registers;  Careful
according to access  Outline the factors that affect computer  Charts
 Exploring the Processor  Memory system handling of
speed and size; performance;  Chalkboa 4H
CPU configuration (RAM, cache, ROM, equipment
 Determine factors that  Differentiate between RAM and ROM; rd
PROM ...);  Team spirit
affect computer  Differentiate between Static RAM (SRAM) and  Compute
 Memory/storage  Research
performance; Dynamic RAM (DRAM); rs
hierarchy;
 Associate address and  Illustrate memory hierarchy (pyramid).  Devices
 Address mapping.
data
 Demonstrate the  Instruction/machine  Explain the factors that contribute to the
sequence of steps taken cycle (Fetch-decode- performance of the computer system (processor
to process execute cycle); type and number of cores, bus width, clock
 Understandin Parallel instructions/data by the  CPU registers; speed, cache memory);
g how data/ processing and CPU.  Data processing;  Describe the stages of the Fetch-Execute (F-E)
instruction is machine  Describe the role of  Parallel processing cycle ; 3H
processed by instruction registers in data  Explain situations in which polling is done and  Curiosity
methods (Pipelining,
the CPU Cycle processing. multiprocessing). where interrupts occur ;  Careful  Text
 Illustrate parallel  Illustrate the sequence of steps taken to process handling of books
processing. instructions/data by the CPU; equipment  Charts
 Compare pipelining and parallel processing.  Team spirit  Internet
 Research
 Illustrate how devices  Polling  Difference between Interrupt and Polling;
interact.  Interrupt  Describe interrupt detection strategy.
 Device
Polling and  Detection of interrupt
communicatio 1H
Interrupts
n

 Interpret low level codes  Low level  Explain the relationship between
(LOAD, STORE, ADD); programming; assembly language and machine code;
 Interpreting  Outline the features of  Machine language  Trace a given simple assembly language  Text
Designing  Coding
the language Low level low level programming.  Assembly language program; books
operations for  Team spirit 3H
of the programming  Machine instructions  Explain instructions sets (data movement  Chalk
the computer.  Research
machine.  Instruction set instructions, input/output instructions, arithmetic  Internet
(transfer, logical, shift, operations, unconditional and conditional
arithmetic, branch, instructions, compare instructions;

Page 41 of 57
Contextualization Competencies Resources

Family of life Examples of life Categories of Didactic Duration (in


Examples of actions Core Knowledge skills Attitudes
situation situation actions material period(s)

input and output;  Manipulate machine instructions code (LOAD,


register instructions). STORE, ADD);
 Operand addressing  Give examples of the different instruction
modes: immediate, formats (0-address instruction, 1-address
instruction, 2-address instruction, 3-address
instruction);
 Explain briefly the notion of fixed-length and
variable-length instructions;
 Distinguish between different addressing modes
including immediate, direct, indirect, register,
relative and indexed.
 Carry out arithmetic
operations (Addition,  Distinguish between the use of kibi and kilo,
Subtraction, division, mebi and mega, gibi and giga, tebi and tera;
multiplication) in base 2,  Number systems  represent binary numbers in one’s and two’s
 performing 8, 10 and 16.  Data representation complement ;  Computation
 Binary
arithmetic  Convert from one base  Sign magnitude, one's  Convert an integer value from one number base  Rigorous 4H
Arithmetic
operations to another. and two’s representation to another;  Recall
 Represent numbers complement.  Perform binary addition and subtraction;
using sign magnitude,  Describe practical applications of Binary Coded
 Text
one’s and two’s Decimal (BCD) and Hexadecimal.
books
complement.
 Charts
 Explain combinational  Logic gates;  Differentiate between combinational circuits and
 Rulers
and sequential circuits;  Boolean expression; sequential circuits.
 Chalk
 Identify logic  Boolean Algebra;  Sketch the NOT, AND, OR, NAND, NOR logic
 Blackboa
components;  Truth tables; gates;
rd
 Building  Simplify Boolean  Logic circuits  Construct the truth tables for AND, OR, NAND,
 Pencils
logical  Logic gates expressions. NOR gates;
circuits. and  Build logic circuits  Construct a logic circuit from a logic expression  Drawing
Boolean  Implement other logic or a truth table;  Resolving 4H
 Designing arithmetic gates using universal  Construct a truth table from a problem
circuits logic gates (NAND and statement, a logic expression or a logic circuit;
NOR)  Derive a logic expression table from a problem
statement, a truth table or a logic circuit;
 Implement logic gates using universal logic
gates (NAND, NOR)

Page 42 of 57
Contextualization Competencies Resources

Family of life Examples of life Categories of Didactic Duration (in


Examples of actions Core Knowledge skills Attitudes
situation situation actions material period(s)

 Design circuits for  Circuits and  Produce truth tables for logic circuits including
simple system e.g. traffic components; half adders and full adders;
lights  Input and output of  Describe the SR and JK flip-flop;
 Deduce output and circuits;  Describe the role of flip-flops as data storage
 Basic inputs of given circuits  Binary adder; elements;
digital  Identify areas of  Tables for adders;  Draw a logic circuit and derive a truth table for a 3H
circuits application. flip-flop;
 Explain karnaugh maps.  Perform Boolean algebra using De Morgan’s
laws;
 Simplify a logic circuit/expression using Boolean
algebra and Karnaugh maps.

Module 9: INFORMATION SYSTEMS

Class: Lower Sixth Theory: Practical: Duration of Period: 50 minutes

Specific objectives: On completion of this module, students should have the opportunity to:
a) Demonstrate knowledge and understanding of main aspects of Information Systems.
b) Demonstrate an understanding of the components of an information system and the links between them.
c) Introducing data flow diagrams and their use in the description of an information system.
d) Understand the need for designing user interfaces, and becoming familiar with design principles.

Page 43 of 57
CONTEXTUALIZATION COMPETENCIES TO BE ATTAINED RESOURCE
Family
Duration(i
of life Examples of life Categories of Didactic
Examples of Actions core knowledge skills Attitudes n
situation situations Actions Material
period(s))
s
 Identify the components of an  System  Describe the components of an information
Information system  Information system system
 Describe the roles of each  Data  Describe the different types of IS
component in an IS  Information  Explain the purpose of IS in and organisation
Understanding  Classify data capture methods  Data capture  Define a problem in your community for which
Computer Exploring  Identify application areas for an IS can be developed (Project)
information Information information systems  Discuss (essay) the need for an IS in an 2H
systems Systems organization.

Projector
 Discipline
 Describe the structure of an  Library information  Illustrate management levels in an organisation; Digital tools
 Attention to
organization system  Illustrate how information flow within an Charts
details
 Describe how information flows  School organisation;  Team spirit
in the organization management info  Explain how an existing system can be
Information system
 Describe types of information system, …; transform to a computerized system; 3H
in an organization
Development of an Information system

system in an organization (TPS,  Describe the different phase require to develop


MIS, DSS, EIS, HIS, GIS) and IS;
Designing an
Information  Implement the steps to develop an IS for an
system organisation in your community. (Project)
 Describe tools to highlight the  Data flow  Draw a data flow diagram.
system; diagrams;  Set up a library information system (project)
Modeling an  Represent information flow  Pseudo code or  Set up a School management information
graphically. structured English. system (for example processing student marks) 2H
Information system
(project)

Page 44 of 57
CONTEXTUALIZATION COMPETENCIES TO BE ATTAINED RESOURCE
Family
Duration(i
of life Examples of life Categories of Didactic
Examples of Actions core knowledge skills Attitudes n
situation situations Actions Material
period(s))
s
 Explore the ArcMap  PostGIS  Identify elements of the ArcMap interface
environment  Arc Explore  Browse, close and save an existing map
 Query a map  ArcGIS desktop  Query a map using the identify and find ArcMap
Use a GIS  Organize map layers tools software

Page 45 of 57
MODULE 10: DATABASE SYSTEMS

Class: Theory: Practical Duration of Period:

Specific objectives: On completion of this module, students should have the opportunity to:
a) Describe the nature and purpose of database models and how they are used;
b) Describe the functions of the tools readily available in database packages;
c) Appreciate the advantages of relational database systems over traditional file systems;
d) Understand how a relational database is designed, created, used, and maintained;
e) Describe the components of a database management system;
f) Describe the different types of database organizations;
g) Distinguish between shared and distributed databases;
h) Describe some ways databases are used on the Web.

Page 46 of 57
Contextual framework Competences Resources

Family of life Examples of life Categories of Didactic


Examples of actions Core Knowledge Skills Attitudes Duration
situations situations actions Material

 Organize data into fields and records;  Database;  Identify what makes an
 Compare computerized with non-  Computerized vs non- arrangement of data to be
computerized database systems; computerized database qualified as a database;
 Identify commonly used DBMS; systems;  Outline advantages and
 Check data entered into the system.  Data Checks disadvantages of
o Verification, computerized and non-
Understanding
o Data validation. computerized database
concept of
systems; 2h
Designing databases.  Textbooks,
 Search and report on DBMS
database  Discipline,  Visual
Collection and used in online or off-line
management  Team spirit Library,
Organization of data applications;
systems and  Attention to  Physical
 Describe procedures used
modeling details library
to avoid the entry of
 Projector
erroneous or wrong data
into the system.
 Identifying types of database systems;  Flat files;  Identify different database
 Comparing flat file systems with multiple file  Multiple tables or files. types;
Exploring Types of database systems.  Sort out the advantages of
1H
database systems multiple file database
systems over flat-file
systems.

 Describe the significance


Understanding  Relational database;  Textbooks,
 Explain relational database concepts; of each relational  Creative
Relational Organization of data Relational  Entity, field (attribute),  Visual
 Identify links between related tables; database concept; mindset, and
Database in related tables database key field (primary key),  Library,
 Use appropriate data types in relational  Organize data into  Organizational 3h
Management management secondary key, record  Physical
tables – text, numeric, date, Boolean and related tables; orientation
Systems systems (tuple), foreign key. library,
memo.  Select the appropriate  Team spirit
 Charts
data type for each field.

Page 47 of 57
Contextual framework Competences Resources

Family of life Examples of life Categories of Didactic


Examples of actions Core Knowledge Skills Attitudes Duration
situations situations actions Material

 Creativity  Flip charts


RDBMS relationships:
 Determine various  Team spirit  Projector
 One-to-one;
 Explain relational database relationships relationships between tables  Attention to fine  Textbooks 4H
 One-many;
or entities; details  Digital
 Many-many;
 discipline resources

 Inner joins and Outer  Set up joins between tables


 Define and implement joints; joins; in a RDBMS;
 Explain constraints and constraints  Notion of constraints  Enforce constraints using
enforcement; and constraints features of your RDBMS
 Distinguish between Referential integrity enforcement; and SQL;
and check constraints;  Referential integrity Vs  Work with modification
check constraints. anomalies on a database.
 Four stages in Database  Identify the fields belonging
design to each entity in a model;
 Identify entities and relationships;  Logical
o Conceptual design  Select the key fields
 Determine attributes of simple entities; thinking
o Logical design belonging to each entity;.
 Determine attribute domain and candidate  Team spirit
o Normalization  Determine entity 4H
keys;
o Physical design  Attention to
relationships and links;
 Decompose Many-to-Many relationships; fine details
 Entity;  Represent a collection of
 Establish a data dictionary.  collaboration
 Relationships; data using an Entity-
 data dictionary; Relationship model;
 Textbooks,
 Compare
 Normalize databases;  Establish the reasons for  Digital
Database Designing simple
 Implement database using DBMS (up to 4 normalization. resources,
Development databases.  Data redundancy; database
tables);  Transform a table into First  Diagrams on
 Data anomalies designs with
 Ensure that each cell in a table has only one Normal form (1NF), Second charts
o Update, deletion peers.
piece of information, and void of duplicate Normal form (2NF), Third
and insertion  Peer group
rows; Normal form (3NF) and
anomalies; Discussion of 4hrs
 Determine dependency on primary key; Boyce Codd Normal form;
 Types of DBMS entities and
 Describe functional dependency;  Identify functional
normalization: possible
 Identify a functional dependency A to B dependencies (transitive
o 1NF, 2NF, 3NF attributes.
such that dependencies, mutual
and BCNF.  Articulate
o A is a Super key or dependencies) and their
databases
o It is a trivial functional dependency significance in a RDBMS;
terminologies

Page 48 of 57
Contextual framework Competences Resources

Family of life Examples of life Categories of Didactic


Examples of actions Core Knowledge Skills Attitudes Duration
situations situations actions Material

 MS Access;  Create a database using an


 Demonstrate competence in use of RDBMS
 Open / Libre office RDBMS (MS Access or
such as Ms Access and Open/Libre Office
Base; Open base);  Hands on
base;
 DBMS queries – SQL;  Create tables, forms and activity
 List commonly used DBMS;
Using DBMS  Implementation of joins; reports in RDBMS;  Passion
 Demonstrate knowledge in SQL in a familiar
(RDBMS) tools  Create tables, define and  Team work 4H
RDBMS to populate and retrieve data in a
and packages manipulate data using SQL.  Logical thinking
database;
 Implement joins;  Attention to
 Implement joins, writing sub queries, and
 Populate and retrieve data details  Computers
standard clauses to populate and retrieve
Implementation of from a database using  Software
data.
Databases queries. resources
 Implement PHP code and HTML to publish  Scripting in PHP to  Write PHP code to connect  Projector
work on the Internet and other networks. connect to a database; a database to your web site
 HTML. or web application;
 Creativity
Publishing on the  Enter data through your
 Attention to fine
Internet and other website and check that it is 4H
details
networks recorded in your database;
 Discipline
 Retrieve information from
your database through your
website.
 Use an Object oriented
database to store and
 Object- oriented
Using other retrieve information;  Discipline  The Internet
Other Relational  Demonstrate knowledge of other relational database;
Relational  Link your Object oriented  Attention to  Textbooks 2H
database models database models.  Object relational
database models database to your website; details  Charts
databases.
 Enter data into the database
through your website.

Page 49 of 57
Page 50 of 57
MODULE 11: SOFTWARE DEVELOPMENT II

Class: Theory: Practical: Period:

Specific objectives:
On completion of this module, students should have the opportunity to:
a) Use a variety of problem-solving strategies to solve different types of problems independently and as part of a team;
b) Develop Algorithmic thinking skills, and Design algorithms according to specifications;
c) Design software solutions to meet a variety of challenges;
d) Apply a software development life-cycle model to a software development project.
e) Show understanding of how testing can expose possible errors (syntax
errors, logic errors and run-time errors) and error detection in the development of a system.

Resources
Contextual framework Competencies

Family of
Examples of life Categories of Examples of Core Skills Didactic Duration
life Attitudes
situations Actions Actions knowledge Material period(s)
situations
 Solve a given problem in well-  Algorithm.  Explain the concept of algorithm;
Designing Algorithms and

Choosing the
defined steps;  Algorithms  Enumerate examples of problems  Problem  Textbook
most appropriate
 Demonstrate mastery in solving a Development solved by divide conquer; solver  Internet
method in solving
problem by solving its constituent Techniques  Write simple algorithms;  Collaboratio  Flip Charts
software solutions

a problem. Problem-solving
parts; (Divide and Conquer  Describe approaches to design n  Cardboard 6H
strategies
 Explain models used in solving or Stepwise algorithms (top-down and bottom-up  Flexible  Video
Developing
computing problems (divide and refinement, design);  Team spirit projector
conquer, stepwise refinement, Incremental,  Resolve a problem using problem
algorithms
incremental, …); Parallelism). solving models.

Page 51 of 57
Resources
Contextual framework Competencies

Family of
Examples of life Categories of Examples of Core Skills Didactic Duration
life Attitudes
situations Actions Actions knowledge Material period(s)
situations
 Use models to solve a problem.

Designing simple  Express algorithms using basic  Types of Algorithms


Algorithms. constructs; o Sorting  Write search and sort algorithms;
 Understand Control structures in Algorithms:  Compare sorting algorithms;
algorithm design; (Insertion Sort,  Compare searching algorithms;
Designing  Describe search algorithms Bubble Sort,  Choose suitable search or sort
complex (sequential search, binary search); Selection sort) algorithm for a given problem;  Textbook
 Ability to
algorithms to  Describe sorting algorithms; o Search  Apply sorting and searching  Internet
work as a
detect, intercept  Use standard algorithms to Algorithms: algorithms to solve problems;  Flip Charts
team in
and handle Designing analyse and compare (Linear or Sequential  estimate the complexity of an  Cardboard 6H
realizing
exceptions. algorithms algorithmic complexity in terms Search, Binary algorithm;  Video
projects.
of time and space; search, Hashing)  Identify types of complexity (worst- projector
 Logical
 Explain finite state machine;  Complexity of an case, best-case and average-case); thinking.
Drawing up algorithm.  Draw decision tables and state
decision tables  Finite State Machines transition diagrams to represent
and state and Transition conditions against actions.
transition Diagrams.
diagrams.
Designing  Transform an algorithm into a program;.
programs from a  Features found in a  Write a program;
 Use a programming language;
program typical Integrated  Translate, test, run a high-level
 Use an IDE;
template or Development language using an IDE;
 Expose faults in programs and  Ability to  Textbook
skeleton Environment (IDE);  Identify features of an IDE;
ways of avoiding faults; work as a  Internet
 IDE;  Write programming codes using a
 Describe features found in a typical team in  Flip Charts
Using industrial Designing  Modify functioning of given compiler ;
Integrated Development realizing  Cardboard 8H
standard software existing codes to sort  Identify errors in a program;
Environment (IDE): projects.  Video
programming solutions or search variables in  Correct errors in a program;
(Coding, including context-sensitive  Logical projector
tools. arrays.
prompts, initial error detection,  Write codes with correct syntax.; thinking.
including dynamic syntax  Write programs using arrays.
Applying reusable checks).
code,

Page 52 of 57
Resources
Contextual framework Competencies

Family of
Examples of life Categories of Examples of Core Skills Didactic Duration
life Attitudes
situations Actions Actions knowledge Material period(s)
situations
subprograms.

Designing a user
friendly software
interface.
 Explain the stages in SDLC;  Explain SDLC;  Identify activities involved at each stage
 Explain reasons why new software  The Stages in SDLC of a SDLC;
 Textbook
 Notion of
or systems are developed; (Feasibility/Planning,  Choose appropriate Software
working in a  Internet
 Explain reasons for choosing a Analysis, Design, development model to develop
An organisation is team.  Flip Charts
Understanding particular design procedure. Documentation, software;
acquiring a new  Excellent  Cardboard 8H
the Phases of Testing,  Explain software reuse;
technology organisation  Video
an SDLC Implementation);  Analyse an existing program and make
al and time projector
 Characteristics and amendments to
management
activities at each stage enhance functionality.
skills.
of the SDLC.
 Collect opinion of users on existing  Notion of
 Explain the purpose for team work  Textbook
Using the best system to create a new one; working in a
in program developments;  Internet
method to  Data collection  Evaluate data gotten from different team.
Discovering  Explain data collection techniques  Flip Charts
capture external techniques (Dialogue, sources to make conclusion;  Excellent
Techniques to (questionnaire, interview, group  Cardboard 4H
data for analysis Survey, Research,  Make references to collected data and organisation
Understanding software development life cycle

clarify program discussion, …) ;  Video


(interviewing a Questionnaire). drawing a conclusion. al and time
specification  Demonstrate mastery of drawing projector
client, ...) management
conclusions from collected data.
skills.
Identifying and  Program testing
 Explain the significance of testing in
describing the Strategies (Stub
software  Ability to  Textbook
cause of errors testing, Black-box  Test a program;
development; work as a  Internet
program (entering testing, White-box  Identify errors in a program;
 Explain methods of testing team in  Flip Charts
charcter instead f testing);  Correct programming errors;
Using a test developed programs (Dry Run, realizing  Cardboard 4H
a number, ...)  Error correction  Draw trace tables.
plan Walkthrough, White-Box, Black- projects.  Video
strategies (Debugging,
Box, Integration, Alpha, Beta,  Logical projector
Dry-running and trace
Acceptance testing); thinking
Testing a table );
 Establish test plans and test data.
program to  Testing methods

Page 53 of 57
Resources
Contextual framework Competencies

Family of
Examples of life Categories of Examples of Core Skills Didactic Duration
life Attitudes
situations Actions Actions knowledge Material period(s)
situations
identify errors. (integration
testing, alpha testing,
acceptance testing,
beta testing);
 Test Plans and test
data (Normal data
range, abnormal data
range, Boundary data
range).
 Identify reasons for programming error;  Ability to
 Explain debugging techniques; work as a
 Show awareness of why errors  Differentiate between corrective and team in  Textbook
Identifying and  Manual code tracing ;
occur within the codes; preventive maintenance. realizing  Internet
correcting errors  Extra code;
Using a variety  Describe debugging techniques projects.  Flip Charts
in a code.  Use of debuggers;
of methods to (Brute force, Induction and  Logical  Cardboard 4H
 Corrective
debug deduction strategy. thinking  Video
Using debugging maintenance;
programs Back tracking strategy  Problem projector
software.  Adaptive maintenance.
Debug by code testing). solver
 Flexible

preserving
 Ability to  Textbook
program codes  Demonstrate awareness in  Demonstrate the spirit of team work in
Communicating  Techniques of data collaborate  Internet
for future use. documenting codes or patches of the project development through
and storage for long use in realizing  Flip Charts
codes. communication; 4H
documenting ( Backups, …); projects.  Cardboard
Documenting a  Document projects.
Projects  Documentation.  Logical  Video
program and a
thinking projector
program code.
Representing  Explain project management terms;  Project Management  Propose a WBS (Work Break-Down  Textbook
and

activities of a  Describe project planning terms(Project, Lag Structure) for a given project;  Logical  Internet
Using project
Management.
Implementing

project using techniques; time, Slack time,  Produce scheduling tool (PERT thinking  Flip Charts
management 6H
charts.  Describe benefits of Project Floats, Critical task network, Gantt chart) for a project;  Problem  Cardboard
tools
Project
Project

Management (PM); and Path, Mile  Outline activities for the planning stage solver  Video
Analysing the  Describe the activities of each stage stones, …); of a project;  Flexible projector

Page 54 of 57
Resources
Contextual framework Competencies

Family of
Examples of life Categories of Examples of Core Skills Didactic Duration
life Attitudes
situations Actions Actions knowledge Material period(s)
situations
progress of a in project management;  Characteristics of a  Work with methods of controlling
project using  Describe techniques used to control Project; projects (tracking, check points … );
Charts. and facilitate the success of a  Structure of a project  Implement a simple project;
project; Development Plan;  Determine the duration of a project
 Identify the roles, responsibilities  Project management using a Gantt chart;
and performance of members of a tools (Work Break  Compute the duration of a project using
project team; Down Structure WBS, network diagram;
 Carry out basic calculations using Gantt Charts, PERT  Calculate ES, EF, LT, and LF;
PERT, Gantt charts and network Chart).  Determine slack task, critical path;
charts;
 Explain key factors that cause
project failure;

Page 55 of 57
3.0 CONCLUSIONS
“Computational thinking will be a fundamental skill used by everyone by the middle of the 21st
Century, just like reading, writing and arithmetic.” Wing (2011) Computational Thinking.
It is no new news that Computer Science is a mainstream discipline that can no longer be ignored in
schools. This model curriculum provides a basis by which vocational schools, high schools of
education and individual initiatives can effectively implement a coherent computer science
curriculum that is accessible to all. More work has been done to bring the model close to teaching
and laboratory materials that are pedagogically viable and widely accessible. We hope students,
teachers, and other external professional sources will support this work by providing appropriate
incentives that will enable such a curriculum development effort to succeed.
4.0 ACKNOWLEDGMENTS
The conception and design of this curriculum model has been produced with contribution, feedback
and advice from many persons and organisations. We would like to thank the following persons and
organisations for their valuable inputs and support for the development of this high school
Computer Science curriculum:

S/N Name Post Structure


1 Moudji Didier Rene ICG Info/Supervisor IP/Info MINESEC
2 Kambiwoa Lawrence CS-IF/ Moderator IP/Info MINESEC
3 Agwe Lucas B. ICR/CMR/Coordinator RDSE-SW Buea
4 Ngwa Andrew M. ICR/ CSC Chief Examiner RDSE-West Baffousam/GCEB
5 Arrey-Njok Tabe Takang IPR/ICT Lead Examiner RDSE –SW Buea/GCEB
6 Anyam Ephraim Awa IPR RDSE-SW Buea
7 Chifu Emmanual Bawe IPR/ CSC Ass. Chief Examiner RDSE –SW Buea/GCEB
8 Dr. Musongong N. Luke IPR RDSE –SW Buea/UB
9 Ikome Joseph Njie IPR/ICT Chief Examiner RDSE –SW Buea/GCEB
10 Dr. Mrs Patricia Temeching IPR RDSE –SW Buea/UB
11 Clive W. Ayumbi IPR RDSE –SW Buea/SWATICT
12 Tangmo Celestine Fozao IPR RDSE –SW Buea/SWATICT
13 Dr. William SHU Assessor A Level Computer University of Buea
Science
14 Belinga Alain Roger IPN INFO IP/Info – MINESEC
15 SAHA Pierre IPN INFO IP/Info - MINESEC

5.0 REFERENCES
1. CS Teachers.org (2017). Computer Science teachers Association; K-12 Computer Science
Standards, Revised 2017
2. Kigali, (February 2010). Computer Science Curriculum for Computer Science Economics and
Mathematics Option & Mathematics Physics and Computer Science Option, www.ncdc.gov.rw.
3. Massachusetts K-12 (2011), Computer Science Curriculum Guide: Exploring Computer Science
version 4, Joanna Goode University of Oregon, Gail Chapman University of California, Los
Angeles Computer Science Equity Alliance.
4. UNESCO – Nigeria Project (2004). Computer Science Higher National Diploma Curriculum and
Course Specifications, National Board for Technical Education, Federal Republic of Nigeria
5. Pearson Edexcel (2016). GCSE (9 - 1) in Computer Science, Issue 4.
Page 56 of 57
6. Irv Englander, (2009). The Architecture of Computer Hardware, System Software, and
Networking: An Information Technology Approach, Fourth Edition; John Wiley & Sons, Inc.
7. https://k12cs.org/wp-content/uploads/2016/09/K–12-Computer-Science-Framework
8. The Ontario Curriculum Grade 10 to 12 (2008), Computer Studies, Revised, www. edu.gov.on.ca.
9. www.pearsonschools.co.uk/GCSE, May 2019
10. https://www.khanacademy.org/resources/teacher-essentials/teaching-computing, May 2019.
11. K–12 Computer Science Framework. (2016). Retrieved from http://www.k12cs.org
12. CSTA, A Model Curriculum for K–12 (October, 2003). Computer Science: Final Report of the ACM
K–12 Task Force Curriculum Committee
13. ACM/IEEE-CS Joint Curriculum Task Force. Computing Curricula 2001: Computer Science Volume.
December2001.
14. http://www.acm.org/sigcse/cc2001/Task Force of the Pre College Committee of the Education
Board of the ACM.
15. ACM model high school Computer Science curriculum. Communications of the ACM, May 1993.
16. AP Course Description: Computer Science. May 2002.
17. International Society for Technology in Education (ISTE), National Educational Technology
Standards for Teachers, June 2002. http://www.iste.org/standards.

Page 57 of 57

You might also like