The extreme programming or eXtreme Programming (XP) is an approach to software engineering formulated by Kent Beck , author of the first book on the subject, Extreme Programming Explained: Embrace Change (1999). It is the most prominent of the agile processes in software development. Like them, Extreme Programming differs from traditional methodologies primarily in that puts more emphasis on adaptability than on predictability. XP advocates believe that the changes in requirements on the fly is a natural, inevitable and even desirable development projects(Chrysler, 2006). Believe that being able to adapt to changing requirements at any point in the life of the project is a better and more realistic approach than trying to define all requirements at the beginning of the project and invest in efforts after controlling changes to requirements.
It can be considered extreme programming and the adoption of improved methodologies for development according to what is intended to carry out the project, and apply it dynamically during the software life cycle. Of all the agile methodologies, this is the one that has received more attention. This is due in part to the remarkable ability of the leaders of XP, Kent Beck in particular, to attract attention(DeMarco, 2003). Also due to the ability of Kent Beck to attract people to this approach, and take a leading role in it. In some ways, however, the popularity of XP has become a problem, has attracted attention away from other methodologies and valuable ideas.
Analysis
The roots of XP lay in the Smalltalk community, and in particular the close collaboration of Kent Beck and Ward Cunningham in the late 1980s. They refined their practices in the various projects in the early 90s, spreading their ideas of software development-oriented and adaptable people.
The crucial step from informal practice to a methodology occurred in the spring of 1996. Kent was asked to review the progress of C3 payroll project for Chrysler. The project was being carried in Smalltalk by a contracting company, and was in trouble. Due to the low quality of the code base, Kent recommended throwing the code base in its entirety and start over. The project then resumed under the direction and subsequently became the early flagship and training ground for the XP.
The first phase of C3 was very successful and started in early 1997. The project continued since then, and then ran into difficulties, which resulted in the cancellation of development in 1999. (Which proves, if nothing else, that XP has no guarantee of success.) (Beck et al, 2001)
The XP begins with four values: Communication, Feedback, Simplicity, and Courage. Building on it a dozen practices that XP projects should follow. Many of these practices are ancient techniques, tried and tested, but often forgotten by many, including most planned processes. In addition to resurrecting these techniques, XP weaves them into a synergistic whole where each one reinforcing the others.
One of the most striking and attractive to me initially, is its strong emphasis on ...