defensive design considerations

Cards (6)

  • anticipating misuse
    planning ahead to take steps against potential misuse (e.g the app X prevents the same tweets sent twice in a row as it might be spam).
  • input sanitisation
    checking and cleaning up data that has been input (e.g removing special characters to prevent a SQL injection).
  • validation
    checking whether input data follows specific criteria and should be accepted (e.g a length check on a password).
  • verification
    checking whether data that has been entered is correct (e.g double entry).
  • authentication
    ensuring only authorised users can gain access to a system (e.g usernames and strong passwords).
  • maintainable code
    allowing other programmers to easily read and quickly understand code that has been written (e.g using comments, indentation and appropriate variable names).