Back to marketplace

2.3 Robust Programming

No description yet. This curated deck is ready for daily study.

Total cards: 24•Content version: v4•Public deck•Updated: 8/1/2026

Card preview (24)

#1
Front (Question)

Defensive Design Considerations

Back (Answer)

• Authentication • Anticipating misuse

#2
Front (Question)

Authentication

Back (Answer)

Verifying the identity of a user.

#3
Front (Question)

Examples of Authentication

Back (Answer)

Username, password or biometrics

#4
Front (Question)

Anticipating Misuse

Back (Answer)

Designing a program in a way that is resilient to potential misuse.

#5
Front (Question)

Types of Anticipating Misuse

Back (Answer)

• Division by 0 • Communication error

#6
Front (Question)

Validation

Back (Answer)

Checking input data is sensible and in the right format.

#7
Front (Question)

Types of Input Validation

Back (Answer)

-Type check - Range check - Presence check - Format check - Length check

#8
Front (Question)

Type Check

Back (Answer)

Is the input the correct data type? E.g. Inputting an integer where it asks for a name.

#9
Front (Question)

Range Check

Back (Answer)

Is the input within range? E.g. Inputting 1000 where it asks for age

#10
Front (Question)

Presence Check

Back (Answer)

Has required data been entered? E.g. Mandatory questions on google form

#11
Front (Question)

Format Check

Back (Answer)

Correct format? E.g. DD/MM/YYYY

#12
Front (Question)

Length Check

Back (Answer)

Does the input have the correct number of characters? E.g. 8 character password

#13
Front (Question)

Advantages of Input Validation

Back (Answer)

• Make a program more robust • More user friendly • Prevents further errors later on

#14
Front (Question)

Maintainability

Back (Answer)

The process of ensuring that a program is easy to understand, modify and update.

#15
Front (Question)

Maintainability Techniques

Back (Answer)

• Use of subprograms • White space • Indentation • Relevant variable names • Comments

#16
Front (Question)

Use of subprograms

Back (Answer)

They give the code structure and make the purpose of the code clear.

#17
Front (Question)

White space

Back (Answer)

Separates sections of code to make them visually clearer.

#18
Front (Question)

Indentation

Back (Answer)

Makes it clear which lines of code are part of iteration statements.

#19
Front (Question)

Relevant variable names

Back (Answer)

Appropriate variable names mean that understanding the purpose of the variable will be easier.

#20
Front (Question)

Comments

Back (Answer)

Provide information about what the different parts of the program do.

#21
Front (Question)

Purpose of Testing

Back (Answer)

To remove bugs and to ensure that the program functions as intended.

#22
Front (Question)

Types of Testing

Back (Answer)

• Iterative testing • Terminal testing

#23
Front (Question)

Iterative Testing

Back (Answer)

Carried out while a program is being developed. The programmer writes a section of code (module) then tests it.

#24
Front (Question)

Terminal / Final Testing

Back (Answer)

Carried out after all the modules are complete to ensure the code functions as it should.