Unit Principles of Computer Programming Assignment Brief 2026

Qualification  OTHM Level 4 Diploma In Information Technology (610/1191/5)
Unit Reference Number F/650/3384
Unit Title Principles of Computer Programming
Unit Level 4
Number of Credits 20
Total Qualification Time 200 Hours
SSAs 6.1 ICT practitioners
Mandatory / Optional Mandatory
Unit Grading Structure Pass / Fail

Learning Outcomes, Assessment Criteria and Indicative Content

Learning OutcomesThe learner will: Assessment CriteriaThe learner can: Indicative Content
1. Understand the principles of computer programming. 1.1 Describe the benefits of computer programming in society and in business.

1.2 Describe the principles of computer programming.

1.3 Summarise the historical development of computer programming.

1.4 Explain the fundamental components of a programming language.

1.5 Compare the strengths and limitations of modern computer programming languages.

●  Benefits

o Solve problems
o Automate tasks

●  Sectors
o Healthcare
o Education
o Manufacturing o Transport

● Definition, principles of programming
o Abstraction

o KISS

oOpen/Closed entities

o Coupling
o Cohesion

●  Programming history

o  Charles Babbage’s Analytical Engine
o the concept of storing data in machine-readable form

o low & high-level languages (COBOL, FORTRAN, and Lisp)
o Moore’s law
o Procedural
o OO

Languages
o COBOL, FORTRAN, Java,

JavaScript, C#, C++, Python, PHP,

Ruby on Rails)
o The main () Function

o       The #include and #define directives
o The Variable Definition
o The Function Prototype
o Program Statements
o The Function Definition

o       Program Comments

o       SQL, Java, JavaScript, C#, C++, Python, PHP, Ruby on Rails.

●     Compare; use, error handling, ease of use.

2. Understand the principles of algorithms. 2.1 Explain the concept of an algorithm.

2.2 Describe common algorithmic techniques and solutions.

2.3 Demonstrate how to create a flowchart from an algorithm.

●     History of Algorithms.

●     Definition of algorithms

o Input
o Output

o    Definiteness
o Finiteness
o Effectiveness
o Brute Forceo    Greedy Algorithms: “take what you can get now” strategyo    Divide-and-Conquer
o Decrease-and-Conquer
o Dynamic Programming
o Transform-and-Conquer
Flowchart
o Backtracking and branch-and-bound generate and test methods.o Flowchart symbols.
o Information flow
o Purpose and benefits
3. Understand the object-oriented Programming language. 3.1 Explain the benefits of object-oriented design.

3.2 Evaluate when to use object-oriented design methodology.

3.3 Explain how objects are used in objectoriented programming.

3.4 Explain the steps in creating an objectoriented program.

3.5 Explain how to compile a program and debug codes.

Benefits
o Code Reuse and Recycling
o Encapsulation
o Design Benefits o Software MaintenanceEvaluate
o Situation
o Volume of code
o Multiple workstreams
o Project size
o Change cycle
Use
o Classes and objectso Arrays
o Lists
o Stacks
o Queues
o Trees
Steps
o Intermediate representations and their purpose.o Arrays (1- and 2-dimensions)
o Implementation of queues
o Stacks and lists
Compile and debug codes
o Debugger
o Breakpointso   commandso Use of IDEs and the IDE environments (benefits and examples of IDEs)

o data structure display/verification
o Use of debugging tools

4. Understand the tools and techniques used for software development. 4.1 Explain different types of software development techniques.

4.2 Evaluate the use of different software development tools.

4.3 Evaluate software testing methodologies.

4.4 Describe software deployment techniques.

4.5 Evaluate methods of reviewing system performance.

Different software development tools

Research and consider possible solutions and predict the overall success of the application.

Research and use information relating to software testing to create a suitable test plan for your business application.

Methods of reviewing system performance.

o Focus group
o Testing
o User feedback
o Reviews

5. Be able to create a software programme to solve a problem using object-oriented programming. 5.1 Identify a problem which can be solved using object-oriented programming.

5.2 Create a flowchart to illustrate the  problem and solution.

5.3 Create a defined user requirements document.

5.4 Produce a software development plan from a system design.

5.5 Develop and deploy a software solution to solve a problem.

5.6 Evaluate the software against business and user requirements.

Clear problem and resolution

Solution will be focused on object-oriented programming solution

Mapping of solution into a flowchart

Information flow

Symbols

Number reference

Defined requirements
Business need
Evaluation methods
Goals
Timescales and deadlines
Resources and requirements
Constraints and risks
Business process
Design using either SQL, Java, JavaScript, C#, C++, Python, PHP, Ruby on Rails.
Code writing standards, comments, documentation
Use Debugger, breakpoints, commands in the chosen language, C ++/JAVA/Python/or similar an OOPL.
Key components of an Integrated

Development Environment (IDE)

Use of IDEs, test plan
Test plan referenced to use requirements, expected result and end result

 

Scenario

There is no scenario for this task. Instead you must show your knowledge and understanding about computer programming.

Task 1 of 3

Unit Learning Outcomes

  • LO 1 Understand the principles of computer programming. 1.1, 1.2, 1.3, 1.4, 1.5
  • LO 4 Understand the tools and techniques used for software development. 4.1, 4.2, 4.3, 4.4, 4.5

Assignment Brief and Guidance

Part 1

You are required to write a report to show your understanding about the principles of computer programming. Your report should:

  • Describe the benefits of computer programming in society and in business.
  • Describe the principles of computer programming.
  • Summarise the historical development of computer programming.
  • Explain the fundamental components of a programming language.
  • Compare the strengths and limitations of modern computer programming languages.

Part 2

You are required to write a report to show your understanding about the tools and techniques used for software development. Your report should:

  • Explain different types of software development techniques.
  • Evaluate the use of different software development tools.
  • Evaluate software testing methodologies.
  • Describe software deployment techniques.
  • Evaluate methods of reviewing system performance.

Delivery and Submission

The submission is in the form of a report written in Word format for both Part 1 and 2.

  • Part 1 – the recommended word limit is 750 words.
  • Part 2 – the recommended word limit is 750 words.

The word limit is excluding diagrams, references, and appendices.

Referencing

You are expected to use relevant academic and reliable sources where appropriate, and clearly reference these in your work. Citations should be added to the text and placed at the end in a reference list, using the Harvard referencing style.

Task 2 of 3

Unit Learning Outcomes

  • LO 2 Understand the principles of algorithms 2.1, 2.2, 2.3

Assignment Brief and Guidance

Create an algorithm that will ask a user to input the length and width of a rectangle and will then calculate the area. Display your algorithm as a flowchart. You must include an explanation of the algorithmic techniques and solutions you have used.

Delivery and Submission

The submission is in the form of a report written in Word format. The recommended word limit is 500 words excluding diagrams, references, and appendices.

Referencing

N/A

Task 3 of 3

Unit Learning Outcomes

  • LO 3 Understand the object-oriented programming language. 3.1, 3.2, 3.3 ,3.4, 3.5
  • LO 5 Be able to create a software programme to solve a problem using object-oriented programming. 5.1, 5.2, 5.3, 5.4, 5.5, 5.6

Assignment Brief and Guidance

Part 1

Write a report in which you:

  • Explain the benefits of object-oriented design.
  • Evaluate when to use object-oriented design methodology.
  • Explain how objects are used in object-oriented programming.
  • Explain the steps in creating an object-oriented program.
  • Explain how to compile a program and debug codes.

Part 2

Discuss with your Tutor and agree on a suitable project for the programming language you have learnt. Your Tutor may give you specifications of the project or you may develop your own ideas. You are required to:

  • Identify a problem which can be solved using object-oriented programming.
  • Create a flowchart to illustrate the problem and solution.
  • Create a defined user requirements document.
  • Produce a software development plan from a system design.
  • Develop and deploy a software solution to solve the problem.
  • Evaluate the software against business and user requirements.

Delivery and Submission

The submission for Part 1 is a report written in Word format. The recommended word limit is 500 words excluding diagrams, references, and appendices.

The submission for Part 2 is in the form of compiled codes, executable files and any other relevant documents covering all the tasks as set out in the previous section. There is no fixed word limit for Part 2.

Referencing

N/A