On a mission to end educational inequality for young people everywhere.
ZNotes Education Limited is incorporated and registered in England and Wales, under Registration number: 12520980 whose Registered office is at: Docklands Lodge Business Centre, 244 Poplar High Street, London, E14 0BB. “ZNotes” and the ZNotes logo are trademarks of ZNotes Education Limited (registration UK00003478331).
- MYP 4 AND 5
Problem Solving and Design
What is a computer system?
A COMPUTER SYSTEM is made up of software, data, hardware, communications and people; each computer system can be divided up into a set of sub-systems. Each subsystem can be further divided into sub-systems and so on until each sub-system just performs a single action.
TOP-DOWN DESIGN is the breaking down of a computer system into a set of subsystems, then breaking each sub-system down into a set of smaller sub-systems, until each sub-system just performs a single action
The STRUCTURE DIAGRAM shows the design of a computer system in a hierarchical way, with each level giving a more detailed breakdown of the system into sub-systems.
A FLOWCHART shows diagrammatically the steps required for a task (sub-system) and the order that they are to be performed. These steps together with the order are called an ALGORITHM
PSEUDOCODE is a simple method of showing an algorithm, using English-like words and mathematical operators that are set out to look like a program
A LIBRARY ROUTINE is a set of programming instructions for a given task that is already available for use
A SUB-ROUTINE is a set of programming instructions for a given task that forms a subsystem, not the whole system
An ALGORITHM sets out the steps to complete a given task. This is usually shown as a flowchart or pseudocode
Validation is the automated checking by a program that data is reasonable before it is accepted into a computer system
There are many different types of validation checks including:
• range checks
• length checks
• type checks
• character checks
• format checks
• presence checks
• check digits.
Verification is checking that data has been accurately copied onto the computer or transferred from one part of a computer system to another
Verification methods include:
• double entry
• screen/visual check
• parity check
Trace tables are used to allow programmers to trace the value of variables as each line of code is executed. The values of the variables are displayed in a table and assist the programmer in identifying any potential errors
Test data is then used to dry run the flowchart and record the results on the trace table
Test data: 9, 7, 3, 12, 6, 4, 15, 2, 8, 5
Stages in producing an algorithm
1 Make sure that the problem is clearly specified.
2 Break the problem down into sub-problems; if it is complex, you may want to consider writing an algorithm for each sub-problem. Most problems, even the simplest ones can be divided into:
• output of results.
3 Decide on how any data is to be obtained and stored, what is going to happen to the data and how any results are going to be displayed.
4 Decide on how you are going to construct your algorithm, using a flowchart or pseudocode.
5 Construct your algorithm, making sure that it can be easily read and understood by someone else. This involves setting it out clearly and using meaningful names for any data stores. The algorithms that you have looked at so far in this chapter were not designed with readability in mind because you needed to work out what the problem being solved was.
6 Use several sets of test data (normal, abnormal and boundary) and trace tables to find any errors.
7 If any errors are found, repeat the process until you think that your algorithm works perfectly
- Standard solutions - Linear Search
- Standard solutions - Bubble Sort
- Standard solutions - Totalling
- Standard solutions - Counting
- Standard solutions - Finding the maximum, minimum and average
Notes mentioning this note
Here are all the topics on this website, along with their links, visualized as a graph.
Computer Science IGCSE
Providing education for computer science knowledge seekers, chapter 9 problem-solving and design.
A computer system is made of software, data, hardware, communications and people; each computer system ca be divided into a set of sub systems. Each sub system can be divided into another sub system until each sub system performs a single task.
The division of sub system is by “top down design”. The process of breaking down into smaller sub systems is called ‘step wise refinement’.
Structure diagrams can be used, it shows the design of a computer system in a hierarchical way, with each level giving a more detailed breakdown of the system into sub systems.
A Sub-Routine is set of programming instructions for a given task that forms a sub-system, not the whole system. Sub-Routines written in high level languages are called ‘procedures’ or ‘functions’ depending on how they are used.
An example of a Structure Diagram
Validation is the automated checking by a program that data is reasonable and in the right criteria that it is accepted into a computer system. There are many different kinds of data check such as: range checks, length checks, type checks, character checks, presence checks, etc. When data is validated by a computer system, if the data is rejected a message should be output explaining why the data was rejected and a second opportunity given to enter the correct data.
- Already have a WordPress.com account? Log in now.
- Follow Following
- Copy shortlink
- Report this content
- View post in Reader
- Manage subscriptions
- Collapse this bar
- Schools directory
- Resources Jobs Schools directory News Search
IGCSE Computer Science -Year 10/11- Chapter 7-Algorithm design and problem-solving- 2023/2024
Age range: 14-16
Resource type: Lesson (complete)
16 November 2023
- Share through email
- Share through twitter
- Share through linkedin
- Share through facebook
- Share through pinterest
** IGCSE Computer Science -Year 10/11 ** 2023/2024 updated version
Chapter 7-Algorithm design and problem-solving:
** Learning Objectives: **
1 Understand the program development life cycle, limited to: analysis, design, coding and testing. 2 (a) Understand that every computer system is made up of sub-systems, which are made up of further sub-systems (b) Understand how a problem can be decomposed into its component parts © Use different methods to design and construct a solution to a problem 3 Explain the purpose of a given algorithm 4 Understand standard methods of solution 5 (a) Understand the need for validation checks to be made on input data and the different types of validation check (b) Understand the need for verification checks to be made on input data and the different types of verification check. 6 Suggest and apply suitable test data 7 Complete a trace table to document a dry-run of an algorithm. 8 Identify errors in given algorithms and suggest ways of correcting these errors. 9 Write and amend algorithms for given problems or scenarios, using: pseudocode, program code and flowcharts
Creative Commons "Sharealike"
Your rating is required to reflect your happiness.
It's good to leave some feedback.
Something went wrong, please try again later.
This resource hasn't been reviewed yet
To ensure quality for our reviews, only customers who have downloaded this resource can review it
Report this resource to let us know if it violates our terms and conditions. Our customer service team will review your report and will be in touch.
Not quite what you were looking for? Search by keyword to find the right resource:
Algorithm Design and Problem-Solving
- Structure Diagrams
- Top-Down Design
- Trace Tables (Algorithm Dry Runs)
- Algorithm Design
- All Quizzes
- Computer Science Glossary
- Our YouTube Channel
- GCSE GURU Revision Tips +
- Terms and Conditions
- Information & Terms
Copyright © Computer Science GCSE GURU