חוב טכני הוא העלות המצטברת של בחירות יישום שהיו יעילות באותה תקופה אך הופכות שינויים עתידיים לאיטיים או מסוכנים יותר. המטאפורה היא של וורד קנינגהם: הלוואה כנגד קיבולת עתידית למשלוח מוקדם יותר כעת, כאשר ריבית משולמת בכל שינוי עוקב עד לפרעון החוב. כמו חוב פיננסי, הוא אינו רע מטבעו, וההבחנה החשובה היא בין חוב שנלקח במכוון מסיבה מסוימת לבין חוב שנצבר עקב רשלנות.
ערכה של המטאפורה טמון בהפיכת הפשרה לניתנת לדיון עם אנשים שאינם כותבים קוד. ניסוח בקשת שכתוב מחדש כהחזר חוב מעיד על משהו שבקשה לכתיבה מחדש של מודול אינה מעבירה, כלומר שהעלות כבר משולמת, באספקה איטית יותר ובשיעורי פגמים גבוהים יותר, ושהשאלה היא האם להמשיך לשלם אותה. הניסוח המקורי של קנינגהם הדגיש גם שחוב נובע מפער הולך וגדל בין מבנה הקוד לבין ההבנה הנוכחית של הצוות את הבעיה, וזהו רעיון רחב יותר מאשר פשוט כתיבת קוד רשלני תחת דד-ליין.
מספר דברים נפרדים מקובצים תחת המונח, והם דורשים תגובות שונות. חוב מכוון, הנלקח ביודעין כדי לעמוד בדד-ליין אמיתי עם תוכנית לטפל בו, הוא החלטה הנדסית לגיטימית. חוב מקרי, הנובע משיפור בהבנת הצוות לאחר קביעת התכנון, הוא בלתי נמנע והוא העלות הרגילה של למידה. חוב הזנחה, כתוצאה מהיעדר בדיקות, התנהגות לא מתועדת ותלות לא מתוחזקות, מצטבר בשקט והוא הקטגוריה היקרה ביותר משום שהוא הופך כל שינוי למסוכן יותר. תלויות מיושנות בפרט טומנות בחובן חשיפה ביטחונית ולא רק אי נוחות.
התסמינים נראים במדדי האספקה לפני שהם נראים בקוד. הערכות הולכות וגדלות עבור עבודה דומה, נתח הולך וגדל של קיבולת המושקעת בפגמים, חוסר רצון לגעת בתחומים מסוימים ושינויים במקום אחד שגורמים לשבירת דברים לא קשורים - כל אלה הם סימנים לכך שהתשלום על הריבית הפך משמעותי. צוותים מדווחים לעתים קרובות על תסמינים אלה כבעיות קיבולת ומבקשים יותר אנשים, מה שבדרך כלל מחמיר את המצב בטווח הקצר.
ניהולו דורש שהעבודה תהיה גלויה באותו תהליך תכנון כמו כל דבר אחר. חוב המוחזק ברשימה נפרדת ומטופלת רק כאשר יש קיבולת פנויה לעולם אינו מטופל, משום שלעולם אין קיבולת פנויה. הקצאת חלק קבוע מכל מחזור אליו, או צירוף תיקון לעבודה עיקרית באזורים המשתנים, הן שתי הגישות ששורדות מגע עם לחץ מסחרי. החלופה, כתיבה מחדש גדולה תקופתית, היא בדרך כלל סימפטום של דחיית העבודה זמן רב מדי, ונושא סיכון גדול בהרבה משיפור הדרגתי.
תקשורת הטיעון לתיקון עובדת טוב יותר במונחים של אספקה מאשר במונחים הנדסיים. הקביעה ששינוי בתחום מסוים לוקח כיום פי שלושה יותר זמן מאשר תחומים דומים, עם ראיות מעבודה אחרונה, מחברת את הבעיה למשהו שכבר אכפת לבעלי עניין שאינם טכניים, בעוד שתיאור של חששות אדריכליים אינו עושה זאת. במקרים בהם החוב נושא סיכון ולא עלות, כמו תלויות שאינן מתוחזקות או היעדר כיסוי בדיקות בנתיבים קריטיים, מסגורו כחשיפה עם הסתברות והשפעה יעיל יותר ממסגורו כאיכות. בשני המקרים, כימות העלות השוטפת היא זו שהופכת העדפה הנדסית לתרחיש עסקי שיכול להתחרות עם עבודת מאפיינים על קיבולת.
לא כל חוב צריך להיפרע. קוד שעובד, משתנה לעתים רחוקות ואינו גורם לבעיות יכול להישאר כפי שהוא ללא קשר למראהו, והמאמץ המושקע בשיפורו לא מניב תמורה. הגישה הכלכלית הנבונה מרכזת את התיקון במקומות שבהם השינויים מתרחשים לעתים קרובות ולכן הריבית משולמת בפועל. הפיכת הפשרה הזו לגלויה, ושמירת יכולת מפורשת עבורה בתכנון, היא חלק נורמלי מאופן הפעולה. פיתוח מוצר המעורבות היא מובנית, והיא שייכת לדיון מפת הדרכים בתוך סטודיו מוצר במקום להתייחס אליהם כעניין הנדסי מחוץ לשיח על המוצר.