Programming Level 3 Study Guide: Computational Thinking and Software Development, Exams of Programming Languages

This study guide provides a comprehensive overview of programming concepts and principles for level 3 students. It covers computational thinking skills, software development life cycle, design and development of software solutions, and quality considerations. The guide includes detailed explanations of key concepts, examples, and exercises to reinforce learning.

Typology: Exams

2024/2025

Available from 04/15/2025

pharm-lec1
pharm-lec1 🇺🇸

4.3

(11)

473 documents

1 / 11

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Unit 4: Programming Level 3 Study Guide 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:
AExamine the computational thinking skills and principles of computer programming
BDesign a software solution to meet client requirements
CDevelop a software solution to meet client requirements.
Summary of unit
Learning aim Key content areas Recommended assessment
approach
AExamine the computational
thinking skills and
principles of computer
A1 Computational thinking
skills
A report evaluating computational
thinking skills and how the
principles of software design and
pf3
pf4
pf5
pf8
pf9
pfa

Partial preview of the text

Download Programming Level 3 Study Guide: Computational Thinking and Software Development and more Exams Programming Languages in PDF only on Docsity!

Unit 4: Programming Level 3 Study Guide 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

thinking skills and principles of computer

A1 Computational thinking

skills A report evaluating computational thinking skills and how the principles of software design and

programming A2 Uses of software applications

A3 Features and

characteristics of programming languages

A4 Constructs and techniques

and their implementation in different languages

A5 Principles of logic applied to

program design

A6 Quality of software

applications computer programming are applied to create effective, high- quality software applications.

B Design a software solution to

meet client requirements

B1 Software development life

cycle

B2 Software solutions design

A project brief identifying the scope of the problem and user/client requirements. Design documentation for the suggested solution. User feedback and design refinement documentation. Development and support documentation, including development and testing logs, meeting notes and a report that evaluates the outcomes and development of the project.

C Develop a software

solution to meet client requirements

C1 Software solutions

development

C2 Testing software solutions

C3 Improvement, refinement

and optimisation of software

applications C4 Review of

software solutions

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:

o identifying information required to solve an identified problem o

filtering out information required to solve an identified problem.

x Representing parts of a problem or system in general terms by identifying:

x iteration – repetition of a computational procedure applied to the result of a previous application

x mathematical logic – inference, consistency, completeness, verification by truth tables x

propositional dynamic logic to demonstrate the function of algorithms x use of sets, e.g. properties

and interrelationships of sets of data, search/filter sets of data. A6 Quality of software applications How the design and implementation of a software application affects quality, including:

x efficiency/performance, e.g. the system resources consumed by the program, CPU cycles, processor time,

memory space, accessing storage media

x maintainability, e.g. ease with which a program can be modified by its present or future developer in

order to carry out corrective, perfective or adaptive maintenance

x portability, e.g. range of computer hardware, operating systems and platforms on which the source

code can be run/compiled/interpreted

x reliability, e.g. accuracy and the consistency of its outputs

x robustness, e.g. quality of coding and testing to ensure that extreme and erroneous data can be

processed without causing the program to crash x usability, e.g. ease with which an end user can

use the program.

Learning aim B: Design a software solution to meet client requirements

B1 Software development life cycle Application of the software development life-cycle stages, including:

x assessment of the requirements for an identified problem x design specification,

e.g. scope, inputs/outputs, user interface, timescales x develop code x

implementation x test, e.g. white box and black box testing, refinement,

optimisation x maintenance, e.g. corrective, adaptive and increased functionality.

B2 Software solutions design x Problem definition statements, to include: intended users, full

summary of the problem to be solved, constraints, benefits, nature of interactivity, complexity of problem.

x Purpose and any other requirements as defined in a client brief. x

Features of software:

o description of main program tasks, input and output formats o diagrammatic

illustrations, to include screen layouts, user interfaces, navigation o algorithms and

processing stages, to include flowcharts, pseudocode and events o data structures o data

storage o control structures o data validation o error handling and reporting. x Choice of

language. x List of pre-defined programs and/or code snippets.

x List of ready-made and/or original assets such as a digital animation, digital graphic, digital audio

and video.

x Feedback from others to help refine alternative design ideas/prototypes and make decisions.

x Test plan with test data to include typical, extreme and erroneous data.

x Technical and design constraints, e.g. connectivity, memory storage, programming

languages.

Learning aim C: Develop a software solution to meet client requirements

C1 Software solutions development

The process of software development, including: x

the development environment to produce code

x the development and refinement of software programs using a suitable programming

language

x library routines, standard code and user generated subroutines used to add to the efficiency of a

program. C2 Testing software solutions Testing of the programs, including:

x test plan

x test data – typical, extreme and erroneous data

x selection and use of appropriate types of testing to test part or all of a program,

e.g. functional testing, stability, compatibility. C3 Improvement, refinement and optimisation of software applications

Methods of improving, refining and optimising, e.g.: x annotated code to allow effective

repair/debugging of the program and maintainability x program compilation for a designated

platform or environment

x review – quality of a program in terms of reliability, usability, efficiency/performance, maintainability,

portability

x eliciting feedback from users

x making use of the outcomes of testing and feedback x

documenting changes to the design and solution. C4 Review of software solutions Evaluation of software solutions, including:

x suitability for audience and purpose

x ease of use

x quality of the software solution, e.g. reliability, usability, efficiency/performance, maintainability,

portability

x constraints of the programming language

x other constraints, e.g. time, programmer knowledge, rules of languages vary with

implementation

x strengths and weaknesses of the software solutions

x improvements that can be made

x optimising software solutions, e.g. improving robustness, improving efficiency of the code, adding

additional functionality. C5 Skills, knowledge and behaviours

x Planning and recording, including the setting of relevant targets with timescales, how and when

feedback from others will be gathered.

x Reviewing and responding to outcomes, including the use of feedback from others, e.g. IT professionals

and users who can provide feedback on the quality of the program and its suitability when assessed against the original requirements.

x Demonstrating own behaviours and their impact on outcomes, to include professionalism, etiquette,

supportive of others, timely and appropriate leadership, accountability and individual responsibility.

x Evaluating outcomes to help inform high-quality justified recommendations and decisions. x

Evaluating targets to obtain insights into own performance.

x Media and communication skills, including:

There is a maximum number of two summative assignments for this unit. The relationship of the learning aims and criteria is: Learning aim: A (A.P1, A.P2, A.P3, A.M1, A.D1) Learning aims: B and C (B.P4, B.P5, C.P6, C.P7, B.M2, C.M3, BC.D2, BC.D3)

Further information for teachers and assessors

Resource requirements

For this unit, learners must have access to a range of programming languages, IDEs (integrated development environment) and diagramming tools to allow them to use a variety of tools and techniques (given in the unit content) to design and develop computer programs. Learners will need access to examples of programs and code bases written in a range of languages for a number of different purposes. While access to the code base of many proprietary applications is restricted, there are many open-source alternatives that can be used.

Essential information for assessment decisions

Learning aim A

Evidence for this assignment will be in the form of a written response that investigates computational thinking skills and the principles and purpose of different programming languages. The report will make use of specific examples of code implementation (and the chosen paradigm) to explore how the example code has been implemented to meet specific needs. The code base used by learners in their investigation must be of sufficient complexity to allow analysis of the implementation of a range of programming constructs, including standard and language-specific techniques, logical structures and mathematical principles. For distinction standard, learners will provide an evaluation of how computational thinking skills are used to find solutions to problems and how this can impact software design and the applications developed. They will provide a clear and balanced evaluation of the use of different programming languages (in identified programs) to solve different, specific problems. Learners will provide a detailed analysis of the programming principles used in the identified programmes. They will evaluate the success of their implementation in terms of the quality of code produced, and in a wider context where applicable. Quality will be considered in terms of the degree to which user requirements are met, the robustness of the code, its maintainability, efficiency, portability and ease of use. Learners will provide an evaluation of the identified programming languages. They will consider the principles they have analysed and explain why specific programming languages are used and what advantages they may offer to the programmer and the end user. Learners must articulate their arguments and views fluently and concisely, providing an evaluation that makes reasoned and valid judgements. The evidence will demonstrate high-quality written/ oral communication through the use of accurate and fluent technical vocabulary to support a well-structured and considered response that clearly connects chains of reasoning. For merit standard, learners will analyse how computational thinking skills can impact software design, highlighting features of decomposition, pattern recognition and pattern generalisation and abstraction. Learners will show a clear understanding of how different programming languages are implemented to solve problems. They will provide a balanced and reasoned analysis of the strengths and weaknesses of the identified code in solving the problems and the quality of the implementations. They will analyse the strengths and weaknesses of the identified languages and how they affect the requirements of the user and the development of a program to meet defined needs. The evidence will be technically accurate and demonstrate good-quality written or oral communication. For pass standard, learners will explain how computational thinking skills are used to find solutions to problems. They will explain the range of programming languages available, as given in the unit content. Learners will explain how each differs in terms of constructs, techniques, use and requirements. They must choose one example program that has been created to solve a particular problem/meet a specific need, and provide descriptions of how programming constructs and the principles of software design have been applied to develop a solution to meet the required needs of users. Learners will also consider how

Systems to Manage Information x Unit 3: Using Social

Media in Business x Unit 9: IT Project Management

x Unit 11: Cyber Security and Incident Management x

Unit 14: IT Service Delivery.

Employer involvement

This unit would benefit from employer involvement in the form of:

x guest speakers

x technical workshops involving staff from local organisations/businesses

x contribution of design/ideas to unit assignment/scenario/case study/project materials, including own

organisation/business materials as exemplars where appropriate

x feedback from staff from local organisations/businesses on plans/designs/items developed x

opportunities for observation of organisational/business application during work experience x

support from local organisation/business staff as mentors.

58 Pearson BTEC Level 3 National Diploma in Information Technology – Specification – Version 1.0 final pre-publication – August 2016 © Pearson Education Limited 2016 UNIT 5:DATA MODELLING

Unit 5: Data Modelling

Level: 3

Unit type: Internal

Guided learning hours: 60

Unit in brief

Learners study how data modelling can be used to solve problems. They will design and implement a data model to meet client requirements.

Unit introduction

In all aspects of life, individuals are constantly faced with situations where they must weigh up the available information in order to produce alternatives and make decisions. In the working environment, effective decision making can ensure the successful development of organisations. Poor decision making can have significant negative consequences and can even lead to the demise of an organisation. In this unit, you will investigate the fundamentals of the decision-making process. You will find out how using data modelling provides the computational ability to compare consequences, and determine a preferred course of action. You will develop the skills and techniques necessary to create complex spreadsheets in order to produce accurate information that informs decision making. You will examine a scenario and then design, develop and test a spreadsheet; you will review your spreadsheet and make refinements based on user feedback, providing an evaluation of the effectiveness of the alternatives produced. The skills developed in this unit are useful for progression to computing or business-related higher education courses and for use in decision making in the workplace.

Learning aims

In this unit you will:

A Investigate data modelling and how it can be used in the decision-making process

B Design a data model to meet client requirements

C Develop a data model to meet client requirements.