IPO Tables#
IPO tables are used to develop your algorithms. They are made up of three columns:
Inputs: Lists all the information/actions this section needs.
Process: Contains the pseudocode for this algorithm, following QCAA pseudocode rules
Output: Lists all the information/actions that result from this section.
Each IPO Table should represent one method (functions) with the Use Case Diagram informing what those methods should be. There is no need to represent all of your methods in IPO tables, but rather you need to show the more complicated or tricky code.
Coverage#
Across all you IPO Tables you should have examples of all the following algorithm components:
sequence
assignment
condition
selection
iteration
modularisation
Summary#
Unit 1 subject matter covered:
Understand that simple algorithms consist of input, process and output at various stages
Represent algorithms using pseudocode by identifying and describing the steps and their behaviour in the algorithm
Represent algorithms using pseudocode by identifying and explaining the algorithmic steps required for a programmed solution [QCAA, 2017]
Unit 2 subject matter covered:
Symbolise algorithmic steps as pseudocode
Understand that simple algorithms consist of input, process and output at various stages
Symbolise well-ordered and unambiguous algorithms using pseudocode for procedural code that processes data for insertion into a database or manipulates or displays retrieved data
Symbolise well-ordered and unambiguous algorithms using pseudocode for user interaction, data validation and data presentation
Understand and use the basic constructs of an algorithm including assignment, sequence, selection, condition, iteration and modularisation [QCAA, 2017]
Unit 3 subject matter covered:
Generate a conceptual model of a possible solution by applying systems thinking that identifies system boundaries, properties, inputs and outputs, user interface, system controls
Recognise and describe program components such as objects, event handlers and multimedia assets
Recognise and describe external data stores such as file structures or object libraries
Recognise and describe internal data structures such as arrays, lists and dictionaries
Generate ideas using innovation and collaboration
Recognise and use the basic constructs of an algorithm including assignment, sequence, selection, condition, iteration and modularisation
Recognise and use appropriate pseudocode conventions
Understand that simple algorithms consist of input, process and output
Symbolise well-ordered and unambiguous algorithms using pseudocode for procedural code that processes data for insertion into a database or manipulates or displays retrieved data
Symbolise well-ordered and unambiguous algorithms using pseudocode for user interaction, data validation and data presentation
Generate generic pseudocode suitable for a variety of programming languages to communicate requirements for programmed components
Generate pseudocode to solve defined problems [QCAA, 2017]
Unit 4 subject matter covered:
Generate a well-ordered and unambiguous algorithm to solve defined problems using pseudocode
Recognise and describe how simple algorithms consist of input, process and output at various stages
Symbolise and explain the basic constructs of an algorithm, including assignment, sequence, selection, condition, iteration and modularisation
Symbolise representations of a digital solution
Symbolise algorithmic steps as pseudocode
Develop simple Caesar, Polyaphabetic (e.g. Vignere and Gronsfeld), and one-time pad encryption algorithms [QCAA, 2017]