Extreme Programming (XP)

XP is a lightweight software development methodology that organizes people to produce high-quality software more efficiently.

What is Extreme Programming (XP)

XP is a lightweight software development methodology that organizes people to produce high-quality software more efficiently. XP performs some analysis, design, development, and testing in each short iteration. Each iteration includes a planning session, an execution session and ends with a demo and retrospective. Each iteration generates a potentially shippable product increment. XP involves sound technical practices such as pair programming and test-driven development.

Top related courses to Extreme Programming (XP)

Related methods and techniques to Extreme Programming (XP)

  • Pair programming

    1. Pair programming

    Pair programming is a core practice of the XP framework that allows team members to learn from each other, increase productivity, and find bugs by writing, directing, and reviewing code in pairs. The driver writes the code while another person, the navigator (aka. observer), reviews each line of code entered. The pairs (two members) change roles (i.e., driver and navigator) frequently. The navigator looks at major problems and errors and makes notes and share ideas on possible next steps or obstacles.

    Pair Programming is best done when team members are in the same location.

  • Core Values of Extreme Programming

    2. Core Values of Extreme Programming

    XP has five core values:

    • Communication
    • Simplicity
    • Feedback
    • Courage
    • Respect
  • XP Roles

    3. XP Roles

    Some of the roles observed in XP include:

    • Programmers
    • Testers
    • XP Coach
    • On-Site Customers
    • XP Tracker
    • Sponsor
  • XP Core Practices

    4. XP Core Practices

    XP has 12 core practices:

    1. Planning Game
    2. Simple Design
    3. Test-Driven Development (TDD)
    4. Coding Standards
    5. Refactoring
    6. Pair Programming
    7. Collective Code Ownership
    8. Continuous Integration
    9. Small Releases
    10. System Metaphor
    11. On-Site Customer
    12. Sustainable Pace