Development Methodologies Flashcards

1
Q

Phases to create a solution for a problem in a computer system.

A

Software Development Life Cycle (SDLC)

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

Software development methodology

A

how the phases are sorted

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

Stages of SDLC

A

• Feasibility
• Requirements
• Analysis/Design
• Implementation
• Testing
• Deployment
• Evaluation
• Maintenance

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

Feasibility

A

Is the problem solvable?

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

Deployment

A

Installing into target environment

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

Waterfall Methodology

A

• Cascading effect from one phase to another.
• Each stage is well defined start + end - identifiable deliveries.

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

Rapid Application Development (RAD)

A

• Producing successive prototypes until a final version.
• Iteration
• Following the initial approval of a feasible program, increasingly refined prototypes are made with reduced functionality.
• Design + code + test + evaluate with end user.

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

Spiral methodology

A

• Risk-driven
• Guide + other elements from methodologies can be adopted
• Process model generator

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

Agile Methodology

A

• Group of methodologies
• Focus on the idea that requirements shift during development.
• Iterative way
• Series of iteration called SPRINTS

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

Sprints

A

Short time-boxed periods when a team has focused goals to complete a set amount of work.
- no longer than one to four weeks

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

Extreme Programming

A

•agile framework
•encourages small iterative software releases

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

Benefits to the Waterfall methodology

A

• Simplicity makes it easy to manage
• Everyone on the project is very clear on their responsibilities at each stage
• Clear deliverables
• Easy to see if a project is running to schedule

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

Disadvantages to the Waterfall methodology

A

• Carries a lot of risk
• The user doesn’t get to see the product for the first time until the end
• Misunderstanding requirements can lead to a project that is not easy to fix
• Requirements must be very well understood, so it’s not suitable for complex projects

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

What types of projects is the Waterfall methodology suitable for?

A

• Ease of management can make it suitable for large-scale development projects, assuming they are well-understood and carry little risk

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

Benefits to Rapid Application Development (RAD)

A

• Requirements don’t need to be entirely clear from the start
• Focus groups involving the user can be used to gather requirements without the need for full formal requirements document upfront
• Continuous feedback from the client means the solution is likely to have excellent usability

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

Disadvantages to RAD

A

• Focus on usability rather than how the product works - not suited for projects where code efficiency is very important
• Regular contact with client must be maintained at all times
• Scales poorly for large projects with big teams

17
Q

What types of projects is the RAD methodology suitable for?

A

Initial requirements are not fully understood, iterative nature prevents development from becoming side-tracked

18
Q

Spiral benefits

A

• Risk management is at the heart of this model
• Excellent for projects that contain a high level of risk

19
Q

Disadvantages to RAD

A

• Complex nature of risk analysis increases costs - risk management is a highly specialised skill
• If risk analysis is done badly, the project suffers

20
Q

What type of projects is the spiral methodology suited to?

A

Large-scale problems and those that involve a high degree of risk, especially where the user doesn’t fully understand their requirements upfront

21
Q

benefits to agile and extreme programming

A

• emphasises programming - quality of end code very high
• core principles and processes promote respect and collaboration, very productive team

22
Q

disadvantages to agile and extreme programming

A

• Requires a team of programmers working in close collaboration - unlikely to work if team widely distributed geographically
• Client must be able to commit to gave a full-time representative working with the development team
• Paired programming costly

23
Q

What type of projects are suited for agile and extreme programming?

A

Projects that emphasise on the quality of finished code