Extreme
Programming
(XP)
GROUP: 03 DATE:2025/09/17
CONTENTS
01 Introduction & History
02 Core Values & Best Practices
03 Processes & Case Studys
04 Evaluate & Select the right fit
05 Comparison & Quick wrap-up
01
Introduction &
XP Definition
Extreme Programming
(XP)
Boost Development Speed
XP is an Agile methodology introduced by Kent Beck, highly focused on code
quality and ability to quickly to changes . It pushes best practices to the ‘extreme‘
level to maximize effectiveness.
In a world of constantly changing requirements and fast delivery pressure, XP is a
practical solution, easy to start with, and delivers visible value.
Historical context leading to XP
In the late 1990s, software projects often run late, went over budget, and failed to meet real needs.
→ 1997 - 1999: Experiment → 1999:
1996: Origins
Kent Beck and his team at Chrysler Annoucement
The Chrysler C3 project faced a The XP methodology was officially
experimented with a new approach:
crisis: tight deadlines and born, paving the way for agile
shorter cycles, more communication,
constantly changing programming.
and continuous testing.
requirements
02
Core Values &
Best Practices
Five Core Values
Communication Simplicity Feedback Courage Respect
Effective direct Keep everything as Constant feebacks from Courage to change, face Respect each other.
communication. simple as possible. co-workers and problems.
customers.
12 Main Practices
Fine-scale Feedback Continuous Process
Continuous Integration: Automation and
Test-Driven Development (TDD): Write
runs tests to catch bugs early
tests before coding.
Pair Programming: 2 programmers work Refactoring: Frequently update the code.
together at a single workstation on.
Planning Game: Plan flexibly with clients. Small Releases: Release small, regular
versions.
12 Main Practices
Shared Understanding Programmer Welfare
Simple Design: Keep design as simple Sustainable Pace: Work at a
as possible. steady, healthy speed.
System Metaphor: Shared analogy for On-site Customer: Customer available
system understanding. daily for feedback.
Collective Code Ownership: Everyone
can change any code.
Coding Standards: Common rules for
writing code.
03
Processes & Case
Study
Software Development Cycle with XP
Source:https://pma.edu.vn/blogs/extreme-programming-xp-la-gi/
Case Study: Chrsler’s C3 project
Salaray management system for 10,000 employees each
months.
Tight deadline, with frequently changing and vague
requiements.
Developed successfully in 1997. Processing time
reduced from 1,000 hours down to 9 hours.
XP can effectively solve the problem, demonstrating
the effectiveness methodology.
Test-Driven Development (TDD) In Practice
Red-Green-Refactor Process
RED
1
Write tests and let them fail.
GREEN
2 Write minimal code to make the tests pass.
REFACTOR
3 Improve and optimize code.
Test-Driven Development (TDD) In Practice
Red-Green-Refactor Process
RED
1
Write tests and let them fail.
GREEN
2 Write minimal code to make the tests pass.
REFACTOR
3 Improve and optimize code.
04
Evaluate & Select
the right fit
The outstanding advantage of XP
High Quality Quick Response Time Easy Collaboration
Reduce errors by 40% using TDD and Short development cycle (1-2 week), Effective team work, knowledge sharing.
Pair Programming. quick and easily adapt.
Quick Delivery Satisfaction Flexible
Finish early by 37%. Increase customer satisfation by40%. Easily adapt to new requirements
Disadvantage & Challenge
Higher costs Require A Good Team
Pair Programming increases 15% time. The team needs good testing, refactoring skill
Customer Commitment Small Scale
Customers must frequently take part in the process Most effective with small teams (5-12 members)
High Stress Less Documentation
Short sprints might cause stress. More focused on code.
When to apply Extreme Programming?
When When not to
Requirements change frequently. Large scale, complex project
Need high code quality. Stable requirements.
Experienced small team. Customers can’t participate
Customers can also participate. The team lacks experience about XP
Project have high techical risk.
05
Comparison &
Quick wrap-up
XP & Scrum: Main Differences
Tiêu Chí XP Scrum
Focus Programming technique Project Management
Sprint length 1-2 weeks 2-4 weeks
Flexibility Changeable during sprints Do not change during sprints
Practices 12 practices Less prescriptive
Team size Small (5-12) Larger
Testing TDD is the main focus Less focused on testing
Summary of Keys Points
XP is an technical-oriented Agile methodology, Based on 5 values and specific 12
focused on code quality. practices.
Suitable for small projects with constantly
Success is with proven with Chrysler C3 project.
changing requirements.
We can combine XP practices within Delivers high quality and outstanding
SCRUM. performant.
Starting XP Today
Step 1: Try pair programming with small projects
Step 2: Apply TDD for new modules.
Step 3: Invite friends to role-play as customers and participate
in the daily meeting.
Step 4: Setup Continuous Integration.
“The best way to learn XP is to practice
XP.” - Kent Beck