1.2.3 - Software Development Flashcards

(29 cards)

1
Q

Describe what a software development methodology is

A

A process or series of processes used in software development.

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

Describe the waterfall lifecycle methodology

A
  • Series of stages - Followed in order - Can go back up the order - Then needs to follow back down in order.
  • Progress to the next step is not made until the previous step is completed.
  • Uses formal documented stages
  • Focuses on the end user at the start
  • Each stage in the life cycle feeds information to the next stage
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

In what scenario would it be beneficial to use the waterfall methodology?

A
  • When the requirements are clear and unlikely to change
  • Very reliant on getting the definition of requirements correct at the start; changes are harder to add in at a later stage. However, this forces the definition to be well-understood.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Describe extreme programming (XP)

A
  • An iterative process designed to allow development to respond to changing user requirements.
  • Involves paired programming
  • The end user integral throughout XP
  • The focus is on good-quality code
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Describe rapid application development (RAD)

A
  • Use of prototypes
  • No formal analysis, or design stages so requirements do not need to be stated at the start (more flexible)
  • Reduced development time due to each subtask being given strict time limits.
  • The prototype is tested and feedback is obtained from users
  • The results of feedback and testing are used to inform the next prototype.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Describe the spiral model

A
  • Mostly used for large-scale projects, where risk is a factor.
  • Has more focus on risk management; projects may be modified or even dropped if the risk is too great. Prioritises riskiest elements first.
  • Has four quadrants (determine objectives, identify and manage risk, develop and test, and plan the next iteration).
  • Relies on frequent client feedback to inform future development of prototypes.
  • Produces functional prototypes.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Describe the main differences between agile and waterfall

A
  • Waterfall needs fixed requirements as it is hard to change - Agile does not
  • Waterfall used formal stages that are followed in order - Agile does not
  • Waterfall does not involve the user in the development stages - Agile does.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is the pseudocode for a WHILE loop?

A

while condition
code to execute
endwhile

———–EXAMPLE————–

while answer!=”computer”
answer=input(“What is the password?”)
endwhile

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

What is the pseudocode for a DO WHILE/UNTIL loop?

A

do
code to execute
until condition

———–EXAMPLE————–

do
answer=input(“What is the password?”)
until answer==”computer”

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

What is the pseudocode for a FOR loop?

A

for i=x to y
code to execute
next i

———–EXAMPLE————–

for i=0 to 7
print(“Hello”)
next i

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

State the 7 arithmetic operators

A

Add (+)
Subtract (-)
Multiply (*)
Divide (/)
MOD (Remainder)
DIV (Whole part of division)
^ (Power)

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

State the 6 comparison operators

A

Equal to (==)
Not equal to (!=)
Less than (<)
Less than or equal to (<=)
Greater than (>)
Greater than or equal to (>=)

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

What is the pseudocode to output?

A

print(“hello world”)

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

What is the pseudocode to take an input?

A

VariableName=input(“Please enter your name”)

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

What is the pseudocode for a substring?

A

stringname.subString(startingPosition, numberOfCharactersToReturn)

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

What is the pseudocode for an IF statement?

A

if condition then
code to execute
elseif condition then
code to execute
else
code to execute
endif

———–EXAMPLE————–

if entry==”a” then
print(“You selected A”)
elseif entry==”b” then
print(“You selected B”)
else
print(“Unrecognised selection”)
endif

17
Q

What is the pseudocode for a CASE/SWITCH statement?

A

switch entry:
case “A”: print(“You selected A”)
case “B”: print(“You selected B”)
default: print(“Unrecognised selection”)
endswitch

18
Q

What is the pseudocode for a function?

A

function triple(number)
return number*3
endfunction

19
Q

What is the pseudocode for a procedure?

A

procedure greeting(name)
print(“hello”+name)
endprocedure

20
Q

What is the pseudocode for reading the contents of a file?

A

myFile = openRead(“sample.txt”)

while NOT myFile.endOfFile()
print(myFile.readLine())
endwhile

myFile.close()

21
Q

What is the pseudocode for writing to a file?

A

myFile = openWrite(“sample.txt”)

myFile.writeLine(“Hello World”)

myFile.close()

22
Q

What is the pseudocode to declare, populate, and print a two-item 1D array?

A

array names[2]

names[0]=”Ahmad”
names[1]=”Ben”

print(names[1])

23
Q

What is the pseudocode to declare a 2D array and access the first element?

A

Array board[8,8]

board[0,0]=”rook”

24
Q

What is the pseudocode to declare a 3D array and access the first element?

A

Array board[8,8,8]

board[0,0,0]=”rook”

25
What is the pseudocode to convert a string to and from upper case?
stringname.upper stringname.lower
26
How do you convert a character to its **ASCII** value?
ASC('A') Returns 65 as the ASCII value
27
How do you convert a character from its **ASCII** value?
CHR(65) Returns ‘A’
28
What is the pseudocode to get a set number of characters from the left or right hand side of a string?
stringname.left(numberOfCharacters) stringname.right(numberOfCharacters)
29
What is **casting**? Give some examples
**Converting from one data type to another** * str(3) - Converts to string * int("32") COnverts to an integer