1.2.3 Software Development - Methodologies Flashcards

1
Q

Waterfall model

A

Each stage is completed before the next begins
The customer does not see the product until the end
Any change to the user requirements likely requires a restart

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

Waterfall advantages

A

Simple to understand
Straightforward to manage
All self-contained

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

Waterfall disadvantages

A

Little user advantages
Software only produced late on
Too late to change if the user doesn’t like it

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

Waterfall model uses

A

Short projects with clear requirements

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

Spiral model

A

Continually looping through analysis, design, development and evaluation stages
Each loop forms a more refined prototype

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

Spiral advantages

A

Easy to manage
Some software produced early
Lots of user feedback
Can add functionality throughout

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

Spiral disadvantages

A

Time-consuming
Costly
Not suitable for smaller projects

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

Spiral uses

A

For long, fairly high-risk products with changing user requirements

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

Agile model

A

A collection of methodologies to improve the flexibility of software development
Sections are developed in parallel
A prototype is delivered early on, which is developed in an iterative manner

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

Agile advantages

A

Happens quickly
Constant interaction with customers
Adaptable, changes can be implemented whenever

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

Agile disadvantages

A

A lack of emphasis on design/documentation

Needs clarity on desired outcome

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

Agile uses

A

When small, frequent changes are needed or when needs rapidly change

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

Extreme programming

A

An agile model involving a pair of programmers alongside an end-user
High quality code is produced by having it critiqued as it is written

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

Rapid Application Development

A

Uses workshops/focus groups to find user requirements
Partially functioning prototypes are continually built upon based on user feedback until the prototype is the final solution

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

RAD advantages

A

Very fast

A lot of feedback with customers

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

RAD disadvantages

A

May not be perfect due to speed

Changes in requirements are hard to adjust to