100% satisfaction guarantee Immediately available after payment Both online and in PDF No strings attached 4.2 TrustPilot
logo-home
Essay

Unit 4 Programming Assignment 1

Rating
-
Sold
1
Pages
20
Grade
A+
Uploaded on
23-03-2022
Written in
2022/2023

This has everything requried to complete learning aim A of the programming assignment in BTEC Level 3 Computing Grade Awarded: Distinction

Institution
Course










Whoops! We can’t load your doc right now. Try again or contact support.

Written for

Study Level
Examinator
Subject
Unit

Document information

Uploaded on
March 23, 2022
Number of pages
20
Written in
2022/2023
Type
Essay
Professor(s)
Unknown
Grade
A+

Subjects

Content preview

Concepts of Programming


Contents
Concepts of Programming.....................................................................................................................1
Computational Thinking.........................................................................................................................1
Uses of Software Applications...............................................................................................................4
Features and Characteristics of programming languages......................................................................5
Programming constructs and techniques and their implementation in different languages...............10
Principles of logic applied to program design......................................................................................16
Quality of software applications..........................................................................................................18
P.1

Computational Thinking
Computational thinking is a problem-solving process that involves 4 major key parts, it helps
formulating problems that enable us to use a computer efficiently and the tools to solve them,
investigating a problem, analyse and identify potential solutions to these problems.

The 4 parts are: Decomposition, Pattern Recognition, Pattern Abstraction and Generalisation, I will
analyse the problems and processes to help identify solutions that can be developed into software
applications, the design below shows that it can be split into four separate steps.

Decomposition

Representation of Computational
problem elements Thinking Skills Pattern Recognition

Pattern generalization
and abstraction


Decomposition
This is the process of breaking things down into smaller steps to make them manageable, this can
be called ‘factoring’, without decomposition complex problems become much harder to solve and
overall is much more time consuming than if we were to use decomposition.

If we use decomposition, it will increase chances of a successful design and overall product, usually
there are steps in how to decompose called ‘sub-tasks’ these are tasks that eventually will lead to
the complex problem being solved although sometimes sub tasks can be even further decomposed.

An example of this would be making tea (7 steps):

1. Get a cup and a teabag
2. Put the teabag inside the cup and boil the kettle for hot water
3. Pour hot water into the cup that has the teabag inside (halfway)

, 4. Add Milk and the amount of sugar wanted
5. Stir the milk in the cup with a spoon
6. Take out the teabag or leave it in depending on how the tea is enjoyed.
7. Putting the tea on a table ready to consume.

Identifying and describing problems and processes
This is all about listing problems and processes clearly, for example using language that is to do with
the problem at hand for example in the finance sector, words like profit, taxes and return on
investment are usually used in those fields, so it’s important when describing or identifying
problems/processes that accurate terminologies are used in relation to the field/sector, this not only
shows understanding but also helps to be concise in explanation and apply knowledge.




Breaking down problems and processes into distinct steps

Make Breakfast

Make Toast Make Tea Add Milk

Toast Bread Add Jam
Butter Toast Boil Water Brew Tea



This stage involves decomposing complex problems and processes, if done correctly in separate
steps, if this is done correctly, they can be reassembled correctly in the right order, it is important to
note that there is no limit to the number of steps included or how many levels you can decompose.

You can simply decompose each step as many times until you reach an acceptable standard, for an
example the process of making breakfast is broken into many steps seen from the image above.

Describing problems and processes as a set of structured steps
This stage is all about documenting problems and processes that you have decomposed as steps, this
is to help the understanding and be easy to follow for you or by others.

An example of this would be comments or numbered items in a list to make it not only structured
but easy to see where the start and finish is of the current problem/process and to see how when
you recompose the steps, they end up creating the result,

Communicating key features of problems and processes to others
This stage involves discussing problems and processes to other people, including programmers or
even the client, once a problem has been decomposed it’s a good idea to check for any repeating
patterns.

Pattern recognition

, This (Pattern recognition) is the ability to see reoccurring attributes within a set of problems or
between different problems, an example of this could be a problem that has features which are like
problems previously encountered, recognising patterns is crucial as it makes problem solving easier
and often code simpler and concise.

Pattern recognition involves 5 key steps which are:

Identifying common elements or features in problems or systems:
 Examining systems or problems for patterns and how they can be simplified.
 Listing the elements and features that exist in each pattern a
 Highlighting features that exist in multiple places (sets of codes repeated for buttons)
 Recognising when something is a pattern (repeated consistently in the code)

Identifying and interpreting differences between processes or problems
 Examining the problems (redundant code) and processes
 Listing elements or features that exist in each problem/process.
 Making sure to highlight parts of those problems or processes that are unique
 Recognising these unique parts as differences.

Identifying Individual elements within problems. Involves:
 Examining problems to identify inputs, processes (this includes selections and iterations)
outputs are also present.

Describing patterns that are identified.

Making predictions based on the patterns identified:
 Each identified pattern needs to be determined by how they can be used in the future or
how they might reappear in similar situations.


Pattern generalisation and abstraction
Abstraction in computing, is a concept where systems are split into different layers, each layer hiding
the complexity of the layer beneath it.

Programmers are then allowed to use a feature without even having to know how it works,
irrelevant and intricate mechanics are simply abstracted away or removed.

Pattern generalisation is when relationships between patterns can be identified (this could be code
reused consistently in the program etc.) with which simple conclusions can appear, patterns can be
identified even if they don’t seem to have any similarities at first making it crucial to identify
patterns.

In forms of computer systems, for example laptops, computers and even mobile phones we can
identify patterns in the design, each system has a CPU, Storage Devices, processors, RAM is needed
in all computer systems and so on, to problem-solve efficiently you have to look past the obvious
physical differences and instead try to identify elements that are common and the relationship
between these elements.

There are two main parts in this phase of computational thinking:

Identify the information required to solve an identified problem by:
$6.18
Get access to the full document:

100% satisfaction guarantee
Immediately available after payment
Both online and in PDF
No strings attached

Get to know the seller
Seller avatar
Green22
1.0
(1)

Also available in package deal

Get to know the seller

Seller avatar
Green22 City of Westminster College
Follow You need to be logged in order to follow users or courses
Sold
9
Member since
3 year
Number of followers
6
Documents
9
Last sold
1 month ago

1.0

1 reviews

5
0
4
0
3
0
2
0
1
1

Recently viewed by you

Why students choose Stuvia

Created by fellow students, verified by reviews

Quality you can trust: written by students who passed their tests and reviewed by others who've used these notes.

Didn't get what you expected? Choose another document

No worries! You can instantly pick a different document that better fits what you're looking for.

Pay as you like, start learning right away

No subscription, no commitments. Pay the way you're used to via credit card and download your PDF document instantly.

Student with book image

“Bought, downloaded, and aced it. It really can be that simple.”

Alisha Student

Frequently asked questions