Overview

Framework:
RQF
Level:
Level 2
Unit No:
T/618/3703
Credits:
6
Guided learning hours:
48 hours

Aim

In this unit learners will learn about the principles of computer programming to understand how programming works. They will develop text-based programming skills to design and develop their own computer program.

For the full unit details, please download the latest version of the qualification specification. This is available for download on the relevant qualifications page.

Unit Learning Outcomes

To view the assessment criteria and any additional content, please expand the relevant learning outcome below.

1 — Understand the principles of programming.

AC 1.1:

Types of programming: object oriented, event driven, procedural, graphical/visual.

Languages: Python, Java, C++, Visual Basic, PHP, Perl, Scratch.

AC 1.2:

Environment components: integrated development environment (IDE), tool boxes and controls, toolbars, predefined functions, screen templates, help menus, debugging tools.

Assessment Criteria

  • 1.1

    Describe the key features of programming.

  • 1.2

    Explain how programming environments simplify the development process.

2 — Be able to design a program in response to a client brief.

AC 2.1:

Programming requirements: intended purpose and user requirements e.g. data requirements, audience, platform, intended use, security. (as defined in client brief), a problem definition statement.

AC 2.2:

Designs should include: a proposed solution using design tools, e.g. a description of the main program tasks – input and output format (such as to add/multiply two numbers together and display a result), screen layouts and navigation, including prototypes (e.g. initial splash screen or main activity screen), algorithms with step-by-step procedure showing inputs/outputs and a description of the method of solution (flowcharts, pseudocode), data structures, data storage, control structures, data validation, error handling and reporting.

Assessment Criteria

  • 2.1

    Determine programming requirements.

  • 2.2

    Produce design documentation.

3 — Be able to develop a program using a text-based programming language.

  • Develop a solution using suitable text-based programming language e.g. structural components of a program, sequencing, data types, data structures, strings, variables, constants, subprograms, input/output, operators.
  • Syntax: uppercase and lowercase characters, naming conventions, file naming, extensions, version control.
  • Debug: debugger software, trace statements, monitoring techniques, error messages.

Assessment Criteria

  • 3.1

    Develop a program using appropriate algorithm, code and syntax.

4 — Be able to test, refine, document and review the program.

AC 4.1:

  • Test the program/code: produce a test plan, record results, apply corrections and improvements, screen shots to evidence any changes to refine the code.
  • Testing: test strategy, test data, test plan structure, e.g. test, date, expected result, actual result, corrective action, error messages, specialist software tools, e.g. debug.
  • Error handling: debugging, e.g. compiler/translator, errors, e.g. logical, syntax, run-time.

AC 4.2:

  • Documentation: listing/explanation of code, support and maintenance documentation, user guide (for client), etc.
  • Programming standards: use of comments, code layout, indentation.

AC 4.3:

  • Review the program against the client brief: learner should include reflections on their design documentation and program, along with strengths and areas for development, taking into account user feedback, own self-assessment, feedback from others (peers, tutors), suggested improvements to own work should include more efficient or effective ways of working, ways to improve their program, develop own skills, etc.

Assessment Criteria

  • 4.1

    Test and refine the program to ensure maximum functionality and usability.

  • 4.2

    Create documentation for the support and maintenance of the program.

  • 4.3

    Review the program against the client brief, making suggestions for further improvements.