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:

  1. Communication
  2. Simplicity
  3. Feedback
  4. Courage
  5. Respect

Principles

Kent Beck originally defined 14 principles:

  1. Humanity
  2. Economics
  3. Mutual Benefit
  4. Self-Similarity
  5. Improvement
  6. Diversity
  7. Reflection
  8. Flow
  9. Opportunity
  10. Redundancy
  11. Failure
  12. Quality
  13. Baby Steps
  14. Accepted Responsibility

Martin Fowler’s 15 Principles of XP:

  1. Rapid feedback
  2. Assume simplicity
  3. Incremental change
  4. Embracing change
  5. Quality work
  6. Teach Learning
  7. Small initial investment
  8. Play to win
  9. Concrete experiments
  10. Open, honest communication
  11. Work with people instincts, not against them
  12. Accepted responsibility
  13. Local adaptation
  14. Travel light
  15. Honest measurements

Updated: