1.2.3 - Software Development Flashcards
(29 cards)
Describe what a software development methodology is
A process or series of processes used in software development.
Describe the waterfall lifecycle methodology
- 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
In what scenario would it be beneficial to use the waterfall methodology?
- 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.
Describe extreme programming (XP)
- 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
Describe rapid application development (RAD)
- 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.
Describe the spiral model
- 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.
Describe the main differences between agile and waterfall
- 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.
What is the pseudocode for a WHILE loop?
while condition
code to execute
endwhile
———–EXAMPLE————–
while answer!=”computer”
answer=input(“What is the password?”)
endwhile
What is the pseudocode for a DO WHILE/UNTIL loop?
do
code to execute
until condition
———–EXAMPLE————–
do
answer=input(“What is the password?”)
until answer==”computer”
What is the pseudocode for a FOR loop?
for i=x to y
code to execute
next i
———–EXAMPLE————–
for i=0 to 7
print(“Hello”)
next i
State the 7 arithmetic operators
Add (+)
Subtract (-)
Multiply (*)
Divide (/)
MOD (Remainder)
DIV (Whole part of division)
^ (Power)
State the 6 comparison operators
Equal to (==)
Not equal to (!=)
Less than (<)
Less than or equal to (<=)
Greater than (>)
Greater than or equal to (>=)
What is the pseudocode to output?
print(“hello world”)
What is the pseudocode to take an input?
VariableName=input(“Please enter your name”)
What is the pseudocode for a substring?
stringname.subString(startingPosition, numberOfCharactersToReturn)
What is the pseudocode for an IF statement?
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
What is the pseudocode for a CASE/SWITCH statement?
switch entry:
case “A”: print(“You selected A”)
case “B”: print(“You selected B”)
default: print(“Unrecognised selection”)
endswitch
What is the pseudocode for a function?
function triple(number)
return number*3
endfunction
What is the pseudocode for a procedure?
procedure greeting(name)
print(“hello”+name)
endprocedure
What is the pseudocode for reading the contents of a file?
myFile = openRead(“sample.txt”)
while NOT myFile.endOfFile()
print(myFile.readLine())
endwhile
myFile.close()
What is the pseudocode for writing to a file?
myFile = openWrite(“sample.txt”)
myFile.writeLine(“Hello World”)
myFile.close()
What is the pseudocode to declare, populate, and print a two-item 1D array?
array names[2]
names[0]=”Ahmad”
names[1]=”Ben”
print(names[1])
What is the pseudocode to declare a 2D array and access the first element?
Array board[8,8]
board[0,0]=”rook”
What is the pseudocode to declare a 3D array and access the first element?
Array board[8,8,8]
board[0,0,0]=”rook”