What does input validation do?
Input Validation is checking data input by the user meets specific criteria / rules before processing.
Why do we use Input validation?
By using Input validation the program is more:
What are the types of checks
Troubled
Lemons
Race
Funny
Pumpkins
What are some of the issues you have to anticipate?
Robust programs will handle all these situations by checking files and data before attempting to use them for further processing.
How is Dividing by 0 a problem?
In mathematics, there is no number which when multiplied by zero returns a non-zero number. Therefore the ALU cannot compute a division by zero.
How is Communication error a problem?
Online systems require connections to host servers.
If this connection is dropped, unable to be established or the server is overloaded,
it could potentially cause a program to crash or hang when loading/saving data.
How is Peripheral error a problem?
Any peripheral may be in an error mode (e.g. paper jam)
How is Disk error a problem?
Programs that read and write to files must handle exceptions, including:
What is Authentication?
What are the ways it can be achieved?
This can be achieved with:
The factors of authentication can be broken down into three main groups:
something you are - username, bank account number, or anything that identifies the user uniquely
something you know - password, pin, secret answer to a question
something you have - swipe card, biometrics
How can you increase Maintainability of a program? wcidpc
Comments, white space, indentation, variable names, procedures and constants
Why do we test our program?
What is iterative testing?
Performed whilst the software is being developed
What is terminal testing?
Performed when the program is finished
What are Syntax errors
Syntax errors happen because:
What are logic errors and why do logic errors happen
The programs run but does not give expected output
Logic errors can happen because:
What are normal inputs?
Data which should be accepted by a program without causing Errors.
What are boundary/extreme inputs?
Boundary - Data of the correct type which is on the edge of accepted validation boundaries.
What are invalid inputs?
invalid is Data of the correct type but outside accepted validation checks.
What are erroneous inputs?
Erroneus Data of the incorrect type which should be rejected by a computer system.
This include no input being give when one is expected.
How do you refine algorithms to make them robust?
What are structure diagrams and their benifits?
What is defensive design?
Defensive design considerations
Defensive design is contingency planning using validation, sanitisation, authentication, maintenance and testing.
The purpose of defensive design is to ensure that a program runs correctly and continues to run no matter what actions a user takes. This is done through planning for all possibilities (contingencies) and thinking about what a user may do that the program does not expect.
Defensive design encompasses three areas:
Why do we Test?
• To ensure there are no errors (bugs) in the code.
• To check that the program has an acceptable performance and
usability.
• To ensure that unauthorised access is prevented.
• To check the program meets the requirements