Defensive design
Designing and building computer code that is secure, easy to maintain and robust
Authentication
A security mechanism which requires a password, code, fingerprint or other factor to gain access to the system
Input Validation
The process of comparing data entered into the program to a set of rules to ensure it can be accepted
Maintainability
The ability to keep code updated, fix bugs and add new features easily.
Naming Conventions
The way to name variables in a way that is clear and relevant to its purpose
Indentation
Inserting spaces at the start of a line or lines of code so to group them together and make the code easier to read.
Comment
Lines that are not code themselves but provide notes to the programmer
Testing
The process of trialing a program in order to ensure it performs as expected.
Iterative testing
Testing which is carried out whilst the program is being developed, so you can catch out mistakes as you go.
Final testing
Testing which is carried out at the end of development
Syntax Error
An error which breaks the rules of the programming language and means the code can’t run
Logic error
An error which produces an unexpected output, but the code still runs.
Normal Data
Data which the program should accept without error
Boundary Data
Data at the extremes of what the program should accept (e.g. the last number in a range)
Invalid Data
Data that is the correct type but is not valid for the program and should be rejected
Erroneous Data
Data which is the wrong type and should be rejected