Extreme Programming Explained
This page summarizes the key values, principles, and practices of Extreme Programming (XP) as defined by Kent Beck, in his book “Extreme Programming Explained: Embrace Change”.
Values
The five core values of Extreme Programming are:
- Communication
- Simplicity
- Feedback
- Courage
- Respect
Principles
Kent Beck originally defined 14 principles:
- Humanity
- Economics
- Mutual Benefit
- Self-Similarity
- Improvement
- Diversity
- Reflection
- Flow
- Opportunity
- Redundancy
- Failure
- Quality
- Baby Steps
- Accepted Responsibility
Martin Fowler’s 15 Principles of XP:
- Rapid feedback
- Assume simplicity
- Incremental change
- Embracing change
- Quality work
- Teach Learning
- Small initial investment
- Play to win
- Concrete experiments
- Open, honest communication
- Work with people instincts, not against them
- Accepted responsibility
- Local adaptation
- Travel light
- Honest measurements