Extreme Programming (או בקיצור XP) היא מתודולוגיית פיתוח תוכנה שנהגתה על ידי קנט בק. המתודולוגיה תוארה לראשונה בשנת 2000 בספרו של בק eXtreme Programming Explained, אך קדמו לו פרסומים לא רשמיים ודיונים רבים בחוגי פיתוח תוכנה זריז והנדסת תוכנה.
שמה של המתודולוגיה ניתן לה בשל העובדה שהשיטות המשמשות אותה הן מחמירות מאוד, ובעת פרסומה נחשבו כקיצוניות יחסית לשיטות הקיימות בתעשייה. המתודולוגיה, כפי שרומז שמה, מפרטת שורה של טכניקות בתחום התכנות ופחות בתחומים אחרים של הנדסת תוכנה. מערכות המפותחות לפיה גמישות מאוד לשינויים, וניתן להרחיבן בקלות ובאופן בטוח. כדי להשיג גמישות זו, XP משתמשת בשיטת פיתוח מונחה-בדיקות שעיקריה הם כתיבת דרישות המערכת כסט של בדיקות הניתנות להרצה, ופיתוח הבדיקות קודם לפיתוח הפונקציונליות. שיטה זו דורשת הבנה טובה של עקרונות תכנות מונחה-עצמים ומשמעת עצמית גבוהה.
ערכי היסוד של XP הם:
XP משתמשת במספר מונחים:
מהיסודות שלעיל, יצרה XP תריסר מנהגים / עקרונות (practices), המסודרים בשלושה מעגלים:
בתחילת העשור הראשון של המאה ה-21 חל גידול מהיר בהתעניינות ב-XP ויותר פרויקטים ובתי תוכנה בחרו בה כדרך פיתוח. כיוון ש-XP היא שיטה כמעט טוטאלית בדרישותיה, רוב בתי התוכנה שבחרו בה יצרו לעצמם מתודולוגיות פיתוח עצמאית, המבוססת על שילוב בין עקרונות XP לעקרונות שיטות פיתוח קלאסיות. חברות תוכנה רבות נרתעו מהפעילויות הקיצוניות של XP, ובפועל רוב מיישמי השיטה עשו זאת באופן חלקי.