Errors and Debugging Flashcards

1
Q

Define

Lexical Analysis

A

The program looks at each word, and matches each to a token in the lexicon. The output of this is called the lexeme

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

Define

Syntactical Analysis

A

The lexeme is checked, ensuring that it is in the right order. This checks that the code can be run, flagging issues like missing commas.

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

Define

Lexical error

A

Occurs when a sequence of characters does not match the pattern of any token, and typically happens during the execution of a program.

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

Define

Syntax error

A

Incorrect use of the language itself, like missing a comma or a quotation mark, or misspelling a word.

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

Define

Logic error

A

The code runs, but doesn’t do so as intended - it isn’t doing what you wanted it to do

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

Define

Runtime error

A

An error that occurs while the program is running after being successfully compiled.

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

Define

Module Testing

A

Testing a module independantly, isolated from the rest of the system.

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

Define

Program Testing

A

Making sure the ‘pieces’ of the software work together, the interfaces between them work, and the program can interact with other systems, like hardware and operating systems.

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

Define

System Testing

A

Testing the whole system.

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

Define

Prototype

A

An enactable model or mock-up of a software system that enables evaluation of features and functions in an operational scenario.

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

Define

Reverse engineering

A

The process of examining a system to find out how it works and create something similar or work on it further.

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

Define

Stubs

A

A small routine that takes the place of a yet to be written subroutine or is substituted for an existing subroutine when attempting to locate the cause of an error. Stubs allow for the flow of execution to be checked before lower level subroutines are coded. They can also be used to temporarily replace subroutines when attempting to locate the source of an error.

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

Define

Flags

A

A Boolean variable used to check if a section of code has been executed. The flag is initialized to false and the set to true if the section of code is executed. By examining the value of the flag, the programmer can determine the execution path through the code. Knowing the execution path is of great assistance when diagnosing the source of bugs. Often a flag will be used to confirm that a particular condition has been met.

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

Define

Bug

A

An error in a program that causes it to malfunction.

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

Define

Debugging Output Statements

A

Processes that can be strategically placed within the code to indicate execution has passed through that point. They can also be used to display the contents of variables at particular points in the code. These statements are removed once source code has been tested and the bugs removed.

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

Define

Forward Compatibility

A

The ability of an older system to operate with a newer system

17
Q

Define

Backward Compatibility

A

The ability of a newer system to operate with an older system