Software design and methodologies Flashcards

(51 cards)

1
Q

Define the analysis stage of software design???

A

The analysis stage focuses on understanding the purpose of the software and defining functional requirements.

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

What are the function requirements of software and development???

A

Define what the software must do. This can include specific features, input/output requirements, and user interactions.

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

What does purpose mean in the analysis stage of software design???

A

Determine what the software is intended to achieve. Consider the problem it solves or the need it addresses

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

Define the design stage of software design and methodologies???

A

Design involves creating a blueprint for the software, including the user interface, structure diagrams, and logic flow.

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

What are the main factors of making a user friendly UI???

A

Create user interface (UI) designs, focusing on layout, usability, and user experience

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

What are the purpose of structure diagrams???

A

Using diagrams to visualize the structure of the software. This can include class diagrams, entity-relationship diagrams, and data flow diagrams.

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

What are the purpose of flowcharts???

A

flowcharts help represent the logic and workflow of the software. This helps in understanding the software’s behavior.

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

What are the purpose of flowcharts???

A

pseudocode helps to describe the software’s logic in a human-readable format. Pseudocode helps bridge the gap between design and implementation.

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

Determine the data types and structures needed for the software, such as integers, strings, arrays, and objects.

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

What are some common data types in software???

A

Common data types include integers, floats, booleans, strings, and characters. These represent basic values in programming

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

What are the roles of data structure???

A

Data structures organize and store data.

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

What are some examples of data structures???

A

Common structures include arrays, lists, dictionaries, and objects.

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

What does testing demonstrate?

A

testing can only demonstrate the presence of errors - it cannot demonstrate their absence;

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

What should a test plan include?

A

is a set of test data which should systematically and comprehensively test the software to ensure that it meets the original specification;
will include normal, extreme and exceptional test data.

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

what’s a syntax error?

A

a syntax error is where the “grammatical” rules of the language have been broken. It is normally detected by a compiler or interpreter;

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

what’s a logic error?

A

a logic error is one where the code is syntactically correct but does not do what the programmer intended;

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

what’s an execution error?

A

an execution (or run-time) error is one which causes the program to stop (crash) when it is run;

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

what’s a dry run?

A

a dry run is a manual run through pseudocode or the source code of the program

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

what’s a break point?

A

a breakpoint is a set point in a program where it will stop execution so that the values of variables can be examined;

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

what’s a watch point?

A

a watchpoint is when a program is set to halt when a variable has reached a specific value;

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

why should tests be documented?

A

tests and their results should be fully documented so that if subsequent problems are discovered, they can be checked and duplication of work avoided;

22
Q

what should evaluating software be able to do?

A

evaluating software on fitness for purpose requires checking against the software specification to ensure all agreed elements have been implemented and are functioning correctly;

23
Q

what do efficient programs do to execute with less code?

A

efficient programs make sensible use of coding constructs that run with the least amount of code required to be executed

24
Q

why should loops, and conditional statements be conservatively used?

A

loops and conditional statements require careful consideration as they have a big impact on the amount of processing time required to run a program

25
what is one method to increase readability and maintainability of a program?
program code can be made more maintainable by improving the readability of code and through the use of modular programming (making use of procedures and functions);
26
what should programs be evaluated for?
programs should be evaluated for robustness to ensure they operate without crashing
27
what is the system of a program?
programs usually work via a system of input - process - output: input is received from the 'real world', the inputs are processed by the program and the results are output to the user;
28
what should the purpose of the program be?
the purpose of a program is a clear and accurate description of what the program is to achieve
29
what is the scope?
the scope is a collection of statements that explain what the program should be able to do or work with, usually written as a list of deliverables;
30
what are the boundaries?
the boundaries are the opposite of scope; what the program should not be able to do or work with;
31
what are functional requirements?
functional requirements are clear statements explaining exactly what every input, process or output in the program does
32
what is a structure diagram?
a structure diagram is a graphical representation of a main program that has been divided into the top-level algorithm by a series of connected steps
33
how can we refine complex ideas?
each top-level step can be refined in a structure diagram through detailing further steps below;
34
how is a data flow represented on a structure diagram?
data flow in a structure diagram can be shown by arrows annotated to each step
35
what is pseudocode?
pseudocode is a hybrid English code language used to detail the top-level algorithm and refine each into further steps
36
how are steps, and refinements measured in pseudocode?
steps in pseudocode are numbered using whole numbers. Refinements are numbered using the main step number, followed by a period then the sub-step number
37
what do final refinements often correspond to?
final refinements often correspond directly with the source code of the resulting program
38
how can data flow be annotated?
data flow can be annotated to the steps in pseudocode by writing IN and OUT key words beside each step
39
what are wireframes?
wireframes are a quick, informal sketch of a possible user interface
40
how are wireframes usually annotated?
wireframes are usually annotated with details such as interactivity, fonts, colors, links.
41
what do all programming languages work with?
all programming languages work with data and that data can be held in a variety of ways depending on what type of data it is
42
what are the two types of data types?
data types can be divided into two sorts: simple and structured
43
give some examples of simple data types?
simple data types are: INTEGER, REAL, CHARACTER and BOOLEAN
44
what do simple data types correspond to?
simple data types correspond to the various ways which computers store information at machine code level: two's complement notation, floating point notation, ASCII code and as a single bit: 0 or 1
45
give two examples of structured data types?
structured data types are ARRAY and STRING (an ARRAY of CHARACTERS) and RECORD
46
how do arrays, strings, and records identify their content?
arrays, strings and records use an index to identify their contents. Indexes start at zero;
47
what does finding minimum or maximum programs do?
finding the maximum or minimum sets an initial value to the first item in the array then compares it to the remaining items.
48
what does counting occurrences do?
counting occurrences sets a total to zero at the beginning and increments it as items are found to match the search item;
49
what is an linear search?
linear search sets a boolean variable to false initially and uses a conditional loop to set it to true when the item is found. The loop terminates when the item is found or the end of the array is reached;
50
what do linear search, finding min/max programs work on?
linear search, counting occurrences and finding the maximum or minimum all operate on arrays;
51
what is input validation?
input validation is used to ensure that software is robust by repeatedly asking the user for input data and rejecting invalid data until the data meets the restrictions imposed by the software;