Software development Flashcards

Software and software development

1
Q

What are the five ways in which software development projects can be implemented?

A
  • The waterfall lifecycle
  • Rapid application development
  • The spiral model
  • Agile methodologies
  • Extreme programs
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Describe the waterfall lifecycle

A

The waterfall cycle consists of a sequence of stages - each one is only started after the previous one is complete

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

What type of project is the waterfall lifecycle suited to

A
  • It works well when there is a clear expected output at each stage
  • Not suited to high-risk projects where a lot of money could be wasted (if a problem is discovered later)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Describe rapid application development

A

The user is shown prototypes and gives feedback that is used to inform how the project is further developed.
- This continues until the user is happy that the prototype has all the required functionality

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

What type of project is rapid application development suited to

A
  • When the requirements aren’t completely clear from the beginning
  • When It is necessary to have frequent contact with the user
  • Works well with smaller projects with small teams
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Describe the spiral model

A

This is designed to try and manage risk. It consists of four stages each forming a quadrant of the spiral that are iterated through

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

What are the four stages of the spiral model

A

1) determine objectives: Figure out the aims of that rotation of the spiral according to the biggest potential risk

2) Identify and resolve risk: The possible risks are identified and alternative options are considered. (if the risks are too high the project may be stopped)

3) Development and testing: This allows the part of the project being worked on to be made and tested.

4) Plan next iteration: Determines what will happen in the next iteration of the spiral

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

What type of project is the spiral model best suited to

A
  • Only manages risks well when practitioners are highly skilled in risk management
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Describe Agile software development

A

This is a group of methods. (produces a minimum viable product - MVP)

These methods are designed to cope with the changing requirements by producing software In an iterative manner that is produced in versions each building on the previous one and each increasing the number of requirements it meets

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

What is the focus of agile software development

A
  • The quality of the software
  • Response to the user’s needs
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Describe Extreme programming

A

This is an example of agile software development. A method that emphasises the coding itself

  • Customer role - A customer representative joins the team to define ‘user stories’ (requirements) and testing criteria
  • Iterative Process - Short iterations (usually 1 week) produce working versions of the system
  • Pair programming - Two programmers work together, alternating roles of coding and reviewing
  • Refactoring - Regularly improving code efficiency without changing functionality
  • Shared responsibility - All programmers are responsible for the entire system
  • Code quality - Emphasis on high-quality, final-ready code
  • Client commitment - A representative must work closely with the team
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Define algorithms

A

Set of instructions that can followed to perform a task

There are many ways they can be described:
- Bulleted lists
- Flowcharts
- Pseudocode

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