Extreme programming is an agile software development methodology that implies collaboration, flexibility, and rapid feedback. It was created in the late 1990s as a response to traditional methodology. Extreme programming principles and practices are applied in extreme project management.