Latest Update
Level: 3
Unit type: Internal
Guided learning hours: 90
Unit in brief
Learners study the underpinning concepts and implications of programming languages to design,
develop and test computer programs.
Unit introduction
Organisations and individuals increasingly depend on the functions and services offered by
computing devices such as smartphones, tablets, laptops and personal desktop computers. You
make use of computing programs when using an operating system or application programs such as
word processing and spreadsheets. Understanding the concepts of high-quality software application
design and development is key to ensuring that products are effective. As a programmer, you will
need to understand the characteristics of different programming languages in order to select and
apply appropriate methodologies to meet a client’s needs.
Many organisations and businesses rely on computer programs to help deliver products and
services. Organisations and businesses (often known as ‘clients’) work closely with programmers to
help design and build computer programs that fulfil their requirements. In this unit, you will draw
on your learning from across your programme of study and apply programming skills to provide a
solution for a new IT-related problem.
You will learn about computational thinking skills and the principles of designing and developing
computer programs. You will apply computational thinking skills to design, develop, test, refine
and review computer programs for a given range of purposes. By developing your analytical,
problem-solving and programming skills, this unit will help you to progress to higher education or
to employment as a software developer.
Learning aims
In this unit you will:
A Examine the computational thinking skills and principles of computer programming
B Design a software solution to meet client requirements
C Develop a software solution to meet client requirements.
Summary of unit
Learning aim Key content areas Recommended
assessment approach
, A Examine the computational A1 Computational thinking
thinking skills and skills
principles of computer
A2 Uses of software
programming
applications
A3 Features and A report evaluating
characteristics of computational thinking skills
programming languages and how the principles of
software design and computer
A4 Constructs and techniques programming are applied to
and their implementation create effective, high-quality
in different languages software applications.
A5 Principles of logic applied
to program design
A6 Quality of software
applications
B Design a software solution B1 Software development life A project brief identifying the
to meet client requirements cycle scope of the problem and
user/client requirements.
B2 Software solutions design
Design documentation for the
C Develop a software C1 Software solutions suggested solution.
solution to meet client development User feedback and design
requirements refinement documentation.
C2 Testing software solutions
Development and support
C3 Improvement, documentation, including
refinement and optimisation development and testing logs,
of software applications C4 meeting notes and a report that
Review of software solutions evaluates the outcomes and
development of the project.
C5 Skills, knowledge and
behaviours
Content
Learning aim A: Examine the computational thinking skills and principles of
computer programming
A1 Computational thinking skills
Application of computational thinking skills involved in analysing problems and processes, in
order to identify solutions that can be developed into software applications.
x Decomposition:
o identifying and describing problems and processes o breaking down problems
and processes into distinct steps o describing problems and processes as a set of
structured steps o communicating the key features of problems and processes to
others as relevant.
x Pattern recognition:
o identifying common elements or features in problems or systems o identifying
and interpreting common differences between processes or problems o
identifying individual elements within problems o describing patterns that have
been identified o making predictions based on identified patterns.
x Pattern generalisation and abstraction: