Extreme Programming, also referred to as "XP", is a methodology for software design based on a pair of developers making rapid, incremental improvements to a set of code; see refactoring and design.