Section Six - Design, Testing and IDEs Flashcards

1
Q

What is the purpose of defensive designs?

A

They help ensure programs function properly (never break or produce errors)

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

What is Input Sanitisation?

A

Removing any unwanted characters before passing data through the program

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

What is Input Validation?

A

Checking if data meets certain criteria before passing it through a program

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

What is a Whitelist?

A

A list of all data a program shouldn’t accept.

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

What can Authentication help?

A

It can help confirm the identity of a user before they’re allowed to access certain data.

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

What types of Errors can there be in a program?

A

Syntax Errors

Logic Errors

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

What are common ways to increase security of a password-based authentication system?

A

Strong passwords and regularly changed passwords
Limit number of failed attempts
Ask for a random selection of characters from password

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

What is a Syntax Error?

A

When the compiler or interpreter doesn’t understand something you’ve 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
9
Q

What is a 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
10
Q

What is a Performance test?

A

Tests how quickly certain features run and their impact on computer resources

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

What is a Usability test?

A

Tests how user-friendly the interface and features are

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

What is a security test?

A

Tests vulnerability to stacks and how securely data is stored

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

What is a load/stress test?

A

Tests how it copes under extreme conditions, e.g. lots of users at the same time

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

What is normal data?

A

Things that a user is likely to input

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

What is extreme (boundary) data?

A

Values at the limit of what the program should be able to handle

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

What is erroneous data?

A

Inputs the program should not accept

17
Q

What are examples of high-level languages?

A

Python, C++, JavaScript

18
Q

What do low-level languages consist of?

A

Machine code and assembly languages

19
Q

What are the purpose of Translators?

A

To convert programming languages into machine code

20
Q

What are the three types of translators?

A

Assemblers, compilers and interpreters

21
Q

What are differences between compilers and interpreters? (Translating the code)

A

Compilers run all of the source code at the same time and creates an executable file, but interpreters run the source code one instruction at a time and doesn’t create an executable file.

22
Q

What are differences between compilers and interpreters? (When they are needed)

A

Compilers are needed only once to create a executable file whereas interpreters are needed every time you want to run the program.

23
Q

What are differences between compilers and interpreters? (Errors)

A

Compilers returns a list of errors for the entire program whereas the interpreters stop at the first error and returns it.

24
Q

What does IDE stand for?

A

Integrated Development Environment

25
Q

What is an IDE?

A

A piece of a software that provides features to help a programmer to develop their program

26
Q

What are some common features of an IDE?

A
Code editor 
Run-time environment 
Explorer window 
Output window 
Error diagnostics 
A translator