software design and developement (SDD) Flashcards

1
Q

what is iterative methodology

A

The iterative development methodology is often referred to as the ‘Waterfall model’. Software is developed in the following sequence of iterative stages:

Analysis
Design
Implementation
Testing
Documentation
Evaluation

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

What is the agile methodology?

A

Agile development teams build prototypes or software components in small increments known as sprints. Agile development focuses on delivering software as quickly as possible.

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

what does the analysis stage define

A

the scope and requirements of the software forming the software specification

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

what is the purpose in analysis

A

general overview of what the software does

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

what is the scope in analysis

A

what will be delivered (code, design, testing, evaluation) including the time limits

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

what are the boundaries in analysis

A

what the system does and doesn’t do, including assumptions

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

what are functional requirements

A

what the system must do in terms of inputs, processes and outputs

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

what is a top-level design in pseudocode

A

it shows the main steps of the design without detailed subprogram logic

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

why are data flow and refinements important in pseudocode

A

data flow shows what information flows in/out of sub-programs, and refinements break down complex steps

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

what are parallel 1D arrays

A

two or more 1D arrays together where each array holds related data of the same type

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

what is a record

A

stores multiple related fields of different data types

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

what is an array of records

A

a list of records stored in 1D array

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

what is the difference between local and global variables

A

local: declared within and only accessible inside a sub-program
global: declared in the main program and accessible throughout

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

what are the two types of parameter passing

A

formal parameters: declared at the sub-program definition
actual parameters: passed into the sub-program from the main program

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

what is the difference between a function and a procedure

A

function returns a value, procedures don’t return a value

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

what is a sub-program

A

a block of code within a main program designed to carry out a specific task

17
Q

what is a pre-defined function

A

a built-in function provided by a programming language that performs specific tasks without requiring user defintion

18
Q

what is the purpose of parameter passing

A

to send data from the main program to sub-programs

19
Q

what is a comprehensive test plan

A

a plan that tests with normal, extreme and exceptional data to check how software handles various inputs

20
Q

what are the 3 types of errors

A

logic, syntax and execution(runtime) errors

21
Q

what is a logic error

A

when a program runs but produces incorrect results due to a mistake in the algorithm or logic

22
Q

what is a syntax error

A

when the code doesn’t follow the rules of the language preventing it from compiling

23
Q

what is an execution error

A

an error that occurs while the program is running often due to unexpected inputs or outputs

24
Q

what is dry run debugging

A

manually stepping through code on paper to check logic

25
what is a trace table
a table that tracks variable values step-by-step during program execution
26
what is a breakpoint
a tool that pauses the program at a specific line for inspection
27
what is a watchpoint
pauses the program when a specific variable changes
28
what does "fitness for purpose" mean in evaluation
the software does everything the specification requires
29
what are efficient use of coding constructs
using things like loops, selection and parameter passing effectively to make code faster and more manageable
30
what factors affect usability
interface design, clear user prompts, screen layout, and help screens
31
what makes code maintainable
good variable names, comments, spacing and modularity
32
what is robustness in software
how well the software handles unexpected problems like invalid input or extreme data
34
find min pseudo code (parallel arrays and record structure)
Lowest = array[0] FOR counter FROM 1 to length(array) IF array[counter] < lowest SET Lowest = array [counter] END IF END FOR lowest = pupils[0].mark FOR counter FROM 1 to length (pupils) IF pupils|counter].mark < lowest Lowest = pupils [counter].mark ENDIF END FOR
35
find max pseudo code (parallel arrays + record structure
highest = array[0] FOR counter FROM 1 to length(array) IF array[counter] > highest highest = array [counter] END IF END FOR highest = array[0] FOR counter FROM 1 to length(pupils) IF pupils[counter].mark > highest highest = pupils [counter].mark END IF END FOR
36
linear search pseudocode (parallel arrays + record structure)
choice = input from USER found = FALSE counter = 0 WHILE counter
37
counting occurrences (parallel arrays + record structure)
SearchItem = Input from USER Total = 0 FOR counter = 0 TO Length(array) IF array(counter) = SearchItem Total = total +1 END IF END FOR SearchName = Input from user Total = 0 FOR counter = 0 TO Length(array).name IF array(counter).name = SearchName total = total +1 END IF END FOR