Unit 4 Programming
Assignment 2
In this assignment I will be examining and analysing computational skills and the principles of
computer programs. Subsequently, I will apply these computational skills to design, develop, test,
and refine and review computer programs for a given range of purposes. Also, I will be analysing
problems and process, in order to identify solutions that can possibly be developed into software
applications.
Explain how computational thinking skills are applied in finding solutions that can be interpreted into
software applications.
Identifying the four computational thinking skills required for finding solutions that can be
interpreted into software applications:
These skills are highly considered and required to ensure that problems are analysed and being able
to identify and express solutions for further development on software applications such as Adobe
visual studio which would help make it effortless. Furthermore, the computational thinking skills can
be understood in four interlocking stages to boost the awareness of how each of these works
seamlessly.
Stage 1: Decomposition
Decomposition is one of the first computation skills as the main process would be to describe
problems and processes as a set of structured steps and this would usually interpret problems to
denote a step-by-step sequence in a way for a better understanding. Additionally, the processes of
decomposition would be generally improving chances of success when user are able to manage the
problems a decompose to reduce redundancy.
Identifying and describing problems and process:
In this process, I will be able to list down every problem and process in a concise way with using
convenient language to match the problem source. For instance, if I deal with a problem with code
that is about creating code for making multiplication tests, I could use the code again for another
problem that could be about making a questionnaire or test with a few adjustments. This would
imply that there will be familiarity of using the technical language used in the business sector that is
relevant to the main problem.
Breaking down the problem and processes into distinct steps:
In addition, the next process when it comes to the computational skills of decomposition break
complex ideas down into smaller and controllable parts to make it easier to tackle when dealing with
programming. Occasionally, the term factoring is also common for this process. An example of the
decomposition process would be searching the sum of numbers between 1 and 200 and this can be
broken down into smaller equations by adding 200 to 1 or 199 to 2 and the answer would equal 201.
Describing problems and process as a set of structured steps:
Thirdly, the problems will be documented once they have been decomposed in structural steps. In
addition to this, this can be straight forward enough to be followed by others.
Communicating the key features of problems and process to others:
Over here, the problems and processes will be further discussed with others. Additionally, this may
include other programmers or the client which they may be more into programming than beginners
and this would help develop knowledge. Once a complex problem is broken down, it will be much
more possible to start looking to see if they are any repeating patterns in the problems.
1|Page
Harpreet Bhandal 22/04/2021
,Unit 4 Programming
Assignment 2
Explain how computational thinking skills are applied in finding solutions that can be interpreted into
software applications.
Stage 2: Pattern recognition
The next computation skill is pattern recognition, and this process will have the ability to identify and
detect arrangements of data that produce information about systems or data sets. Besides, in
technological context, the ability of this thinking skill is that the attributes are seen to be recurred
within the same problem and between different problems that have been encountered and solved
earlier or before.
- Diagnosing common features in the systems: this step involves examining problems along
with arranging and listing each existent elements. Moreover, it also consists of selecting
those sequences.
- Identifying and interpreting common differences between processes or problems: at this
stage, the process will involve examine problems and process and listing elements or
features that exist in each process along with highlighting those can be unique to each. After
these will be recognised and differences.
- Quantitative description: using length, measure of area, and texture, etc. to describe the
pattern, and sometimes there is no relation between each component.
- Structure descriptions: using some qualitative factors to describe patterns. Strings and trees
are two kinds of arrangements, and there exists order, permutation, or hierarchical relations
between each component.
Pattern recognition involves identifying common elements or features in problems or systems,
this is looking at a similar problem and looking at what factors of the two are similar. Identifying
and interpreting common differences between processes or problems this is looking at seeing
what is not the same with the similar problem. Identifying induvial elements within the
problems so that they can be ordered as of which needs to be solved first. Patterns need to be
identified. Predictions can then be made based on identified patterns.
Through analysis with pattern recognition, we can recognize patterns or connections among the
different pieces of the larger problem. These patterns can be both shared similarities and shared
differences. This concept is essential to building and understanding problem solving.
Stage 3: Abstraction
In abstraction we identify information needed to solve the problem by taking out information
we don’t need and keeping the information that we do need.
We use abstraction to gather the general characteristics and to filter out of the details we do not
need in order to solve our problem. Abstraction is one of the four cornerstones of Computer
Science. It involves filtering out – essentially, ignoring - the characteristics that we don't need in
order to concentrate on those that we do. Abstraction allows us to create a general idea of what
the problem is and how to solve it. The process instructs us to remove all specific detail, and any
patterns that will not help us solve our problem. This idea is known as a ‘model’.
Decomposition and pattern recognition broke down the problem and abstraction works on how
to work with different parts efficiently using a filtering system to remove irrelevant information.
2|Page
Harpreet Bhandal 22/04/2021
, Unit 4 Programming
Assignment 2
Explain how computational thinking skills are applied in finding solutions that can be interpreted into
software applications.
Stage 4: Algorithms
An algorithm is a process or formula for calculating answers, sorting data, and automating tasks; and
algorithmic thinking is the process for developing an algorithm. An effective algorithm will include
assumptions, and show bias toward simple solutions, and remove any chance of error.
With algorithmic thinking it’s about constructing a step-by-step process for solving a problem and
like problems so that work is replicable by humans or computers.
Algorithmic thinking is a derivative of computer science and the process to develop code and
program applications. This approach automates the problem-solving process by creating a series of
systematic, logical steps that in take a defines set of inputs and produce a defined set of outputs
based on these.
To summarise, algorithmic thinking is not solving for the specific answer; instead, it solves how to
build a sequential and replicable process that has an end point- an algorithm. Designing an alighting
helps to communicate and interpret instructions for a predication and reliable outcome.
1. variables – a variable is used in programs to store information that might change and
can be used later on in a program.
2. constants – a constant is a value that should not be changed by the program during
normal execution, contrasted with a variable that can be changed during normal
execution.
3. key processes – key computer processes is an action or series of actions that the CPU will
execute. The CPU will fetch instructions and then decode them and then run/execute
them.
4. repeated processes – iteration in programming means repeating instructions over and
over again, this is called a loop.
5. inputs – data entered into a program is referred to as inputs.
6. outputs – outputting data from a program to a display for the end-user is referred to as
outputs.
Explain how principles of computer programming are applied in different languages to produce
software applications.
Programs are designed using common building blocks as structure for code known as programming
constructions and techniques. They are the basis for all programs.
There are three structure techniques for programs;
1. Sequence is the order in which instructions occur are proceeded
2. Selection determines which path a program takes when it is running
3. Iteration is the repeated execution of a section of code when a program is running
There are two types of interation;
1. Definite interation (count-controlled interation)
2. Indefinite interation (condition-controlled)
3|Page
Harpreet Bhandal 22/04/2021