Extreme Programming Installed
Ron Jeffries, Ann Anderson, Chet Hendrickson
Addison-Wesley Professional, 2000
Summary:
Extreme Programming is a method that involves high team and customer communication. The customer's requirements are broken up into user stories, and the stories are used as a basis for what the programmers need to accomidate. Iterations and reviews are a huge part of XP. The programmer should always do what the customer wants, and the requirements could change at any time. To maintain good communication, the "Circle of Life" model can be followed. This model will facilitate learning and keep information current. If the customer and programmer are able to work together, the project will be steered to success. In fact, it is better if a customer can be on-site for the duration of the project. This will prevent guesswork in coding. If the customer can't be there, then send programmers to visit the customer as often as possible.
Discussion:
Being an old hand at Extreme Programming (specifically Agile), I have to say that this description is in line with my personal experiences. Communication with the customer is key, and serves to minimize misinterpreted instructions. In addition, programmers receive knowledge of any changed requirements as quickly as possible. In short, I would say that Extreme Programming is the most dynamic form of programming that I have experienced.
![]() |
| Extreme Programming diagram |


