Extreme Programming

Computer Science: OCR A Level, topic 2.3.6

Extreme Programming

Extreme programming is an agile methodology that is good for rapidly changing user requirements.

Extreme planning

Extreme planning

  • Extreme planning is the first stage, where the client is in constant communication with the project team to establish the requirements.
  • The project then goes into the 'planning game' to plan out releases and what will be in each iteration.
Extreme designing

Extreme designing

  • The project team then moves into extreme designing where they will build simple designs that implement the needed functionality.
  • During this they will develop what is known as the 'project metaphor'.
  • This is a way to describe the project and build it up.
Extreme programming

Extreme programming

  • The project team then move into extreme programming where they will develop the agreed items from the planning game.
  • During this time the programmers work in pairs with one coding and the other critiquing the code.
Extreme testing

Extreme testing

  • Once development is completed then it moves to extreme testing where the code is tested in units.
  • Integration testing is also completed to ensure it works together and the code is reviewed for efficiency and quality.
Acceptance testing

Acceptance testing

  • Acceptance testing is where the client feeds back on the product in its current stage.
  • This is then taken into the next iteration of extreme planning for the next release, and the progress all repeats until the project is completed.

Test yourself on Extreme Programming

  • Extreme Programming

  • Which type of testing occurs during the extreme testing phase?

  • How many programmers work together on each team?

Practise this topic for free