Robust programs
Validation, authentication, testing and debugging, then the languages and translators behind it all and the IDE: a robot that survives bad commands.
Start in the simulator- F6.1 Defensive design and validation Anticipating misuse; presence, type, range, length, format and look-up checks.
- F6.2 Authentication Usernames and passwords, limiting attempts, and stronger ways to prove who someone is.
- F6.3 Testing and test data Iterative and final testing; normal, boundary, invalid and erroneous data; test plans in code.
- F6.4 Debugging logic errors Finding the mistake that gives no message: watching, printing, stepping and common bugs.
- F6.5 Languages and translators High and low level, machine code and assembly; compilers, interpreters and assemblers.
- F6.6 The IDE Editors, error diagnostics, the run-time environment and the translator, in the cell you use.
- F6.7 Project: the fail-safe controller A command program that authenticates, validates every command, and is tested against a plan.