2.3 - 2.5 Flashcards

1
Q

What is defensive design?

A

The practice of planning for contingencies in the design stage of a project.

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

What does anticipating misuse involve in defensive design?

A

Considering how an end user might accidentally or deliberately break a program and writing additional code to handle these situations.

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

What is authentication in the context of defensive design?

A

Verifying a user’s identity before they can use a system.

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

What is recommended for strong passwords?

A

Passwords over a certain length with symbols and mixed-case letters.

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

What is input validation?

A

Ensuring data input by a user meets specific criteria before processing.

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

List types of input validation checks.

A
  • Range check
  • Type check
  • Presence check
  • Format check
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What does maintainability refer to in defensive design?

A

Techniques and methods that make code easier to debug, update and maintain.

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

What are naming conventions?

A

Defined naming conventions for variables, contents and procedures.

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

What is camel case in naming conventions?

A

A style where the first word is all lower case and subsequent words start with a capital letter.

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

What is the purpose of indentation in coding?

A

Makes it easier to see where structures begin and end.

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

What is commenting in programming?

A

Used to explain sections of code and ignored by the compiler.

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

What is testing in software development?

A

Assessing the performance and functionality of a program under various conditions.

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

What is iterative testing?

A

Each module of a program is tested as it is developed.

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

What is final/terminal testing?

A

Checking that all modules of a program work together as expected.

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

What is a syntax error?

A

Rules of the language have been broken, preventing the program from running.

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

What is a logical error?

A

The program runs but does not give the expected output.

17
Q

What are test data?

A

Values used to test a program.

18
Q

Define normal test data.

A

Data supplied to a program that is expected within allowed limits.

19
Q

Define boundary test data.

A

Data designed to test the boundaries of a problem.

20
Q

Define invalid test data.

A

Data of the correct type but outside accepted validation limits.

21
Q

Define erroneous test data.

A

Data of the incorrect type that should be rejected.

22
Q

What is a logic diagram?

A

A method of expression Boolean logic in a diagram using standard symbols.

23
Q

What is a logic gate?

A

A symbol in a logic diagram that represents a single gate.

24
Q

What does the AND logic gate do?

A

Accepts two inputs and produces one output, which is TRUE only if both inputs are TRUE.

25
Q

What does the OR logic gate do?

A

Accepts two inputs and produces one output, which is TRUE if at least one input is TRUE.

26
Q

What does the NOT logic gate do?

A

Accepts one input and produces the opposite output.

27
Q

What is a truth table?

A

A notation used in Boolean algebra to define the output of a logic gate.

28
Q

What is a high-level language?

A

Designed to express a computer program in a way that reflects the problem being solved.

29
Q

What is a low-level language?

A

Close to machine code and closely related to the design of the machine.

30
Q

What is a translator in programming?

A

Takes a program written in one programming language and converts it to another.

31
Q

What is a compiler?

A

Translates high-level language source code into a computer’s machine code.

32
Q

What is an interpreter?

A

Translates and executes a program one statement at a time.

33
Q

What is an Integrated Development Environment (IDE)?

A

A software application that provides comprehensive facilities for software development.

34
Q

What are error diagnostics in an IDE?

A

IDE tools that provide detailed feedback on errors in code.

35
Q

What is a run-time environment?

A

A configuration of hardware and software required by a particular category of application.