Extreme Programming (XP)

An Agile software development methodology that emphasizes customer involvement, transparency, testing, and frequent delivery of working software.

The Extreme Programming canon includes a Customer Bill of Rights and a Developer Bill of Rights. Its core values are communication, simplicity, feedback, courage, and respect. XP is a developer-centric methodology. Unlike scrum, it prescribes specific coding practices like pair programming in which two developers work side by side at a single machine, automated unit testing, and frequent integration. Another key practice in XP is refactoring, or the continual internally-visible improvement of design and code.

The basic advantage of XP is that the whole process is visible and accountable. The developers make concrete commitments about what they will accomplish, show concrete progress in the form of deployable software, and when a milestone is reached they will describe exactly what they did and how and why that differed from the plan. This allows business-oriented people to make their own business commitments with confidence, to take advantage of opportunities as they arise, and to eliminate dead-ends quickly and cheaply. — Kent Beck

Background of the term

In 1996, Chrysler’s visionary CIO, Sue Unger, gave Kent Beck free rein to form a team to tackle the Chrysler Comprehensive Compensation payroll project. During this project Beck along with Ron Jeffries, Ward Cunningham, and Martin Fowler promoted and further developed the practices of what Beck called extreme programming.

Further Learning:

Agile Alliance | Glossary | Extreme Programming (XP)

Extreme programming

Extreme Programming for Beginners made Easy – Roles & Practices

Extreme Programming Explained: Embrace Change, 2nd edition. Kent Beck & Cynthia Andres.

This entry was posted in e. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *