Paper 2 - Design, Testing and IDE's Flashcards

1
Q

Defensive Design:

A

Will never break or produce errors - Very difficult to achieve. Programmers anticipate how users may: misuse their program and prevent it; ensure their code is well maintained and reduce the number of errors in code through testing.

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

Input Sanitation

A

Removing unwanted characters

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

Input Validation

A

Checking if data meets certain criteria.

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

Examples of input validation :

A

Range Check - Check data is within a specified range
Presence Check - Checks data has been entered
Check Digit - Checks numerical data has been entered
format check - Checks data is in correct format (E.g date)
Look-up Table Checks data against table of values
Length Check - Checks data is correct length

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

Authentication

A

Confirms identity of user, allowing the access to data

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

What is meant by Well-maintained?

A

Comments
Correct indentation
Variables and sub programs should be appropriately named
Global Variables used only when necessary
Overall easy to understand

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

Syntax Errors:

A

Compiler or interpreter doesn’t understand code due to the code not following rules or grammar.

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

Logic Errors

A

When the program can’t run due to something unexpected.

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

Syntax Errors: How to find?

A

Diagnosed by Interpreter or compiler.

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

Logic Error: How to find?

A

Diagnostic testing using a test plan.

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

Performance test:

A

Test 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
12
Q

Usability test:

A

Test how user friendly the interface and features are.

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

Security Test:

A

Tests vulnerability to attacks and security of data.

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

Load/Stress test:

A

How program runs 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
15
Q

Functionality Test:

A

Tests if program meets initial requirements.

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

Iterative testing:

A

Multiple Development cycles to refine and adjust code to requirements of the customer.

17
Q

Final testing

A

One development Cycle, all features of code added at once. The program is tested against initial requirements and sold.

18
Q

Normal Data

A

things a user is likely to input

19
Q

Extreme (Boundary) Data

A

Values at the limit of which the program should handle

20
Q

Errorneous Data

A

Inputs the program shouldn’t accept

21
Q

IDE: What does it stand for?

A

Integrated Development Environment

22
Q

Translators: What into what?

A

Any language into machine code.

23
Q

Compiler: What does it do?

A

All source code at once into an executable file;Only needed to use once; Returns list of errors for program after compiling is complete. Once compiled runs quickly.

24
Q

Interpreter: What does it do?

A

Translates and runs code one line at a time; Needed every time to run program; Will return the first error and then stop; Programs run more slowly.

25
Q

Low-Level languages:

A

One line of code is equal to one line of machine code; Made for one type of machine or processor; Difficult to read, understand and modify; More direct control of CPU and-so runs more memory efficiently and faster; Programmer needs to know of the internal structure of CPU.

26
Q

High-Level Languages:

A

Don’t have a lot of control of CPU; Easier to read, understand and manipulate; Can more easily store data without knowing of memory structure; Each line represents multiple lines of machine code; Will work for multiple machines and processors.

27
Q

Assemblers; What are they?

A

Assemble assembly language into machine code. Each assembler is unique to the CPU.