analysis - Given a problem, identify what a program is meant to do.
design - Use tools such as pseudocode, structure diagrams, flowcharts and wireframes to set out the functionality and interface of the program.
Implementation - Write the program.
testing - Check that the program works as expected and has no errors.
documentation - Collect the documents which are generated at each phase of the software development process.
evaluation - Review the program to check if it:
is fit for purpose
makes efficient use of code
is robust
is readable
A program is fit for purpose if it meets the requirements specification set out during the analysis phase. the final program should match the purpose and functional requirements.
Efficient code uses less resources (processor, RAM) and executes more quickly.
Code can be made more efficient by:
Using repeat loops wherever possible
Using complex conditions instead of simple conditions
Using arrays instead of multiple variables
A program is robust if it can handle a range of different inputs without crashing.
A program is made more readable by using the following techniques:
internal commentary
meaningful variable names
indentation
white space
readability
A) internal commentary
B) indentation
C) meaningful variable names
D) white space
A logic error does not cause the program to crash, but it will produce unexpected results.
Execution errors (also called run-time errors) will cause the program to crash unexpectedly.
Syntax errors are errors in code such as mis-spelled keywords or incorrect use of the programming language rules.
Normal test data will show that the program works as expected.
Extreme test data is used to test the boundary limits of a program.
Exceptional test data is used to test that the program can handle unexpected inputs.
structure diagram
A) process
B) loop
C) predefined function
D) selection
E) process
F) process
flowchart
A) terminal
B) represents start and end of a problem
flowchart
A) initialisation
B) used to show declaration of variables
flowchart
A) input/output
B) shows data input or output
flowchart
A) Decision
B) problem may branch or repeat if conditions are not met