Robust and Secure Programming
Aligned to the AQA 8525 specification
- Topic
- Programming
- Level
- Intermediate
- Reading time
- 9 min
- Published
- 9 June 2026
- Updated
- 1 July 2026
On this page
Key takeaways
- A program is robust if it handles unexpected or invalid input without crashing, and secure if it prevents unauthorised access to data and functionality.
- The three validation checks required are a range check, a minimum length check, and an empty string check; validation confirms data is acceptable, not that it is accurate.
- AQA requires username-and-password authentication using plain text only, where passwords are stored and compared without encryption.
- The three types of test data are normal (typical values), boundary (values just inside and just outside each limit), and erroneous (completely invalid data).
- A syntax error breaks the language's rules so the program cannot run, while a logic error lets the program run but produces the wrong result.
Something not quite clicking?
Ask Aica to explain any part of this differently. Free, takes 30 seconds.
Key terms
- Robust
- Describes a program that handles unexpected or invalid input without crashing or producing incorrect results.
- Secure
- Describes a program that prevents unauthorised access to its data and functionality.
- Validation
- Checking that data entered is acceptable before it is processed; it confirms data is acceptable, not accurate.
- Range check
- A validation check confirming that a value lies within an acceptable range.
- Minimum length check
- A validation check ensuring a string meets a minimum number of characters.
- Empty string check
- A validation check that prevents a blank entry being accepted.
- Authentication
- Verifying the identity of a user before granting access, such as with a username and password.
- Normal data
- Test data with typical values well within the acceptable range.
- Boundary data
- Test data at the very edge of the acceptable range, both just inside and just outside each limit.
- Erroneous data
- Test data that is completely invalid, such as the wrong type or far outside the range.
- Syntax error
- An error that breaks the language's rules so the program cannot run.
- Logic error
- An error that lets the program run but produces an incorrect result.
Frequently asked questions
A syntax error violates the rules of the language so the program cannot run at all, such as a missing ENDIF, and is reported before execution. A logic error is syntactically correct and runs without error but produces the wrong result, such as using > instead of >= and causing an off-by-one mistake.
Normal, boundary, and erroneous. Normal (typical) data is well within the acceptable range. Boundary (extreme) data sits just inside and just outside each limit, so for a 1-10 range that is 0, 1, 10, and 11. Erroneous data is completely invalid, such as the wrong type or a value far outside the range.
No. Validation only checks that data is acceptable, meaning within the expected format, range, or content. It cannot check whether the data is accurate, so a user who enters a plausible but wrong date of birth in the correct format still passes validation.
Generate revision on any topic you study
Type any topic you're studying and Aicademy generates a complete lesson, quiz, and flashcard set, personalised to your level.
Lessons on anything
Structured, level-matched lessons on any topic you study
Practice quizzes
Find out what you actually know before the exam does
Flashcard sets
Lock in key concepts with instant revision cards
Ask Aica
Stuck on something? Get a clear explanation, any time
Subroutines: Procedures and Functions
Binary Numbers and Denary Conversion
Related lessons
8 min
9 min
9 min