Software - Testing and Evaluation Flashcards

1
Q

What are the 3 types of errors Testing can identify

A

Syntax
Execution
Logic error

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

What is a syntax error?

A

Mistakes in the grammar of the programming language. Those are reported by the translator programme

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

What is an Execution error?

A

Detected when the program is ran (eg not by the translator). Example is division by zero or attempting to read from a disc & the disc is not present

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

What is a logic error?

A

The programme itself is fine but there is something wrong in the logic which means the results are not as expected. Example adding instead of multiplying

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

What are the 4 main testing techniques

A

Dry Runs, Trace Tables, Breakpoints, Watchpoints

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

What are the main purposes of testing? (4)

A

To identify errors
To ensure that software is fit for purpose
To ensure that the code is efficient
To ensure that the code is maintable.

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

What is meant by the term Comprehensive Testing?

A

Comprehensive testing describes the process of testing normal, exceptional and extreme data.

Normal - Data within the range of which the program is expected to work with.
Extreme – Data at the boundaries of what is acceptable.
Exceptional – Unexpected data.

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

What is a Dry Run?

A

The programmer takes on the role of the computer, and manually work through the code following the value of a variable to check that it was used and updated as expected. A dry run is used to identify logic errors in code.

There is no software involved in this process.

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

What is a Trace Table?

A

Trace tables are used to allow programmers to trace the value of variables as each line of code is executed.

The values of the variables are displayed in a table and assist the programmer in identifying any potential errors.

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

What’s a breakpoint?

A

A breakpoint is a point in the program where the code will stop executing.

The contents of the variables in the program can then be examined.

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

What’s a watchpoint?

A

A watchpoint is a conditional breakpoint that halts program execution when a conditions is met, such as a variable being less than a certain value.

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

When is a software deemed Fit for Purpose?

A

Software is deemed fit for purpose it it meets the requirements determined during the analysis phase.

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

What makes the software Efficient? (3)

A
  • Does the program make use of repetition (loops) where possible to reduce the amount of code?
  • Does the program make use of arrays instead of declaring many individual variables?
  • Does the program make use of selection statements that will only make comparisons until a solution is reached?
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is meant by usability of software?

A

Usability is a term to describe how intuitive the software is from a user’s point of view. In other words, can the user perform tasks quickly and with few errors?

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

What is meant by maintainability and how do you achieve it?

A

Software should be easily understood by another programmer and should easy to modify/adapt. This achieved by ensuring:

  • Readability – meaningful identifiers, internal commentary, indentation, white space.
  • Modularity – by using sub-programs effectively so that changes to one subprogram only affect that sub-program.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is meant by software robustness?

A

Software is robust if it doesn’t not crash easily with unexpected input.