Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
22 views

SP Curr JavaScript Programmer 4 60

QCTO Outline and Framework

Uploaded by

tau.kokky
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
22 views

SP Curr JavaScript Programmer 4 60

QCTO Outline and Framework

Uploaded by

tau.kokky
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 42

Skills Programme Curriculum Document

Curriculum Code Curriculum Title

900219-000-00-00 JavaScript Programmer

SP Curr JavaScript Programmer 4 60 Page 1 of 42


Table of content

SECTION 1: SKILLS PROGRAMME CURRICULUM SUMMARY ...................................................................3


1. Skills Programme Information .....................................................................................................................3
2. Curriculum Information ................................................................................................................................3
SECTION 2: SKILLS PROGRAMME PROFILE ................................................................................................6
1. Skills Programme Purpose .........................................................................................................................6
2. Skills Programme Tasks .............................................................................................................................6
3. Skills Programme Task Details ...................................................................................................................6
SECTION 3: SKILLS PROGRAMME COMPONENT SPECIFICATIONS ..........................................................7
SECTION 3A: KNOWLEDGE/THEORY MODULE SPECIFICATIONS .........................................................7
1. 900219-000-00-KM-01, Introduction to JavaScript Programming, NQF Level 4, Credits 6 ....................8
2. 900219-000-00-KM-02, Principles of Programming with JavaScript, NQF Level 4, Credits 9............. 13
3. 900219-000-00-KM-03, Intermediate Programming Principles in JavaScript, NQF Level 4, Credits 9 19
SECTION 3B: APPLICATION MODULE SPECIFICATIONS ...................................................................... 25
Practical Skills Modules ............................................................................................................................ 26
1. 900219-000-00-PM-01, JavaScript Programming Basics for Beginners, NQF Level 4, Credits 6 ...... 26
2. 900219-000-00-PM-02, Programme with JavaScript, NQF Level 4, Credits 6 .................................... 30
3. 900219-000-00-PM-03, Intermediate Programming with JavaScript, NQF Level 4, Credits 12 .......... 35
4. 900219-000-00-PM-04, Projects with JavaScript, NQF Level 4, Credits 12 ........................................ 39

SP Curr JavaScript Programmer 4 60 Page 2 of 42


SECTION 1: SKILLS PROGRAMME CURRICULUM SUMMARY

1. Skills Programme Information

1.1 Skills Addressed by this Curriculum

JavaScript Programmer, NQF Level 4, Credits 60

1.2 Skills Programme Entry Requirements

Grade 11 with Maths Lit and English

Access to equipment, internet connectivity and how to work remotely

1.3 Associated Occupations

Software Developer

1.4 Registered Related Qualifications

• Artificial Intelligence Software Developer


• Cloud Administrator
• Cybersecurity Analyst
• Data Science Practitioner
• Internet-of-Things Developer
• Robotic Processing Automation (RPA) Developer
• Quality Test Automator
• Software Developer

2. Curriculum Information

2.1 Curriculum Structure

This Skills Programme consist of two components namely Knowledge/Theory component and Application
component. The following are compulsory modules in each of the two components:

2.1.1. Knowledge/Theory Component:

The following Modules are compulsory:

• 900219-000-00-KM-01, Introduction to JavaScript Programming, NQF Level 4, Credits 6

• 900219-000-00-KM-02, Principles of Programming with JavaScript, NQF Level 4, Credits 9

• 900219-000-00-KM-03, Intermediate Programming Principles in JavaScript, NQF Level 4, Credits 9

Total number of credits for Knowledge Component: 24

2.1.2. Application Component:

• 900219-000-00-PM-01, JavaScript Programming Basics for Beginners, NQF Level 4, Credits 6

• 900219-000-00-PM-02, Programme with JavaScript, NQF Level 4, Credits 6

• 900219-000-00-PM-03, Intermediate Programming with JavaScript, NQF Level 4, Credits 12

SP Curr JavaScript Programmer 4 60 Page 3 of 42


• 900219-000-00-PM-04, Projects with JavaScript, NQF Level 4, Credits 12

Total number of credits for Application Component: 36

2.2 Skills Development Provider Accreditation Requirements

KNOWLEDGE MODULES

Physical Requirements:

• The provider must have lesson plans and structured learning material or provide learners with
access to structured learning material that addresses all the topics in all the knowledge modules as
well as the applied knowledge in the practical skills.

• QCTO/ MICT SETA requirements

Human Resource Requirements:

• Lecturer/learner ratio of 1:20 (Maximum)

• Qualification of lecturer (SME):

o NQF 5 qualified in industry recognised qualifications with 1 years’ experience in the IT


industry

o Cybersecurity vendor certification

• Assessors and moderators: accredited by the MICT SETA

Legal Requirements:

• Legal (product) licences to use the software for learning and training

• OHS compliance certificate

APPLICATION MODULES

Physical Requirements:

• Valid licenses software and application, including OS.

• Internet connection and hardware availability.

• Examples and information specified in the scope statement and all the case studies, scenarios and
access to hardware and software implied in the scope statements of the modules.

• Remote learners: Provider must provide business IT simulation system (e.g. invoice processing).

Human Resource Requirements:

• Qualification of lecturer (SME):

o NQF 5 industry recognised qualification with 1 year relevant experience

• Assessors and moderators: accredited by the MICT SETA

Legal Requirements:

SP Curr JavaScript Programmer 4 60 Page 4 of 42


• Legal (product) licences to use the software for learning and training

• OHS compliance certificate

• Ethical clearance (where necessary)

SP Curr JavaScript Programmer 4 60 Page 5 of 42


SECTION 2: SKILLS PROGRAMME PROFILE

1. Skills Programme Purpose

Implement solutions to solve real-life problems in an efficient manner applying a knowledge and
understanding of the principles of programming with JavaScript and applicable tools

2. Skills Programme Tasks

• Create well-written and readable JavaScript programs, using a disciplined coding style (NQF Level
4)

• Work collaboratively in a team and execute version control (NQF Level 4)

3. Skills Programme Task Details

3.1. Create well-written and readable JavaScript programs, using a disciplined coding style (NQF
Level 4)

Unique Product or Service:

• Fully functional solutions according to the brief

Occupational Responsibilities:

• Create fully functional solutions using JavaScript programming language

3.2. Work collaboratively in a team and execute version control (NQF Level 4)

Unique Product or Service:

• Collaborative teamwork
• Version control

Occupational Responsibilities:

• Use GitHub functionalities


• Execute version control

SP Curr JavaScript Programmer 4 60 Page 6 of 42


SECTION 3: SKILLS PROGRAMME COMPONENT SPECIFICATIONS

SECTION 3A: KNOWLEDGE/THEORY MODULE SPECIFICATIONS

The following modules are compulsory:

• 900219-000-00-KM-01, Introduction to JavaScript Programming, NQF Level 4, Credits 6

• 900219-000-00-KM-02, Principles of Programming with JavaScript, NQF Level 4, Credits 9

• 900219-000-00-KM-03, Intermediate Programming Principles in JavaScript, NQF Level 4, Credits 9

SP Curr JavaScript Programmer 4 60 Page 7 of 42


1. 900219-000-00-KM-01, Introduction to JavaScript Programming, NQF Level 4, Credits 6

1.1 Purpose of the Knowledge Module

The main focus of the learning in this knowledge module is to build an understanding of fundamentals of
JavaScript programming language

The learning will enable learners to demonstrate an understanding of:

• KM-01-KT01 : Computers 10%


• KM-01-KT02 : Introduction to JavaScript programming 20%
• KM-01-KT03 : Applications of JavaScript 10%
• KM-01-KT04 : Introduction to suitable IDE (Integrated Development Environment) 10%
• KM-01-KT05 : GIT 10%
• KM-01-KT06 : Problem solving in programming 10%
• KM-01-KT07 : Life cycle for developing a solution 10%
• KM-01-KT08 : Cookies 10%
• KM-01-KT09 : Other basics in JavaScript 10%
1.2 Guidelines for Topics

1.2.1. KM-01-KT01 : Computers 10%


Topic elements to be covered include:

• KT0101 Uses and capabilities


• KT0102 Hardware components
• KT0103 Processers + operating systems = platform
• KT0104 8-bit computing: Text, numerical and symbols
• KT0105 Internet connectivity and range of functionalities: e.g. cloud storage, search engines,
etc.
• KT0106 Tools for working remotely
Internal Assessment Criteria and Weight

• IAC0101 Definitions, functions and features of the respective computer elements are stated
(Weight 10%)

1.2.2. KM-01-KT02 : Introduction to JavaScript programming 20%


Topic elements to be covered include:

• KT0201 Definition of JavaScript


• KT0202 JavaScript history and evolvement
• KT0203 JavaScript features and limitations
• KT0204 JavaScript uses
• KT0205 Client-side and Server-side
• KT0206 JavaScript platform and tools
• KT0207 JavaScript features and characteristics
• KT0208 Integrated development environment (IDE)
• KT0209 Selection of JavaScript suitable text editors
• KT0210 Selection of suitable web browsers
• KT0211 Built-in functions
• KT0212 Comments

SP Curr JavaScript Programmer 4 60 Page 8 of 42


• KT0213 JavaScript releases
Internal Assessment Criteria and Weight

• IAC0201 Definitions, functions and features of each topic element are stated

(Weight 20%)

1.2.3. KM-01-KT03 : Applications of JavaScript 10%


Topic elements to be covered include:

• KT0301 Web development


• KT0302 Web applications
• KT0303 Server applications
• KT0304 Games
• KT0305 Smartwatches
• KT0306 Art
• KT0307 Machine learning
Internal Assessment Criteria and Weight

• IAC0301 Applications of JS are listed

(Weight 10%)

1.2.4. KM-01-KT04 :
Introduction to suitable IDE (Integrated Development 10%
Environment)
Topic elements to be covered include:

• KT0401 Definition and characteristics


• KT0402 Purpose of an IDE
• KT0403 Useful features of IDE
• KT0404 Strengths and weakness of the IDE
• KT0405 Refactoring
• KT0406 Debugging
Internal Assessment Criteria and Weight

• IAC0401 Definitions, functions and features of each topic element are stated

(Weight 10%)

1.2.5. KM-01-KT05 : GIT 10%


Topic elements to be covered include:

• KT0501 Overview of Git


• KT0502 Version control
• KT0503 Collaboration
• KT0504 Repositories
• KT0505 Branch
• KT0506 Changes

SP Curr JavaScript Programmer 4 60 Page 9 of 42


• KT0507 Pull requests
• KT0508 Pushing to Git
• KT0509 Source code control
• KT0510 Continuous integration
Internal Assessment Criteria and Weight

• IAC0501 Definitions, functions and features of each aspect are stated

(Weight 10%)

1.2.6. KM-01-KT06 : Problem solving in programming 10%


Topic elements to be covered include:

• KT0601 How to think like a developer and become a problem solver

• KT0602 Problem solving steps:


• Break task down into components
• Identify similar tasks that may help
• Identify appropriate knowledge and skills
• Identify assumptions
• Select appropriate strategy
• Consider alternative approaches
• Look for a pattern or connection
• Generate examples
Internal Assessment Criteria and Weight

• IAC0601 Problem solving as a complex and reiterative process is explained

(Weight 10%)

1.2.7. KM-01-KT07 : Life cycle for developing a solution 10%


Topic elements to be covered include:

• KT0701 Concepts, definition and purpose


• KT0702 Principles of programming life cycle
• KT0703 Stages in the life cycle
• Strategy: goal, objectives, target audience, competition and platform
• Design: Requirements, planning, creation and design
• Maintenance and testing
• Development:
• Testing: performance, security, usability
• Release and ongoing support
• KT0704 Function and content of each stage in the life cycle
Internal Assessment Criteria and Weight

• IAC0701 Definitions, functions and stages of the programming life cycle are described

(Weight 10%)

SP Curr JavaScript Programmer 4 60 Page 10 of 42


1.2.8. KM-01-KT08 : Cookies 10%
Topic elements to be covered include:

• KT0801 Definition, function and purpose


• KT0802 Storing cookies
• KT0803 Reading cookies
• KT0804 Setting cookies expiry date
• KT0805 Deleting cookies
Internal Assessment Criteria and Weight

• IAC0801 Definitions, functions and uses of cookies are described

(Weight 10%)

1.2.9. KM-01-KT09 : Other basics in JavaScript 10%


Topic elements to be covered include:

• KT0901 Concept, definition and purpose


• KT0902 Page refresh
• KT0903 Page redirect
• KT0904 Dialog boxes
• KT0905 Void keyword
• KT0906 Page printing
Internal Assessment Criteria and Weight

• IAC0901 Definitions, functions and uses of JS basics are described

(Weight 10%)

1.3 Provider Programme Accreditation Criteria

Physical Requirements:

• The provider must have lesson plans and structured learning material or provide learners with
access to structured learning material that addresses all the topics in all the knowledge modules as
well as the applied knowledge in the practical skills.

• QCTO/ MICT SETA requirements

Human Resource Requirements:

• Lecturer/learner ratio of 1:20 (Maximum)

• Qualification of lecturer (SME):

o NQF 5 qualified in industry recognised qualifications with 1 years’ experience in the IT


industry

o Cybersecurity vendor certification

SP Curr JavaScript Programmer 4 60 Page 11 of 42


• Assessors and moderators: accredited by the MICT SETA

Legal Requirements:

• Legal (product) licences to use the software for learning and training

• OHS compliance certificate

1.4 Exemptions

• RPL based

SP Curr JavaScript Programmer 4 60 Page 12 of 42


2. 900219-000-00-KM-02, Principles of Programming with JavaScript, NQF Level 4, Credits 9

2.1 Purpose of the Knowledge Module

The main focus of the learning in this knowledge module is to build an understanding of the principles and
functionalities applied when programming with JavaScript

The learning will enable learners to demonstrate an understanding of:

• KM-02-KT01 : JavaScript syntax 10%


• KM-02-KT02 : JavaScript variables 10%
• KM-02-KT03 : Functions 10%
• KM-02-KT04 : Arrays 10%
• KM-02-KT05 : Iteration (Loops) 10%
• KM-02-KT06 : JavaScript data types 10%
• KM-02-KT07 : Type conversions 5%
• KM-02-KT08 : Operators 10%
• KM-02-KT09 : Conditional statements for control flow 10%
• KM-02-KT10 : Scope 5%
• KM-02-KT11 : Advanced functions in JavaScript 10%
2.2 Guidelines for Topics

2.2.1. KM-02-KT01 : JavaScript syntax 10%


Topic elements to be covered include:

• KT0101 Concepts, definitions and purpose


• KT0102 JavaScript values
• KT0103 JavaScript literals
• KT0104 Script tags
• KT0105 Whitespace and line breaks
• KT0106 Use of semicolon
• KT0107 Comments
• KT0108 Events
• onclick Event Type
• onsubmit Event Type
• onmouseover and onmouseout
• HTML 5 Standard Events
Internal Assessment Criteria and Weight

• IAC0101 Concepts, definitions and purpose of JavaScript syntax are understood and stated

(Weight 10%)

2.2.2. KM-02-KT02 : JavaScript variables 10%


Topic elements to be covered include:

• KT0201 Concept, definition and purpose


• KT0202 Local variables
• KT0203 Global variables
• KT0204 Variables:

SP Curr JavaScript Programmer 4 60 Page 13 of 42


• let, const and var
• Global variables
• Local variables
• Variable names
• Reserved words
Internal Assessment Criteria and Weight

• IAC0201 Concepts, definitions and purpose of JavaScript variables are understood and stated

(Weight 10%)

2.2.3. KM-02-KT03 : Functions 10%


Topic elements to be covered include:

• KT0301 Concept, definition and purpose


• KT0302 Function declarations vs. Expressions
• KT0303 Functions calling other functions
• KT0304 Function declaration
• KT0305 Calling a function
• KT0306 Parameters and arguments
• KT0307 Default parameters
• KT0308 Return keyword
• KT0309 Helper functions
• KT0310 Function expressions
• KT0311 Arrow functions
• KT0312 Concise body arrow functions
Internal Assessment Criteria and Weight

• IAC0301 Concepts, definitions and purpose of JavaScript functions are understood and stated

(Weight 10%)

2.2.4. KM-02-KT04 : Arrays 10%


Topic elements to be covered include:

• KT0401 Concept, definition and purpose


• KT0402 Elements and length
• KT0403 Index
• KT0404 Creating arrays:
• Assigning an array value to a variable
• Use the array constructor
• Other
• KT0405 Accessing, adding and removing elements
• KT0406 Assigning values
• KT0407 Sorting arrays
• KT0408 Copy and clone arrays
• KT0409 Destructing
• KT0410 How to use arrays in code

SP Curr JavaScript Programmer 4 60 Page 14 of 42


• KT0411 Array methods
• KT0412 Data transformations: map, filter, reduce
Internal Assessment Criteria and Weight

• IAC0401 Concepts, definitions and purpose of JavaScript arrays are understood and stated

(Weight 10%)

2.2.5. KM-02-KT05 : Iteration (Loops) 10%


Topic elements to be covered include:

• KT0501 Concept, definition and purpose


• KT0502 Iteration
• KT0503 While loop
• KT0504 For loop
• KT0505 For…in loop
• KT0506 Do…while statements
• KT0507 Loop control
• KT0508 Looping in reverse
• KT0509 Looping through arrays
• KT0510 Nested loops
• KT0511 The break keyword
• KT0512 Looping arrays, breaking and continuing
• KT0513 Looping backwards and loops in loops
Internal Assessment Criteria and Weight

• IAC0501 Concepts, definitions and purpose of JavaScript iteration (loops) are understood and
stated

(Weight 10%)

2.2.6. KM-02-KT06 : JavaScript data types 10%


Topic elements to be covered include:

• KT0601 Concept, definition and purpose


• KT0602 Data types (eight fundamental data types)
• KT0603 Primitive data types: Numbers, strings, Boolean
• KT0604 Composite datatypes: object, array and function
• KT0605 Trivial data types: null and undefined.
• KT0606 typeof operator
Internal Assessment Criteria and Weight

• IAC0601 Concepts, definitions and purpose of JavaScript data types, built-in methods and
variables are understood and stated

(Weight 10%)

SP Curr JavaScript Programmer 4 60 Page 15 of 42


2.2.7. KM-02-KT07 : Type conversions 5%
Topic elements to be covered include:

• KT0701 Concept, definition and purpose


• KT0702 Implicit conversions
• KT0703 Converting a string to a number and vice versa
• KT0704 Converting an array to a string and vice versa
• KT0705 Primitive to primitive conversions
• KT0706 Integer to float and vice versa etc.
Internal Assessment Criteria and Weight

• IAC0701 Concepts, definitions and purpose of JavaScript type conversion are understood and
stated

(Weight 5%)

2.2.8. KM-02-KT08 : Operators 10%


Topic elements to be covered include:

• KT0801 Concept, definition and purpose


• KT0802 Arithmetic operators (The assignment operator (=) assigns a value to a variable)

• KT0803 Comparison operators


• KT0804 Null and undefined
• KT0805 Logical (relational) operators
• KT0806 Equality operators: == vs. ===
• KT0807 Operator precedence
• KT0808 Type conversion and coercion
• KT0809 Statements and expressions
• KT0810 The conditional (ternary) operator
Internal Assessment Criteria and Weight

• IAC0801 Concepts, definitions and purpose of JavaScript operators are understood and stated

(Weight 10%)

2.2.9. KM-02-KT09 : Conditional statements for control flow 10%


Topic elements to be covered include:

• KT0901 Concept, definition and purpose


• KT0902 Taking Decisions: if / else Statements
• KT0903 If
• KT0904 If…else
• KT0905 Nested ifs
• KT0906 Continue
• KT0907 Break
• KT0908 Truthy and falsy values
• KT0909 Truthy and falsy assignment

SP Curr JavaScript Programmer 4 60 Page 16 of 42


• KT0910 Else…if
• KT0911 Switch statement
Internal Assessment Criteria and Weight

• IAC0901 Concepts, definitions and purpose of JavaScript conditional statements are understood
and stated

(Weight 10%)

2.2.10. KM-02-KT10 : Scope 5%


Topic elements to be covered include:

• KT1001 Concept, definition and purpose


• KT1002 Local scope
• KT1003 Global scope
Internal Assessment Criteria and Weight

• IAC1001 Concepts, definitions and purpose of scope in JavaScript are understood and stated

(Weight 5%)

2.2.11. KM-02-KT11 : Advanced functions in JavaScript 10%


Topic elements to be covered include:

• KT1101 Default parameters


• KT1102 Passing arguments works: value vs. reference
• KT1103 First-class and higher-order functions
• KT1104 Functions accepting call-back functions
• KT1105 Functions returning functions
• KT1106 The call and apply Methods
• KT1107 The bind Method
• KT1108 Immediately Invoked Function Expressions (IIFE)
Internal Assessment Criteria and Weight

• IAC1101 Concepts, definitions and purpose advanced functions of JavaScript are understood and
stated

(Weight 10%)

2.3 Provider Programme Accreditation Criteria

Physical Requirements:

• The provider must have lesson plans and structured learning material or provide learners with
access to structured learning material that addresses all the topics in all the knowledge modules as
well as the applied knowledge in the practical skills.

• QCTO/ MICT SETA requirements

SP Curr JavaScript Programmer 4 60 Page 17 of 42


Human Resource Requirements:

• Lecturer/learner ratio of 1:20 (Maximum)

• Qualification of lecturer (SME):

o NQF 5 qualified in industry recognised qualifications with 1 years’ experience in the IT


industry

o Cybersecurity vendor certification

• Assessors and moderators: accredited by the MICT SETA

Legal Requirements:

• Legal (product) licences to use the software for learning and training

• OHS compliance certificate

2.4 Exemptions

• RPL based

SP Curr JavaScript Programmer 4 60 Page 18 of 42


3. 900219-000-00-KM-03, Intermediate Programming Principles in JavaScript, NQF Level 4,
Credits 9

3.1 Purpose of the Knowledge Module

The main focus of the learning in this knowledge module is to build an understanding of the intermediate
principles and functionalities used when programming with JavaScript

The learning will enable learners to demonstrate an understanding of:

• KM-03-KT01 : Introduction to Object-Oriented Programming (OOP) in JavaScript 10%

• KM-03-KT02 : Objects in JavaScript 15%

• KM-03-KT03 : Error handling 10%

• KM-03-KT04 : Validation in JavaScript 10%

• KM-03-KT05 : Debugging 15%

• KM-03-KT06 : Document object model (DOM) in JavaScript 10%

• KM-03-KT07 : JavaScript animation 10%

• KM-03-KT08 : Multimedia 10%

• KM-03-KT09 : Application Programming Interface (REST) application programming 10%


interface (API)

3.2 Guidelines for Topics

3.2.1. KM-03-KT01 : Introduction to Object-Oriented Programming (OOP) in 10%


JavaScript
Topic elements to be covered include:

• KT0101 Concept, definition and characteristics of OOP


• KT0102 Basic concepts of OOP
• KT0103 OOP concepts in JavaScript
• Objects
• Classes
• Encapsulation vs Abstraction
• Inheritance
• Polymorphism
• Function overloading
• Method overriding
• KT0104 Benefits of OOP
• KT0105 OOP terminology
Internal Assessment Criteria and Weight

• IAC0101 Concepts, definitions and purpose of JavaScript OOP are understood and stated

(Weight 10%)

SP Curr JavaScript Programmer 4 60 Page 19 of 42


3.2.2. KM-03-KT02 : Objects in JavaScript 15%
Topic elements to be covered include:

• KT0201 Concept, definition and purpose


• KT0202 Object.create
• KT0203 Constructor functions and the new operator - creates and initialises an object
• KT0204 The ‘with’ keyword
• KT0205 Object instances
• KT0206 Nested objects
• KT0207 Parent class (super or base class)
• KT0208 Child class (derived or extended class)
• KT0209 Dot vs. bracket notation
• KT0210 Predefined objects
• KT0211 ES6 classes
• KT0212 Setters and getters
• KT0213 Static methods
Internal Assessment Criteria and Weight

• IAC0201 Concepts, definitions and purpose of JavaScript objects are understood and stated

(Weight 15%)

3.2.3. KM-03-KT03 : Error handling 10%


Topic elements to be covered include:

• KT0301 Concept, definition and purpose


• KT0302 Runtime errors
• KT0303 No compile-time errors
• KT0304 Syntax errors
• KT0305 Try-catch-finally block error handling mechanism
• Try function
• Catch function
• Finally function
• KT0306 Throw keyword
• KT0307 Error object with name and message
• KT0308 Activating strict mode
Internal Assessment Criteria and Weight

• IAC0301 Concepts, definitions and purpose of JavaScript error handling are understood and
stated

(Weight 10%)

3.2.4. KM-03-KT04 : Validation in JavaScript 10%


Topic elements to be covered include:

• KT0401 Concept, definition and purpose


• KT0402 Methods and deployment

SP Curr JavaScript Programmer 4 60 Page 20 of 42


• KT0403 Client side validation
• KT0404 Types of validation
• For registration
• Name
• Form
• Library
• Email
• Mobile number
• Online
• Other
• KT0405 Data validation
• Types of data validation
• Data validation rules
• Validation functions
• KT0406 Validation API
• KT0407 Validation plugins
• KT0408 Automatic form validation
Internal Assessment Criteria and Weight

• IAC0401 Concepts, definitions and purpose of JavaScript validation are understood and stated

(Weight 10%)

3.2.5. KM-03-KT05 : Debugging 15%


Topic elements to be covered include:

• KT0501 Concept, definition and purpose


• KT0502 Debugging vs error handling
• KT0503 Weeding out bugs and glitches in source code
• KT0504 Types of errors
• Syntax
• Logical errors
o That affect program results
o That generate error messages
• KT0505 Bugs appear at different times:
• Compile time
• Runtime
• KT0506 Key concepts include: breakpoints, stepping and viewing data
• KT0507 Tools for diagnosing and fixing
• KT0508 Debugging tools
• KT0509 Steps to debug effectively and efficiently:
• KT0510 Error codes
• KT0511 Stack traces
Internal Assessment Criteria and Weight

• IAC0501 Concepts, definitions and purpose of JavaScript debugging are understood and stated

(Weight 15%)

SP Curr JavaScript Programmer 4 60 Page 21 of 42


3.2.6. KM-03-KT06 : Document object model (DOM) in JavaScript 10%
Topic elements to be covered include:

• KT0601 Concept, definition and purpose


• KT0602 Functions
• KT0603 Tree of objects
• KT0604 Event handler
• KT0605 DOM methods and properties
• KT0606 DOM document
• KT0607 Nodes, node relationships and node lists
• KT0608 Collections
Internal Assessment Criteria and Weight

• IAC0601 Concepts, definitions and purpose of DOM in JavaScript are understood and stated

(Weight 10%)

3.2.7. KM-03-KT07 : JavaScript animation 10%


Topic elements to be covered include:

• KT0701 Concept, definition and purpose


• KT0702 Functions
• KT0703 Elements
• KT0704 Animation library
• KT0705 Moving elements around a page
• KT0706 Functions used in animation programmes
• KT0707 Setting attributes
• KT0708 Syntax
• KT0709 Manual and automated animation
Internal Assessment Criteria and Weight

• IAC0701 Concepts, definitions and purpose of animation in JavaScript are understood and stated

(Weight 10%)

3.2.8. KM-03-KT08 : Multimedia 10%


Topic elements to be covered include:

• KT0801 Concept, definition and purpose


• KT0802 Functions
• KT0803 Types
• KT0804 Content and formats: still images, graphics, motion video, animation, text, numbers,
sound, storyline and interface
• KT0805 Plug-ins and properties
Internal Assessment Criteria and Weight

SP Curr JavaScript Programmer 4 60 Page 22 of 42


• IAC0801 Concepts, definitions and purpose of JavaScript multimedia are understood and stated

(Weight 10%)

3.2.9. KM-03-KT09 : Application Programming Interface (REST) application 10%


programming interface (API)
Topic elements to be covered include:

• KT0901 Concept, definition and purpose


• KT0902 Functions and principle of REST API
• KT0903 Communicating with web servers
• KT0904 Constraints
• KT0905 Prerequisites
• KT0906 Security
• KT0907 CRUD (create, read, update and delete)
• KT0908 Methods to interact with JavaScript REST API
• KT0909 Steps to interact with JavaScript REST API
Internal Assessment Criteria and Weight

• IAC0901 Concepts, definitions and purpose of REST API in JavaScript are understood and stated

(Weight 10%)

3.3 Provider Programme Accreditation Criteria

Physical Requirements:

• The provider must have lesson plans and structured learning material or provide learners with
access to structured learning material that addresses all the topics in all the knowledge modules as
well as the applied knowledge in the practical skills.

• QCTO/ MICT SETA requirements

Human Resource Requirements:

• Lecturer/learner ratio of 1:20 (Maximum)

• Qualification of lecturer (SME):

o NQF 5 qualified in industry recognised qualifications with 1 years’ experience in the IT


industry

o Cybersecurity vendor certification

• Assessors and moderators: accredited by the MICT SETA

Legal Requirements:

• Legal (product) licences to use the software for learning and training

• OHS compliance certificate

SP Curr JavaScript Programmer 4 60 Page 23 of 42


3.4 Exemptions

• RPL based

SP Curr JavaScript Programmer 4 60 Page 24 of 42


SECTION 3B: APPLICATION MODULE SPECIFICATIONS

The following Application Modules are compulsory

Practical Skills Modules

• 900219-000-00-PM-01, JavaScript Programming Basics for Beginners, NQF Level 4, Credits 6

• 900219-000-00-PM-02, Programme with JavaScript, NQF Level 4, Credits 6

• 900219-000-00-PM-03, Intermediate Programming with JavaScript, NQF Level 4, Credits 12

• 900219-000-00-PM-04, Projects with JavaScript, NQF Level 4, Credits 12

SP Curr JavaScript Programmer 4 60 Page 25 of 42


Practical Skills Modules

1. 900219-000-00-PM-01, JavaScript Programming Basics for Beginners, NQF Level 4,


Credits 6

1.1 Purpose of the Application Module

The focus of the learning in this module is on providing the learner with an opportunity to apply the basics of
JavaScript, IDE and Git commands and coding

The learner will be required to:

• PM-01-PS01 : Basic computer skills


• PM-01-PS02 : Install JavaScript
• PM-01-PS03 : Getting started with an IDE
• PM-01-PS04 : Getting started with GIT
• PM-01-PS05 : Apply the programming life cycle to develop a solution
• PM-01-PS06 : Use cookies in JavaScript
• PM-01-PS07 : Use other basics in JavaScript
1.2 Guidelines for Practical Skills

1.2.1. PM-01-PS01 : Basic computer skills


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0101 Operate computers using a range of functionalities:


• Switch on, save, print, find a file, basic computer operating processes, task
manager, operating systems etc.
• Connect to the internet
• Connect to a website
• Use a search engine
• Find and use cloud storage
Applied Knowledge

• AK0101 Concept, definition and functions of basic JavaScript functionalities

Internal Assessment Criteria

• IAC0101 A range of basic computer functionalities are used successfully

1.2.2 PM-01-PS02 : Install JavaScript


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0201 Download and install JavaScript


• PA0202 Troubleshooting JavaScript Installation
• PA0203 Download and install IDE to run JavaScript
Applied Knowledge

• AK0201 Basics of JavaScript, IDE and Git commands and coding

SP Curr JavaScript Programmer 4 60 Page 26 of 42


Internal Assessment Criteria

• IAC0201 JavaScript is downloaded and installed


• IAC0202 Pycharm is downloaded, installed and up and running with installation problems
solved

1.2.3. PM-01-PS03 : Getting started with an IDE


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0301 Install IDE


• PA0302 Create a new JavaScript project with IDE
• PA0303 Hello World: create a first JavaScript programme
• PA0304 Save actions
• PA0305 Perform debugging
Applied Knowledge

• AK0301 Basics of JavaScript, IDE and Git commands and coding

Internal Assessment Criteria

• IAC0301 IDE is installed and successfully used for creating a new JavaScript project
• IAC0302 “Hello world” is created

1.2.4. PM-01-PS04 : Getting started with GIT


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0401 Create and use a repository


• PA0402 Start and manage a new branch
• PA0403 Make changes to a file and push them to GitHub as commits

• PA0404 Open and merge a pull request


• PA0405 Set up continuous integration
Applied Knowledge

• AK0401 Basics of JavaScript, IDE and Git commands and coding

Internal Assessment Criteria

• IAC0401 Git functionalities are correctly used

1.2.5. PM-01-PS05 : Apply the programming life cycle to develop a solution


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

SP Curr JavaScript Programmer 4 60 Page 27 of 42


• PA0501 Apply the various stages (sequential and reiteratively) in the programming life cycle
when developing an appropriate solution
Applied Knowledge

• AK0501 Basics of JavaScript, IDE and Git commands and coding

Internal Assessment Criteria

• IAC0501 Expected results with the programming life cycle in JavaScript are achieved

1.2.6. PM-01-PS06 : Use cookies in JavaScript


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0601 Read, create, modify, and delete the cookies that apply to the current web page
• PA0602 Manipulate cookies
Applied Knowledge

• AK0601 Basics of JavaScript, IDE and Git commands and coding

Internal Assessment Criteria

• IAC0601 Expected results with the cookies in JavaScript are achieved

1.2.7. PM-01-PS07 : Use other basics in JavaScript


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0701 Redirect page visitors to a new page


• PA0702 Use dialog boxes to raise and alert, or to get confirmation on any input or to have a
kind of input from the users
• PA0703 Call the JavaScript print function window.print() directly
Applied Knowledge

• AK0701 Basics of JavaScript, IDE and Git commands and coding

Internal Assessment Criteria

• IAC0701 Expected results with the basics in JavaScript are achieved

1.3 Provider Programme Accreditation Criteria

Physical Requirements:

• Valid licenses software and application, including OS.

• Internet connection and hardware availability.

SP Curr JavaScript Programmer 4 60 Page 28 of 42


• Examples and information specified in the scope statement and all the case studies, scenarios and
access to hardware and software implied in the scope statements of the modules.

• Remote learners: Provider must provide business IT simulation system (e.g. invoice processing).

Human Resource Requirements:

• Qualification of lecturer (SME):

o NQF 5 industry recognised qualification with 1 year relevant experience

• Assessors and moderators: accredited by the MICT SETA

Legal Requirements:

• Legal (product) licences to use the software for learning and training

• OHS compliance certificate

• Ethical clearance (where necessary)

1.4 Exemptions

• None, but the module can be achieved through RPL

SP Curr JavaScript Programmer 4 60 Page 29 of 42


2. 900219-000-00-PM-02, Programme with JavaScript, NQF Level 4, Credits 6

2.1 Purpose of the Application Module

The focus of the learning in this module is on providing the learner with an opportunity to programme with
JavaScript

The learner will be required to:

• PM-02-PS01 : JavaScript syntax


• PM-02-PS02 : Declare variables
• PM-02-PS03 : Declare and call functions
• PM-02-PS04 : Create, remove, update and access arrays in JavaScript
• PM-02-PS05 : Iteration (Loops)
• PM-02-PS06 : Create and use data types and data structures
• PM-02-PS07 : Use operators to perform some operation on single or multiple operands
(data value) and produces a result
• PM-02-PS08 : Use conditional statements for decision making in JavaScript
2.2 Guidelines for Practical Skills

2.2.1. PM-02-PS01 : JavaScript syntax


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0101 Write code applying appropriate syntax


Applied Knowledge

• AK0101 Concepts, definitions and uses of JavaScript programming functionalities

Internal Assessment Criteria

• IAC0101 Expected results with the syntax in JavaScript are achieved

2.2.2 PM-02-PS02 : Declare variables


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0201 Declare variables


• PA0202 Declare multiple variables
• PA0203 Initialise variables - Storing a value in a variable
• PA0204 Declare local variable
• PA0205 Declare global variable
• PA0206 Name variables following the rules
Applied Knowledge

• AK0201 Concepts, definitions and uses of JavaScript programming functionalities

Internal Assessment Criteria

SP Curr JavaScript Programmer 4 60 Page 30 of 42


• IAC0201 Expected results with variables in JavaScript are achieved

2.2.3. PM-02-PS03 : Declare and call functions


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0301 Create a function in JavaScript


• PA0302 Create a function with arguments
• PA0303 Create a function which returns a value
• PA0304 Call a function
• PA0305 Define an arrow function
• PA0306 Define an arrow function with multiple statements
• PA0307 Define an IIFE
Applied Knowledge

• AK0301 Concepts, definitions and uses of JavaScript programming functionalities

Internal Assessment Criteria

• IAC0301 Expected results with functions in JavaScript are achieved

2.2.4. PM-02-PS04 : Create, remove, update and access arrays in JavaScript


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0401 Create and fill arrays


• PA0402 Access and retrieve individual elements inside an array or a string using their index
• PA0403 Update the value of an element in an array
• PA0404 Declare variables with both the let and const keywords
• PA0405 Access the .length property to return the number of items in the array

• PA0406 Access the .push() Method to add items to the end of an array
• PA0407 Access the .pop()Method to remove the last item of an array
• PA0408 Create a nested array
• PA0409 Add and delete elements
• PA0410 Transform an array according to the applied function and return the updated array
using map(), reduce() and filter()
Applied Knowledge

• AK0401 Concepts, definitions and uses of JavaScript programming functionalities

Internal Assessment Criteria

• IAC0401 Expected results with arrays in JavaScript are achieved

2.2.5. PM-02-PS05 : Iteration (Loops)

SP Curr JavaScript Programmer 4 60 Page 31 of 42


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0501 Write loop statements to repeat a process multiple times


• PA0502 Write for loop statements to repeat a given block of code on its own
• PA0503 Write While loop statements
• PA0504 Write Do…while statements
• PA0505 Make a for loop that runs backward
• PA0506 Use a for loop to perform the same operation on each element on an array
• PA0507 Create a nested loop to compare the elements in two arrays
• PA0508 Use the break keyword to stop a loop from continuing to execute even though the
original stopping condition hasn’t been met
• PA0509 Use the For…in loop to iterate over all property keys of an object
Applied Knowledge

• AK0501 Concepts, definitions and uses of JavaScript programming functionalities

Internal Assessment Criteria

• IAC0501 Expected results with iteration (loops) in JavaScript are achieved

2.2.6. PM-02-PS06 : Create and use data types and data structures
Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0601 Implement primitive data types: Numbers, strings, Boolean in code


• PA0602 Implement composite datatypes: object, array and function in code
• PA0603 Implement trivial data types: null and undefined in code
• PA0604 Implement typeof operator in code
Applied Knowledge

• AK0601 Concepts, definitions and uses of JavaScript programming functionalities

Internal Assessment Criteria

• IAC0601 Expected results with data types in JavaScript are achieved

2.2.7. PM-02-PS07 : Use operators to perform some operation on single or multiple


operands (data value) and produces a result
Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0701 Use arithmetic operators to perform arithmetic on numbers


• PA0702 Use an assignment operator to assign a value to the left operand based on the value
of the right operand
• PA0703 Compare operands of the same type

SP Curr JavaScript Programmer 4 60 Page 32 of 42


• PA0704 Compare operands of different types
• PA0705 Compare objects
• PA0706 Test or define a relation between two entities
• PA0707 Convert values from one data type to another with one key difference
Applied Knowledge

• AK0701 Concepts, definitions and uses of JavaScript programming functionalities

Internal Assessment Criteria

• IAC0701 Expected results with operators in JavaScript are achieved

2.2.8. PM-02-PS08 : Use conditional statements for decision making in JavaScript


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0801 Use if statements


• PA0802 Use if-else statements
• PA0803 Use else statements
• PA0804 Use else-if statements
• PA0805 Assign truthy and falsy
• PA0806 Check multiple conditions with switch
Applied Knowledge

• AK0801 Concepts, definitions and uses of JavaScript programming functionalities

Internal Assessment Criteria

• IAC0801 Expected results with conditional statements in JavaScript are achieved

2.3 Provider Programme Accreditation Criteria

Physical Requirements:

• Valid licenses software and application, including OS.

• Internet connection and hardware availability.

• Examples and information specified in the scope statement and all the case studies, scenarios and
access to hardware and software implied in the scope statements of the modules.

• Remote learners: Provider must provide business IT simulation system (e.g. invoice processing).

Human Resource Requirements:

• Qualification of lecturer (SME):

o NQF 5 industry recognised qualification with 1 year relevant experience

• Assessors and moderators: accredited by the MICT SETA

SP Curr JavaScript Programmer 4 60 Page 33 of 42


Legal Requirements:

• Legal (product) licences to use the software for learning and training

• OHS compliance certificate

• Ethical clearance (where necessary)

2.4 Exemptions

• None, but the module can be achieved through RPL

SP Curr JavaScript Programmer 4 60 Page 34 of 42


3. 900219-000-00-PM-03, Intermediate Programming with JavaScript, NQF Level 4, Credits 12

3.1 Purpose of the Application Module:

The focus of the learning in this module is on providing the learner with an opportunity to apply functionalities
appropriately when programming with JavaScript

The learner will be required to:

• PM-03-PS01 : Handle errors in JavaScript


• PM-03-PS02 : Validate and authenticate with JavaScript
• PM-03-PS03 : Debug code
• PM-03-PS04 : Perform multiple tasks using DOM
• PM-03-PS05 : Create animation with JavaScript
• PM-03-PS06 : Add multimedia
• PM-03-PS07 : Use REST API to communicate with web servers
3.2 Guidelines for Practical Skills

3.2.1. PM-03-PS01 : Handle errors in JavaScript


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0101 Use try statement to test a block of code for errors


• PA0102 Use catch statement to handle the error
• PA0103 Use the throw keyword to raise a custom error
• PA0104 Use JavaScript object to get more information about an error
• PA0105 Throw error with error information
• PA0106 Use finally statement to execute code after try and catch regardless of the result
• PA0107 Declare strict mode at the beginning of a script
Applied Knowledge

• AK0101 Error handling principles and functionalities

Internal Assessment Criteria

• IAC0101 Expected results with error handling in JavaScript are achieved

3.2.2 PM-03-PS02 : Validate and authenticate with JavaScript


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0201 Validate name and password


• PA0202 Authenticate a user
• PA0203 Validate a form on the client-side
• PA0204 Validate user input
• PA0205 Validate the textfield for numeric value
• PA0206 Validate email
• PA0207 Validate data
Applied Knowledge

SP Curr JavaScript Programmer 4 60 Page 35 of 42


• AK0201 Validation and authentication principles and functionalities

Internal Assessment Criteria

• IAC0201 Expected results with validation and authentication in JavaScript are achieved

3.2.3. PM-03-PS03 : Debug code


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0301 Use debugging tools for diagnosing and fixing bugs and errors
• PA0302 Identify incorrect code and analyse how a program "flows"
• PA0303 Apply debugging steps to debug effectively and efficiently
Applied Knowledge

• AK0301 Debugging principles and functionalities

Internal Assessment Criteria

• IAC0301 Expected results with debugging in JavaScript are achieved

3.2.4. PM-03-PS04 : Perform multiple tasks using DOM


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0401 Create document object model (DOM) elements


• PA0402 Create new elements and attributes
• PA0403 Change the existing elements and attributes
• PA0404 Remove existing elements and attributes
Applied Knowledge

• AK0401 DOM principles and functionalities

Internal Assessment Criteria

• IAC0401 Expected results with performing multiple tasks using DOM in JavaScript are
achieved

3.2.5. PM-03-PS05 : Create animation with JavaScript


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0501 Create animations:


• setTimeout( function, duration) − This function calls function after duration
milliseconds from now
• setInterval(function, duration) − This function calls function after every
duration milliseconds

SP Curr JavaScript Programmer 4 60 Page 36 of 42


• clearTimeout(setTimeout_variable) − This function calls clears any timer set
by the setTimeout() functions
• PA0502 Move a number of elements around the page
• PA0503 Set attributes of an object on the screen
Applied Knowledge

• AK0501 Animation principles and functionalities

Internal Assessment Criteria

• IAC0501 Expected results with animation in JavaScript are achieved

3.2.6. PM-03-PS06 : Add multimedia


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0601 List installed plug-ins


• PA0602 Check for plug-ins by name, filename, description and mimeTypes
• PA0603 Use <embed> and <object> to add multimedia
• PA0604 Include images
• PA0605 Include graphics
• PA0606 Include a motion video
• PA0607 Include animation
• PA0608 Include music or audio
• PA0609 Play appropriate multimedia file
• PA0610 Control multimedia
Applied Knowledge

• AK0601 Multimedia principles and functionalities

Internal Assessment Criteria

• IAC0601 Expected results with performing multiple tasks using multimedia in JavaScript are
achieved

3.2.7. PM-03-PS07 : Use REST API to communicate with web servers


Scope of Application Topic:

Given an applicable instruction and access to a learning platform, the learner must be able to:

• PA0701 Make a POST request for the API used to create the object. Save object ID which
was received in the answer
• PA0702 Make a GET request using the id from the first step, thereby demonstrating GET
requests and the fact that the object was created
• PA0703 Make a PUT request where substituting the modified object and demonstrate the
answer
• PA0704 Make a DELETE request with the object id and show the answer

SP Curr JavaScript Programmer 4 60 Page 37 of 42


• PA0705 Make a GET request with id again to show that the DELETE method worked and the
object is definitely not there
Applied Knowledge

• AK0701 REST API principles and functionalities


• AK0702
Internal Assessment Criteria

• IAC0701 Expected results with REST API in JavaScript are achieved

3.3 Provider Programme Accreditation Criteria

Physical Requirements:

• Valid licenses software and application, including OS.

• Internet connection and hardware availability.

• Examples and information specified in the scope statement and all the case studies, scenarios and
access to hardware and software implied in the scope statements of the modules.

• Remote learners: Provider must provide business IT simulation system (e.g. invoice processing).

Human Resource Requirements:

• Qualification of lecturer (SME):

o NQF 5 industry recognised qualification with 1 year relevant experience

• Assessors and moderators: accredited by the MICT SETA

Legal Requirements:

• Legal (product) licences to use the software for learning and training

• OHS compliance certificate

• Ethical clearance (where necessary)

3.4 Exemptions

• None, but the module can be achieved through RPL

SP Curr JavaScript Programmer 4 60 Page 38 of 42


4. 900219-000-00-PM-04, Projects with JavaScript, NQF Level 4, Credits 12

4.1 Purpose of the Work Experience Module:

The focus of the learning in this module is on providing the learner with an opportunity to complete use cases
using Python programming language

The learner will be required to:

• PM-04-PS01 : JavaScript exercises may be conducted at the end of the skills programme or
may be integrated into learning at the end of the applicable module

• PM-04-PS02 : Additional JavaScript exercises may be conducted at the end of the skills
programme or may be integrated into learning at the end of the applicable
module

• PM-04-PS03 : Use a known framework (of own preference) with functions to build a game

• PM-04-PS04 : Use a known framework (of own preference) with functions to assemble a
complete solution applying all the below aspects given contextualised context
within a specific sector

4.2 Guidelines for Practical Skills

4.2.1. PM-04-PS01 : JavaScript exercises may be conducted at the end of the skills
programme or may be integrated into learning at the end of the applicable
module

Scope of Application Topic:

Given an applicable instruction and access to a learning platform, connected to framework/ environment of
own choice, the learner must be able to:

• PM0101 Write a Hello World programme using JavaScript (exercise)

• PM0102 Run a JavaScript application

• PM0103 Add numbers

• PM0104 Add all elements in array

• PM0105 Sum numbers from array of data objects

• PM0106 Sum numbers from array of data objects conditionally

• PM0107 Sum numbers from array of data objects by code

• PM0108 Test, troubleshoot and debug code

• PM0109 Computing usernames

• PM0110 Implementing Login

• PM0111 Implementing Transfers

SP Curr JavaScript Programmer 4 60 Page 39 of 42


Applied Knowledge

• AK0101 Concept, definition and functions of JavaScript programming principles

Internal Assessment Criteria

• IAC0101 Expected results are achieved

4.2.2 PM-04-PS02 : Additional JavaScript exercises may be conducted at the end of the skills
programme or may be integrated into learning at the end of the applicable
module

Scope of Application Topic:

Given an applicable instruction and access to a learning platform, connected to framework/ environment of
own choice, the learner must be able to:

• PM0201 Create object literals

• PM0202 Access properties

• PM0203 Define methods for an object

• PM0204 Use bracket notation for accessing object properties

• PM0205 Assign properties

• PM0206 Build a calculator app in JavaScript that can calculate arithmetic mean, mode, median,
etc.

• PM0207 Create a web page that calculates age and displays the result

• PM0208 Display a multiplication table

• PM0209 Create a web page that uses a form with a text input, providing a number of years in the
property this.value, and calculate the year when you will be that age. Use the method
window.alert ('string') to display the result

• PM0210 Write a constructor for a "planet" object, and use it to create ten objects that store the
planetary information on a web page. Use the Sun as the first, with all values set to zero.
Write a web form that has a radio button input, one for each planet, and that onChange
writes out the planet's information

• PM0211 Write a form and button combination that, "onClick", activates the window method
window.alert ('A string of own choice')

Applied Knowledge

• AK0201 Concept, definition and functions of JavaScript programming principles

Internal Assessment Criteria

• IAC0201 Expected results are achieved

SP Curr JavaScript Programmer 4 60 Page 40 of 42


4.2.3. PM-04-PS03 : Use a known framework (of own preference) with functions to build a
game

Scope of Application Topic:

Given an applicable instruction and access to a learning platform, connected to framework/ environment of
own choice, the learner must be able to:

• PM0301 Build a basic game using JavaScript (compulsory)

Applied Knowledge

• AK0301 Concept, definition and functions of JavaScript programming principles

Internal Assessment Criteria

• IAC0301 Expected results are achieved and the basic game is operable

4.2.4. PM-04-PS04 : Use a known framework (of own preference) with functions to assemble a
complete solution applying all the below aspects given contextualised
context within a specific sector

Scope of Application Topic:

Given an applicable instruction and access to a learning platform, connected to framework/ environment of
own choice, the learner must be able to:

• PM0401 Build a GUI application using JavaScript (compulsory) which encompass any of these
below:

• Build a web application using JavaScript

• Build an IoT application using JavaScript

• Build a Cloud-based application using JavaScript

• Build a mobile application using JavaScript

• Build a network application using JavaScript

Applied Knowledge

• AK0401 Concept, definition and functions of JavaScript programming principles

Internal Assessment Criteria

• IAC0401 Expected results are achieved and the basic GUI application is operable

4.3 Provider Programme Accreditation Criteria

Physical Requirements:

• Valid licenses software and application, including OS.

SP Curr JavaScript Programmer 4 60 Page 41 of 42


• Internet connection and hardware availability.

• Examples and information specified in the scope statement and all the case studies, scenarios and
access to hardware and software implied in the scope statements of the modules.

• Remote learners: Provider must provide business IT simulation system (e.g. invoice processing).

Human Resource Requirements:

• Qualification of lecturer (SME):

o NQF 5 industry recognised qualification with 1 year relevant experience

• Assessors and moderators: accredited by the MICT SETA

Legal Requirements:

• Legal (product) licences to use the software for learning and training

• OHS compliance certificate

• Ethical clearance (where necessary)

4.4 Exemptions

• None, but the module can be achieved through RPL

SP Curr JavaScript Programmer 4 60 Page 42 of 42

You might also like