Software Design And Development Flashcards
(34 cards)
What is the agile design methodology
Each step can be revisited, copes well with unpredictability and rapid change
Client gives constant feedback throughout
Face to face communication, lots of collaboration
Small cycles of coding, testing and adapting, reduces documentation
Difficult to predict whats happening next, adaptive
Testing carried out while programming
What are 2 benefits of agile methodology over iterative methodology
- More communication with client, live and constant feedback
- Each step can be revisited throughout the process, adapts well to change
Give 3 roles of the client in an agile methodology?
- Details requirements
- Outlines scope and boundaries
- Evaluates prototype/suggest changes
- Provides feedback/liaising with development team throughout process
What is the iterative design methodology?
Linear, client involved at analysis stage and end of development.
Teams work independently
Detailed project specs and legal contract
Predictable, difficulty changing direction
Testing done after implementation
What are 2 advantages of the iterative design methodology over adaptive design methodology?
- It’s easy to make and meet deadlines
- Everything is organised and straightforward
What is purpose in the analysis stage?
General description of the purpose of the software
What are functional requirements in the analysis stage?
Inputs, processes and outputs
What is scope in the analysis stage?
Deliverables that are handed over at the end of the project (e.g. completed program, test results, evaluation report)
What are boundaries in the analysis stage?
Limits of what the program can and can’t do, clarifies assumptions
List the 3 types of errors?
Syntax error
Logic error
Execution error
What are syntax errors?
Errors where the program wont run, usually caused by misspellings or missing symbols, lines of code etc
What are logic errors?
Errors where the program runs fine but outputs something unexpected, usually caused by using and instead of or (or vice versa), using < instead of > (or vice versa) or any other wrong symbol or logical operator
What are execution errors?
Errors where the program crashes unexpectedly
How to create record structure?
Record recordname is
(name as string, age as integer, height as real/single)
End record
How to find maximum? (construct)
Set max to array(0)
For counter 1 to (length of array - 1)
If array(counter) > max then
Set max to array(counter)
End if
Next loop
How to find minimum? (construct)
Set min to array(0)
For counter 1 to (length of array - 1)
If array(counter) < min then
Set min to array(counter)
End if
Next loop
How to do count occurence? (construct)
Receive target from keyboard
Set numFound to 0
For counter 1 to (length of array - 1)
If array(counter) = target then
Set numFound to numFound + 1
End if
Next loop
How to do linear search? (construct)
Receive target from keyboard
Set found to false
Set position to 0
For counter 1 to (length of array - 1)
If array(counter) = target then
Set found to true
Set position to counter
End if
Next loop
If found = true
Display target and position
Else
Display target not found
End if
How to write to file?
Create “filename.txt”
Loop through array
Send array(loop) to “filename.txt”
Next loop
Close “filename.txt”
How to read from file?
Open “filename.txt”
Loop through contents of file
Add to contents(loop)
Next loop
Close “filename.txt”
What are the predefined functions ASC and CHR?
ASC gives the ASCII code for a character
ASCIIvalue=ASC(Character)
CHR gives the character of an ASCII value
Character=CHR(ASCIIvalue)
What is the predefined function INT?
Converts floating point number to integer
Integer=INT(Decimal)
What is the predefined function MOD?
It returns the remained of a division
Remainder=7 MOD 2
Would return 1
What is the predefined function MID?
LEFT, RIGHT and MID are string functions that take part of the string either from the left, right or any point respectively.