2.3 Producing Robust Programs Flashcards

1
Q

Defensive design:

A

helps to ensure programs function properly. This means that programs should never break or produce errors.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Anticipating misuse:

A

thinking ahead about how users might misuse the program. They will then design the program to prevent this happening.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Authentication:

A

confirm the identity of a user before they are allowed to access particular data or programs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Input validation:

A

Checking that data meets certain criteria before passing it into the program

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Maintainability:

A

Easy for other programmers to understand your code. Can include sub programs, comments, indents, clear naming, for structuring easier to test individual modules

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Syntax error:

A

When the compiler or interpreter doesn’t understand something you typed because it doesn’t follow the rules or grammar of the programming language

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Logic error:

A

When the compiler or interpreter is able to run the program but the program does something unexpected.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Iterative testing:

A

The program is tested while it is being developed. Often a programmer will test a module, fix any errors and then test it again.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Final testing:

A

Program tested at end of development process. Whole program tested at the same time to check all working

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Test plan:

A

Outlines what you will test and how. A good test plan anticipates all potential issues with the program

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Normal data:

A

Data that the user is likely to input into the program, not close to boundaries

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Boundary(extreme) data:

A

Values at the limit of what the program should be able to handle, still valid data

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Invalid data:

A

Inputs with the correct data type that should be rejected by the program

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Erroneous data:

A

Inputs with an incorrect data type that should be rejected by the program

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Range check:

A

A number or date is within a sensible/allowed range

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Type Check:

A

Data is of the right type, such as an integer, letter or text

17
Q

Length Check:

A

Text entered is not too long or too short

18
Q

Presence Check:

A

Checks that data has been entered

19
Q

Format Check:

A

Checks that the format of e.g. postcode/email is correct