Unit 1 Programming
Unit 1 Programming
Submission Format
LO1 Define basic algorithms to carry out an operation and outline the process of
programming an application
LO2 Explain the characteristics of procedural, object-orientated and event-driven-
programming
LO3 Implement basic algorithms in code using an IDE
LO4 Determine the debugging process and explain the importance of a coding standard.
Effective assignment design for the Higher Nationals in Computing/Computing for England:
2 Authorised Assignment Briefs — Issue 1 — August 2022 O Pearson Education Limited 2022
• The ability to deploy effectively the tools used for the construction and documentation
of computer applications, with particular emphasis on understanding the whole process
involved in the effective deployment of computers to solve practical problems
• The ability to critically evaluate and analyse complex problems, including those with
incomplete information, and devise appropriate solutions within the constraints of a
budget.
Generic skills for employability
• Intellectual skills: critical thinking; making a case; numeracy and literacy
• Self-management: self-awareness and reflection; goal setting and action planning
• Independence and adaptability; acting on initiative; innovation and creativity
• Contextual awareness, e.g. the ability to understand and meet the needs of individuals,
business and the community, and to understand how workplaces and organisations are
governed.)
Vocational scenario
You have just started a new role as a junior Software Developer at AQ Digital Solutions
(AQDS), an independent software development company that designs and builds bespoke
software solutions for various companies of different sizes that cover a range of different
industries. The software that they design uses a wide range of technologies, from simple
stand-alone programs to large web-based applications.
AQDS has been approached by a small, local company — North Sussex judo — that specialises
in providing judo training sessions to people from the local community. North Sussex judo
caters to people of all ages and experience, from expert to beginner.
North Sussexjudo has requested a simple program that will calculate the cost of training
fees for their athletes each month.
The CEO of the company has reviewed the client requirements and has determined that this
is a suitable project for you to take on. The company wants to see how you use and apply
the ADQS development environments and code standards.
The requirements are that North Sussex judo wants a program that will allow a user to
enter the following information:
• athlete name
• training plan
• current weight in kilograms (kg)
• competition weight category
• number of competitions entered this month
• option to add the number of hours private coaching.
For each athlete, the program should then output the following information:
• the athlete’s name
Effective assignment design for the Higher Nationals in Computing/Computing for England:
4 Authorised Assignment Briefs — Issue 1 — August 2022 O Pearson Education Limited 2022
Assignment activity and guidance
Activity 1
Produce a formal presentation (with supporting notes) for AQDS that explores the features
and characteristics of the three different programming paradigms — Event Driven, Object
Oriented and Procedural — in a selected application. The selected application source code
will need to implement all three paradigms.
Your presentation should include:
• a brief explanation about what the selected application is and what it does
• a general discussion of the three code paradigms, with specific reference to their
characteristics and how each one is related
• a comparison of how the three programming paradigms have been used in the given
application source code
• a critical evaluation of how the source code implements all three paradigms in terms of
code structure and characteristics.
Activity 2
You are required to develop a program for North Sussex judo that makes use of appropriate
algorithms to fulfil the given client requirements. You should make use of whichever tools
and techniques are most appropriate for your chosen coding paradigm and for the nature
of the software solution.
You are to write a report that details the process that would be required to design the
algorithm for the solution and how you turned the algorithm into a working application.
Your report should include the following.
• -A definition, written in the design tool of your choosing, of the algorithm required for
the implementation of the North Sussex judo program
• An outline of the steps required to build the application
• A description of the steps required for converting the algorithm into a working program,
including identification of a suitable programming language
• An analysis of the relationship between the algorithm and program code to be produced
(e.g. parts of the algorithm that would remain the same, changes that would have to be
made)
• An analysis of the possible challenges you would face when converting the designed
algorithm into program code (e.g. data types/structures available in the chosen
language, control structures required)
• An explanation of the coding standards you used in your source code.
As part of your written report, you should clearly show how you have enhanced your
original algorithm, using the features of the IDE to manage the development process. This
could include:
• identifying and solving any logical errors in the original algorithm
• debugging any errors in the program
Recommended resources
Please note that the resources listed are examples for y'ou to use as a starting point in your
research - the list is not dej'initive.
Weblinks - general:
http://www.rosettacode.org (2016) programming chrestomathysite [online] Available at:
http://www.rosettacode.org/wiki/Rosetta_Code [Accessed 1 August 2022]
Effective assignment design for the Higher Nationals in Computing/Computing for England:
6 Authorised Assignment Briefs — Issue 1 — August 2022 O Pearson Education Limited 2022
https://github.com/ (2022) The complete developer platform to build, scale, and deliver secure
software [online] Available at: https://github.com/ [Accessed 1 August 2022]
https://theruntime.com/ (n.d.) Difference Between Algorithm and Code [online] Available at:
https://theruntime.com/algorithm-vs-code/ [Accessed 1 August 2022]
https://www.codementor.io (n.d.) Comparing Programming Paradigms: Procedural
Programming vs Object-oriented Programming [online] Available at:
https://www.codementor.io/learn-programming/comparing-programming-paradigms-
procedural-programming-vs-object-oriented-programming [Accessed 1 August 2022]
https://www.codingninjas.com/ (2020) Types of Algorithms and Their Uses [online] Available at:
https://www.codingninjas.com/blog/2020/06/04/types-of-algorithms-and-its-uses/ [Accessed
1 August 2022]
https://www.freecodecamp.org/ (2022) What is Debugging? How to Debug Your Code for
Beginners [online] Available at: https://www.freecodecamp.org/news/what-is-debugging-
how-to-debug-code/ [Accessed 1 August 2022]
https://www.geeksforgeeks.org/ (2022) Introduction of Programming Paradigms [online]
Available at: https://www.geeksforgeeks.org/introduction-of-programming-paradigms/
[Accessed 1 August 2022]
https://www.mdpi.com/ (2022))ournaIs on algorithms [online] Available at:
https://www.mdpi.com/journal/algorithms [Accessed 1 August 2022]
https://www.sourcecodester.com/ (2022) Free Source Code [online] Available at:
https://www.sourcecodester.com/ [Accessed 1 August 2022]
https://www.technologyuk.net/ (n.d.) Event-driven Programming[online] Available at:
https://www.technologyuk.net/computing/software-development/software-design/event-
driven-programming.shtml [Accessed 1 August 2022]
Weblinks - code learning tools:
https://repIit.com/ (2022) Code, create, and learn together [online] Available at:
https://repIit.com/ [Accessed 1 August 2022]
https://www.codecademy.com/ (2022) join the millions learning to code with Codecademyfor
free [online] Available at: https://www.codecademy.com/ [Accessed 1 August 2022]
HYPERLINK "https://www.codechef.com/"https://www.codechef.com (2022) Self-Learning
coding roo/ [online] Available at: HYPERLINK
"https://www.codechef.com/"https://www.codechef.com [Accessed 1 August 2022]
https://www.codewars.com/ (2022) Achieve Mastery Through Challenge [online] Available at:
https://www.codewars.com/ [Accessed 1 August 2022]
https://www.codingame.com/start (2022) STEP UP YOUR CODING GAME[online] Available at:
https://www.codingame.com/start [Accessed 1 August 2022]
https://www.w3schools.com/ (2022) Learn to Code [online] Available at:
https://www.w3schools.com/ [Accessed 1 August 2022]
journal articles:
Adragna, P. (n.d.) Software debugging techniques. Available at:
Effective assignment design for the Higher Nationals in Computing/Computing for England:
8 Authorised Assignment Briefs — Issue 1 — August 2022 O Pearson Education Limited 2022
Learning Outcomes and Assessment Criteria
Pass Merit Distinction
LOI Define basic algorithms to carry out an operation
and outline the process of programming an application
P1 Define an algorithm and M1 Analyse the process D1 Evaluate the implementation of
outline the process in of writing code, including an algorithm in a suitable language
building an application. the potential challenges and the relationship between the
P2 Determine the steps fa Cf2d
written algorithm and the code
‘ variant.
taken from writing code to
execution.
LO2 Explain the characteristics of procedural, object-
orientated and event-driven programming
P3 Discuss what procedural, M2 Compare the D2 Critically evaluate the source
object-orientated and procedural, object- code of an application that
event-driven paradigms are; orientated and event- implements the procedural, object-
their characteristics and the driven paradigms used in orientated and event-driven
relationship between them. given source code of an paradigms, in terms of the code
application. structure and characteristics.
LO3 Implement basic algorithms in code using an IDE
P4 Write a program that M3 Enhance the D3 Evaluate the use of an IDE for
implements an algorithm algorithm written, using development of applications
using an IDE. the features of the IDE to contrasted with not using an IDE.
manage the
development process.
LO4 Determine the debugging process and explain the
importance of a coding standard.
P5 Explain the debugging M4 Examine how the D4 Evaluate the role and
process and the debugging debugging process can purpose of a coding standard
facilities available in the IDE. be used to help develop and why it is necessary in a team
P6 Explain the coding more secure, robust as well as for the individual.
standard you have used in applications.
your code.