Describe and implement the phases of an iterative development process: analysis, design, implementation, testing, documentation, and evaluation, within general programming problem-solving.
Identify the purpose and functional requirements of a problem that relates to the design and implementation at this level, in terms of:
inputs
processes
outputs
Identify the data types and structures required for a problem that relates to the implementation at this level, as listed below.
Describe, identify, and be able to read and understand:
structure diagrams
flowcharts
pseudocode
Exemplify and implement one of the above design techniques to design efficient solutions to a problem.
Describe, exemplify, and implement user-interface design, in terms of input and output, using a wireframe.
Describe, exemplify, and implement appropriately the following data types and structures:
character
string
numeric (integer and real)
Boolean
1-D arrays
Describe, exemplify, and implement the appropriate constructs in a high-level (textual) language:
expressions to assign values
expressions to return values using arithmetic operations (addition, subtraction, multiplication, division, and exponentiation)
expressions to concatenate strings
selection constructs using simple conditional statements with <,>, ≤, ≥, =, ≠ operators
selection constructs using complex conditional statements
logical operators (AND, OR, NOT)
iteration and repetition using fixed and conditional loops
pre-defined functions (with parameters):
random
round
length
Read and explain code that makes use of the above constructs.
Describe, exemplify, and implement standard algorithms:
input validation
running total within loop
traversing a 1-D array
Describe, identify, exemplify, and implement normal, extreme, and exceptional test data for a specific problem, using a test table.
Describe and identify syntax, execution, and logic errors.
Describe, identify, and exemplify the evaluation of a solution in terms of:
fitness for purpose
efficient use of coding constructs
robustness
readability:
internal commentary
meaningful identifiers
indentation
white space