Sp Curr Java Programmer 453
Sp Curr Java Programmer 453
Software Developer
2. Curriculum Information
This Skills Programme consists of two components namely Knowledge/Theory component and Application
component. The following are compulsory modules in each of the two components:
• 900102-000-00-PM-05, Getting started with REST API and Modularization, NQF Level 4, Credits 4
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 application.
o NQF 5 qualified in industry recognised qualifications with 1 year experience in the IT industry
Legal Requirements:
• Legal (product) licences to use the software for learning and training
Application Modules
Physical Requirements:
• 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).
Legal Requirements:
• Legal (product) licences to use the software for learning and training
Implement solutions to solve real-life problems in an efficient manner applying a knowledge and
understanding of the principles of programming with Java and applicable tools
• Describe the basic concepts and methods of object-oriented programming and object-oriented
design (NQF Level 4)
• Create well-written and readable Java programs, using a disciplined coding style, including
documentation and indentation standards (NQF Level 4)
• Use Git commands for working collaboratively in a team and execute version control (NQF Level 4)
3.1. Create well-written and readable Java programs, using a disciplined coding style, including
documentation and indentation standards (NQF Level 4)
Occupational Responsibilities:
3.2. Use Git commands for working collaboratively in a team and execute version control (NQF Level
4)
Occupational Responsibilities:
The main focus of the learning in this knowledge module is to build an understanding of the fundamentals of
Java Programming language.
• KT0105 Internet connectivity and range of functionalities: e.g. cloud storage, search engines,
etc.
• IAC0101 Definitions, functions and features of the respective computer elements are stated.
(Weight 15%)
• KT0207 Components of Java platform and respective uses (JDK, JVM, JRE)
• IAC0201 Definitions, functions and features of each topic element are stated.
(Weight 20%)
• IAC0301 Definitions, functions and features of each topic element are stated.
(Weight 15%)
• IAC0401 Definitions, functions and features of each topic element are stated.
(Weight 5%)
• KT0503 JDK vs JRE vs JVM. JDK (Java Development Kit) is a software development kit
whereas JRE (Java Runtime Environment) is a software bundle that allows Java
program to run, whereas JVM (Java Virtual Machine) is an environment for executing
bytecode
(Weight 5%)
• KT0603 Collaboration
• KT0604 Repositories
• KT0605 Branch
• KT0606 Changes
• KT0609 Git commands: git clone, git fetch, git checkout, git init, git commit, git push, git diff, git
pull, git add, git branch
(Weight 15%)
• KT0701 Variables
• KT0702 Operations
• Fields
• Constructors
• Methods
• KT0704 Interfaces
• KT0705 Packages
• IAC0701 Definitions, functions and features of Java core concepts are stated.
(Weight 15%)
• Package declaration
• Import statements
• Type declaration
• Field declarations
• Class initializers
• Constructors
• Methods
(Weight 10%)
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 application.
o NQF 5 qualified in industry recognised qualifications with 1 year experience in the IT industry
Legal Requirements:
• Legal (product) licences to use the software for learning and training
1.4 Exemptions
• RPL based
The main focus of the learning in this knowledge module is to build an understanding of the principles of
programming with Java programming language
• IAC0101 Definitions, functions and features of Java Main Method are stated.
(Weight 4%)
(Weight 5%)
(Weight 5%)
• KT0401 Definition
• KT0402 Types
• KT0403 Creating and accessing values
• KT0404 Compare, sort and fill
• KT0405 Total and average
• KT0406 Maximum and minimum
• KT0407 Variable arguments
• IAC0401 Definitions, functions and features of arrays and ArrayLists in Java are stated.
(Weight 4%)
• KT0501 Definition
• KT0502 Function
• KT0503 Features
Internal Assessment Criteria and Weight
• IAC0501 Definitions, functions and features of arrays of objects in Java are stated.
(Weight 3%)
• KT0601 Definition
• KT0602 Purpose
• KT0603 Characteristics
• KT0604 Syntax
Internal Assessment Criteria and Weight
(Weight 3%)
• KT0701 Definition
• KT0702 Purpose
• KT0703 Characteristics
• KT0704 Examples of data reference types
• KT0705 Syntax
• KT0706 Stored in memory
Internal Assessment Criteria and Weight
• IAC0701 Definitions, functions and features of reference types in Java are stated.
(Weight 4%)
• IAC0801 Definitions, functions and features of strings and string methods in Java are stated.
(Weight 10%)
(Weight 3%)
• IAC1001 Definitions, functions and features of Java nested classes are stated.
(Weight 3%)
• KT1101 Definition
• KT1102 Function and purpose
• KT1103 Features
• KT1104 Rules
Internal Assessment Criteria and Weight
(Weight 3%)
• KT1201 Definition
• KT1202 Function
• KT1203 Why and what?
• KT1204 Creation - Constructor and valueOf
• KT1205 Classes - Auto boxing and a few wrapper constants - SIZE
Internal Assessment Criteria and Weight
• IAC1201 Definitions, functions and features of Java wrapper classes are stated.
(Weight 3%)
• IAC1301 Definitions, functions and features of Java date and time are stated.
(Weight 3%)
• IAC1402 When to use the different If, Else, If Else and switch statements is understood.
(Weight 5%)
• IAC1502 When to use the different For vs While vs Do While loop is understood.
(Weight 5%)
• KT1601 Definition
• KT1602 Math methods (logarithmic, trigonometric, angular, hyperbolic)
• KT1603 Functions
• IAC1601 Definitions, functions and features of Java math class are stated.
(Weight 3%)
• KT1701 Definition
• KT1702 Function
• KT1703 Features
• KT1704 Types
Internal Assessment Criteria and Weight
(Weight 3%)
• KT1801 Definition
• KT1802 Function
• KT1803 Features
• KT1804 Syntax
Internal Assessment Criteria and Weight
(Weight 3%)
(Weight 5%)
• IAC2001 Definitions, functions and features of exception handling in Java are stated.
(Weight 10%)
• IAC2101 Definitions, functions and features of file systems and directories in Java are stated.
(Weight 10%)
• IAC2201 Definitions, functions and stages of the programming lifecycle are described
(Weight 10%)
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 application.
o NQF 5 qualified in industry recognised qualifications with 1 year experience in the IT industry
Legal Requirements:
• Legal (product) licences to use the software for learning and training
2.4 Exemptions
• RPL based
The main focus of the learning in this knowledge module is to build an understanding of the fundamentals of
Object-Oriented Programming with Java.
• KT0101 Definition
• KT0102 Concepts:
• Class and types
• Object
• Method and Method passing
• KT0103 Pillars/elements:
• Inheritance
• Abstraction
• Encapsulation
• Polymorphism
• Aggregation
• Association
• Composition
• KT0104 Advantages of OOPS
Internal Assessment Criteria and Weight
(Weight 30%)
(Weight 70%)
Physical Requirements:
o NQF 5 qualified in industry recognised qualifications with 1 year experience in the IT industry
Legal Requirements:
• Legal (product) licences to use the software for learning and training
3.4 Exemptions
• RPL based
The main focus of the learning in this knowledge module is to build an understanding of the principles of
intermediated programming with Java.
• Position/order is advisable
• Basic Operations
(Weight 50%)
• KT0201 Definition
• KT0202 Purpose
• KT0203 Features
• KT0204 Uses
• KT0205 Benefits
• KT0207 Symbols
(Weight 10%)
• IAC0301 Definitions, functions, features, uses and benefits of functional programming in Java are
stated.
(Weight 30%)
• KT0401 Synchronized
• IAC0401 Definitions, functions, features, uses and benefits of concurrency in Java are stated.
(Weight 10%)
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 application.
o NQF 5 qualified in industry recognised qualifications with 1 year experience in the IT industry
Legal Requirements:
• Legal (product) licences to use the software for learning and training
4.4 Exemptions
• RPL based
The main focus of the learning in this knowledge module is to build an understanding of the functionalities of
REST API and modularization and when to use them.
5.2.1. KM-05-KT01 : REST API (Application Programming Interface) for Java 50%
• KT0101 Definition
• KT0102 Functions
• KT0103 Features
• KT0104 Understanding REST API - 10000 feet overview
• KT0105 Using Docker to Launch MySQL - An Overview
Internal Assessment Criteria and Weight
• IAC0101 Definitions, functions and features of REST API in Java are stated.
(Weight 50%)
• KT0201 Definition
• KT0202 Functions
• KT0203 Features
• KT0204 Java New Features
• Local Variable Type Inference
• Switch Expression
• Text Blocks
• Records
Internal Assessment Criteria and Weight
(Weight 50%)
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 application.
o NQF 5 qualified in industry recognised qualifications with 1 year experience in the IT industry
Legal Requirements:
• Legal (product) licences to use the software for learning and training
5.4 Exemptions
• RPL based
• 900102-000-00-PM-05, Getting started with REST API and Modularization, NQF Level 4, Credits 4
The focus of the learning in this module is on providing the learner with an opportunity to apply the basics of
Java, IDE and Git commands.
Given an applicable instruction and access to a learning platform, the learner must be able to:
• AK0101 Fundamentals of the basics of programming with Java, IDE and Git.
Internal Assessment Criteria
1.2.2 AM-01-PS02 : Java basics: download, install, run and create first Java program
Scope of Application Topic:
Given an applicable instruction and access to a learning platform, the learner must be able to:
• AK0201 Fundamentals of the basics of programming with Java, IDE and Git commands.
Internal Assessment Criteria
Given an applicable instruction and access to a learning platform, the learner must be able to:
• AK0301 Fundamentals of the basics of programming with Java, IDE and Git.
Internal Assessment Criteria
• IAC0301 IDE is installed and successfully used for creating a new Java project using
mentioned functionalities.
Given an applicable instruction and access to a learning platform, the learner must be able to:
• AK0401 Fundamentals of the basics of programming with Java, IDE and Git commands.
Internal Assessment Criteria
Given an applicable instruction and access to a learning platform, the learner must be able to:
• AK0501 Fundamentals of the basics of programming with Java, IDE and Git.
Internal Assessment Criteria
Physical Requirements:
• 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).
Legal Requirements:
• Legal (product) licences to use the software for learning and training
1.4 Exemptions
The focus of the learning in this module is on providing the learner with an opportunity to apply functionalities
appropriately when programming with Java.
Given an applicable instruction and access to a learning platform, the learner must be able to:
• PA0101 Declare a simple Java class without variables, methods or any other instructions
• PA0102 Declare a main() Method
• PA0103 Run a main() Method
Applied Knowledge
Given an applicable instruction and access to a learning platform, the learner must be able to:
Given an applicable instruction and access to a learning platform, the learner must be able to:
• IAC0301 Spelling, use of capital letters and lowercase letters and abbreviations are
correctly applied.
• IAC0302 Programming of instruction is demonstrated.
Given an applicable instruction and access to a learning platform, the learner must be able to:
Given an applicable instruction and access to a learning platform, the learner must be able to:
• PA0601 Use ArrayList add() Method to add elements to the Array List
• PA0602 Use ArrayList remove() Method to remove a specified element from the list and
reduce size accordingly
• PA0603 Use Java array size
• PA0604 Use ArrayList contains() Method
Applied Knowledge
Given an applicable instruction and access to a learning platform, the learner must be able to:
• IAC0701 Expected results with Java data and time are achieved.
Given an applicable instruction and access to a learning platform, the learner must be able to:
Given an applicable instruction and access to a learning platform, the learner must be able to:
Given an applicable instruction and access to a learning platform, the learner must be able to:
Given an applicable instruction and access to a learning platform, the learner must be able to:
Given an applicable instruction and access to a learning platform, the learner must be able to:
• IAC1301 Expected results with Java date and time are achieved.
Given an applicable instruction and access to a learning platform, the learner must be able to:
Given an applicable instruction and access to a learning platform, the learner must be able to:
• PA1501 Write a programme which prints the even numbers between 1 and 100 in an
increasing order
• PA1502 Solve a simple FizBuz problem
Applied Knowledge
Given an applicable instruction and access to a learning platform, the learner must be able to:
Given an applicable instruction and access to a learning platform, the learner must be able to:
Given an applicable instruction and access to a learning platform, the learner must be able to:
Given an applicable instruction and access to a learning platform, the learner must be able to:
Applied Knowledge
2.2.20 AM-02-PS20 : Use exception handling functions to find and mitigate exceptions
Scope of Application Topic:
Given an applicable instruction and access to a learning platform, the learner must be able to:
Given an applicable instruction and access to a learning platform, the learner must be able to:
• PA2101 List files and folders in directory with files list() method
• PA2102 Recursively list and filter all files and folders in a directory with ST (stack trace)
• PA2103 Read content from a file using files readAllLines and line methods
• IAC2101 Expected results with file systems and directories in Java are achieved.
2.2.22 AM-02-PS22 : Apply the programming lifecycle to develop a solution for a problem
Scope of Application Topic:
• PA2201 Apply the various stages in the programming lifecycle to develop a programming
solution
Applied Knowledge
• IAC2201 Expected results with the programming lifecycle in Java are achieved.
Physical Requirements:
• 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).
Legal Requirements:
• Legal (product) licences to use the software for learning and training
2.4 Exemptions
The focus of the learning in this module is on providing the learner with an opportunity to programme using
OOP with Java.
Given a text/graphic containing plagiarised material, the learner must be able to:
• IAC0101 Expected results with file systems and directories in Java are achieved.
Physical Requirements:
• 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).
Legal Requirements:
• Legal (product) licences to use the software for learning and training
3.4 Exemptions
The focus of the learning in this module is on providing the learner with an opportunity to apply intermediated
functionalities when programming with Java.
Given an applicable instruction and access to a learning platform, the learner must be able to:
• PA0101 Create a list of information in an array, make an array list and search for information
(e.g. all students in a school, search for students with distinctions, students in Gr 10)
• Sort random data alphabetically
• Sort random data numerically
• Display information in acceptable order or presentation
• PA0102 Exercise for TreeSet: Write a Java script to find the learner with the highest marks
and display all the relevant information
• PA0103 In the ArrayList – map information accordingly – where to find student name, find ID
number, find name, find surname, cell number – cannot fill out the same key and
value
Applied Knowledge
Given an applicable instruction and access to a learning platform, the learner must be able to:
Given an applicable instruction and access to a learning platform, the learner must be able to:
Given an applicable instruction and access to a learning platform, the learner must be able to:
• IAC0401 Expected results with concurrency and concurrent collections and atomic operations
in Java are achieved.
Physical Requirements:
• 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).
Legal Requirements:
• Legal (product) licences to use the software for learning and training
4.4 Exemptions
The focus of the learning in this module is on providing the learner with an opportunity to utilise the REST
API and modularization functions in Java programming
Given an applicable instruction and access to a learning platform, connected to a framework/ environment of
their own choice, the learner must be able to:
• PA0101 Get started with JDBC (Java Database Connectivity): Using JDBC to connect Java
application to databases
• PA0102 Map course entity and populate data with data SQL
• PA0103 Create repository to manage entity and integrate with GET REST API
Given an applicable instruction and access to a learning platform, connected to a framework/ environment of
their own choice, the learner must be able to:
Physical Requirements:
• 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).
Legal Requirements:
• Legal (product) licences to use the software for learning and training
5.4 Exemptions
The focus of the learning in this module is on providing the learner with an opportunity to complete a
Keystone project using Java programming language.
• AM-06-PS01 : Java Exercises may be conducted at the end of the skills programme or
may be integrated into learning at the end of the applicable module
• AM-06-PS02 : Use a known framework (of own preference) with functions to build a game
• AM-06-PS03 : 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
6.2 Guidelines for Applications
6.2.1. AM-06-PS01 : Java 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 a framework / environment of
their own choice, the learner must be able to:
6.2.2 AM-06-PS02 : 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 a framework / environment of
their own choice, the learner must be able to:
• IAC0201 Expected results are achieved and the basic game is operable.
Given an applicable instruction and access to a learning platform, connected to a framework / environment of
their own choice, the learner must be able to:
• PA0301 Build a GUI application using Java (compulsory) which encompasses any of these
below:
• Build a web application using Java
• Build an IoT application using Java
• Build a Cloud-based application using Java
• Build a mobile application using Java
• Build a network application using Java
Applied Knowledge
• IAC0301 Expected results are achieved and the basic GUI application is operable.
Physical Requirements:
• 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).
Legal Requirements:
• Legal (product) licences to use the software for learning and training
6.4 Exemptions