Extreme Programming

Table of Contents

Extreme

Definition of Extreme Programming

Extreme Programming, also known as XP, is a software development methodology best suited to small and innovative applications with evolving requirements.

FAQs

What is Extreme Programming (XP) in software engineering?

Kent Beck created this software development methodology in the 1990s. As the name suggests, the methodology takes various elements of what is considered to ‘best practice’ in software development to ‘extreme’ levels. Activities, Values, Rules, Principles and Practices are used to define the methodology.

When to use Extreme Programming (XP)?

This methodology is best suited to smaller scale innovative applications where there are dynamic or evolving requirements.

What are three practices of Extreme Programming (XP)?

Three Continuous Process practices are included in the XP definition. These are Continuous Integration, Refactoring and Small Incremental Releases.
Four Feedback Practices are a major feature of the methodology. These are Pair Programming, the Planning Game, Test Driven Development and Whole Team Involvement.
Similarly four practices are used to create a strong Shared Understanding. These practices are Coding Standards, Collective Ownership, Simple Design and adopting a System Metaphor are the .
Programmer welfare is also given its rightful place with the focus on working at a Sustainable Pace.

How does extreme programming work?

The methodology provides a lightweight framework for software development teams to organise themselves. It focuses on rapid development and equally rapid feedback. In this way it works best in exploratory type situations such as proofs of concept, situations where the requirements are unclear or likely to change.

Is extreme programming Agile?

Yes, it’s safe to say the XP methodology is Agile. When we look at the methodology in more detail we see echoes of the Agile Manifesto values and principles. This is hardly surprising since its creator, Kent Beck, is also one of the creators of the Agile Manifesto.

Our opinion on Extreme Programming

We think Extreme Programming is a fantastic methodology when used in the correct circumstances. Unfortunately it’s image has suffered collateral damage from the wars caused by the Silver Bullet Fallacy.

Subscribe to our Agile Terminology page

Keep yourself up to date with topics and never miss an update

Share this page

JOIN OUR NEWSLETTER
And get notified everytime we publish a new blog post.