Photo by Markus Spiske: https://www.pexels.com/photo/codes-on-tilt-shift-lens-2004161/


Extreme Programming (XP) Process

Planning

  • Begins with a set of stories (scenarios).
  • Each story written by the customer is assigned a value depending on its priority.
  • The members of the XP team assess each story and assigned a cost measured in development weeks.
  • If a story has more that three weeks to develop the customer is asked to split it.
  • New stories can add any time.
  • Customers and XP team work together to decide how to group stories for next increment.
  • AS development work proceeds, the customers can add stories, split stories and eliminate them.
  • The XP team then reconsiders all remaining releases and modify its plan accordingly.

 

Design

  • A simple design is preferred
  • Design only consider the given stories
  • Extra functionality discouraged
  •  Identify the object oriented classes that are relevant to the current system.
  • The output of the design process is a set of CRC ( Class Responsibility Collaborator) cards

 

Coding

  • XP recommends developing a series of unit tests for each of the story
  • Once the code is complete, units should be unit tested.
  • Pair programming – two people work together at one computer.

 

Testing

  • The unit tests that has been created in the coding stage should be implemented using a framework that can be implemented.
  • This enables regression testing
  • Integration and validation can occur on a daily basis
  • This provides the XP team with a continual indication of the progress and also raise flags early if things are going wrong.