In this blog I will describe Extreme Programming as it is another method of software development that falls under the Agile umbrella.
Extreme Programming(XP) is a method of software development that has been tried and tested over the years and has proven to be be very successful in a wide range of firms on both a small and large scale. Like other Agile methods of software development such as SCRUM, XP uses teamwork and communication as its main tools in order to complete projects.
One of the main reasons why XP has proven to be such a success over the years is because it places huge emphasis on customer satisfaction. This is achieved through regular communication with the customer and aims to ensure that the customer is happy with the end product. Below is a diagram which shows the important features of XP.
- Team Empowerment: This is one of the key factors in XP. XP will only be successful if their is constant, clear co-operation between all team members and the end user. Daily meetings and updates on progress made is usually how this communication is achieved.
- Honest Plans: Extreme programmers are known for keeping their design plans very simple which has played a major role in the success of XP. This simplistic approach makes life easier for both the programmer and the end user as a complicated system would be much harder to both develop and use and more time and money would be required to produce it which would not suit all customers.
- Working Software: The working software part of the XP process is achieved through the collaboration of all the team members. The software is tested to ensure that it is working properly and meets the end users requirements.
- Iterative Planning: This is also known as sprint planning. It is the second phase of Agile planning and is preceeded by Release Planning which simply means that a set of stories are selected and released because they have features that will be useful to the end user. Iterative Planning involves a subset of the original plan being run. Only one iteration exists at any one time and when it “burns down” or ends, another iteration replaces it.
- Project Heartbeat: If a project doesnt have a heartbeat, it should be declared dead. A heartbeat is usually a fixed length iteration that is as short as it can be. A heartbeat that is responsive will generate a new iteration based on feedback. The shorter the iteration is, the more constant feedback you get, the more you can take the project in the direction that you want to.
In conclusion, XP is a tried and tested method of developing systems and has been used by a wide range of firms across a variety of industries. It is simple in both its concepts and its executions which makes it popular and accessible to a large number of people and this is probably why it has been so successful.