Subscribe by Email

Tuesday, May 29, 2012

When should Extreme Programming be used?

Extreme programming or XP as it is commonly called as has been known to be a very effective and reliable agile software development methodology having its foundation laid up on the principles of agile development. 
The first ever project that made use of extreme programming was done in the year of 1996 in the month of March. The project was quite successful and since then many companies of different sizes began using the extreme programming software development methodology for developing their software products all over the world. 

The extreme programming works out successfully every time since it stresses the satisfaction of the customers. The extreme programming does not makes promises that it will deliver the software with all the possible ways you expect it rather it delivers the software product with all the features that you require the most. 
The developers are empowered in a way to confidently respond to the ever changing needs of the customers in whichever stage of the development cycle required. 

How Extreme Programming improves the quality of software?

5 ways have been defined in which the extreme programming helps in improving the quality of the software and its productivity:
1.     Communication
2.     Simplicity
3.     Feedback
4.     Courage and
5.     Respect

When the Extreme Programming should be used?

- A software development process does not suit for all the types of the software projects.
- Extreme programming must be employed for the complex projects which require a clean and simple design void of any bombastic jargon. 
- The simple rules of the extreme programming make it easy to be implemented in most of the software projects.
- Extreme programming elements individually do not make any sense but do make sense when put together. 
- These elements and rule may seem to be very awkward at first but they are based up on sound principles and are guided by sound rules. 
- The extreme programming makes the whole development process very collaborative and works well with the projects in which the active participation of the customer is required. 
- In extreme programming once the product team work is achieved, its rules can be modified to fit the requirements of the company. 
- The activities which show less productivity are trimmed to reduce the budget of the development process. 
- The need for extreme programming grew out of the demands for short productive cycles which could satisfy the rapidly changing requirements of the industry. 
- The extreme programming has always attracted controversy whenever an environment different from its original one has been used. 
- The extreme programming demands for high discipline and hence some of the practices involved in the extreme programming are thought to be very rigid to be reduced or left unfinished. 
- But the extreme programming works according to a very relaxed schedule which can be designed by the developers. 
- This prevents frustration and creation of stubs to pass the end of day testing. 
- Thought the schedule is very lenient, a periodic integration is always required. 
- It is needed to detect the work being done in non compatible efforts before too much of the efforts are wasted in the wrong directions.

However, apart from all these positive there are a few negative aspects of the extreme programming which should always be kept in mind before you implement it for the development of your software project. 
- It lacks structure and documentation and requires senior level developers. 
- It calls for frequent meetings with a great exposure to the customers. 
- You can even land in much difficult contractual negotiations. 

No comments:

Facebook activity