Extreme Programming Roadmap

Welcome to the Wiki Wiki entry point for Extreme Programming (XP).

Note:
This page assumes you have some familiarity with Extreme Programming and also Wiki Wiki. If you are brand new to XP and want to start with the basics, see the Xp Faq. If you are brand new to Wiki Wiki and want to learn more, try Wiki's New User Pages.

This site has captured several years of Extreme Programming discussion and evolution. Use this roadmap to find your way to the most important pages in a logical order. You can always download a snapshot of these pages: xp.c2.com

Begin with some of the contextual overview pages:

The glossary entry, or a Short Definition Of Xp.

And this could be a candidate for the Extreme Programming Anthem.

Before you get to the programming, you should do some Extreme Planning. But don't get carried away with the concept. It isn't the right solution for everything. Also, Kent Beck has sort of a checklist to help you know, Are You Doing Xp?

The Driving Metaphor and One Hand On The Yoke set out the paradigm.

Specific Extreme Programming practices:

Do The Simplest Thing That Could Possibly Work encourages us not to over (or under)-engineer;

Ask The Code because it knows; Code Smells if it has a problem; Listen To The Code;

Unit Tests ensure that we don't break one another's code;

Acceptance Tests tell us how we're progressing against user needs;

An Onsite Customer to make sure we build business value;

Refactor Mercilessly keeps the code clean and speeds progress;

Pair Programming gives higher quality, great cross-training, and higher speed; (mailing list:
Pair Programming);

Spike Solution helps explore the area we're working on;

Model First plus Spartan User Interface helps us concentrate on real customer value

Extreme Planning suggests quickly building a map of the whole imagined system and incrementally refining it

The Planning Game formalizes the rituals and roles of planning

Count Down To Release discusses how to use the Extreme Planning practices when you're getting close to release

Extreme Reuse - adopting third party software and making it XP-compatible by building tests

Toss It - making projects trim and keeping projects trim

System Metaphor - how we communicate the system to ourselves and others

Xp Design - who does the design in an XP project, and when?

Extreme Documents - we do documentation, sometimes differently

Support Crisis - what to do until the doctor comes

User Story - like use cases, but different

Engineering Task - a User Story gets broken down into these

Results in...

Dynamic Design - from Refactor Mercilessly and short Code-Compile-Debug cycle

Fewer Work Hours [important]

Who's Who:

Significant discussion and reference:

Thoughtful inquiry and response:

Applicability of Extreme Programming:

Adopt Vs Adapt -- What is the right metaphor for moving to XP?

Why Is Xp So Hard -- Is XP hard?

Extreme Programming Challenge -- Explores how extreme programming might work out of its native habitat

Extreme Ada Experiment -- a lone programmer applies XP to Ada

Ats Goes Extreme -- Running diary of a small team's experience with Extreme Programming

Test Driven Programming -- using XP with C++

Large Scale Individual Software Development -- Thoughts on applying the concepts of XP as the lone programmer on a large project

eXtremeProgrammingPeopleSoft -- a journal of applying XP to a new People Soft project

Get Trained in XP:

Extreme Hour -- In at the deep end with the world's shortest development project

How You Went Extreme -- & how to get over the initial shock

Xp Training Classes -- A place for notices about XP Training

Iron Geek -- Think you're extreme? Want a bet?

Explore the limits of XP:

Improving Extreme Programming -- when and how elements are added to XP

Name Xp -- let's call it something else

Extreme Conversion -- successful conversion of a running 9-gig XP database

Software Development Rhythms -- talk about how to combine agile software practices

Misconceptions:

Curiosa:

To Ayoung Extremist -- A must-read for all visionaries

Themes:

Extreme Values -- Simplicity, Feedback, Communication, Courage - everything we do comes from these

Four Variables -- Resources, Scope, Quality, Time - describe project status

Examples:

Now take a look at Extreme Programming Projects, or read about Whos Writing About Xp

Xp Conferences and talks:

Benelux Xp Day 21 Nov 2003, Breda, The Netherlands

London Xp Day 28-29 Nov 2006, UK

Xp Two Thousand, held in Cagliari, Italy

Xp Two Thousand And One, held in Villasimius, Sardinia, Italy

Xp Two Thousand And Two, held in Alghero, Sardinia, Italy, 26-29 May, 2002

Xp Two Thousand And Four, held in Garmisch-Partenkirchen, Germany, 6-10 June, 2004

Xp Two Thousand And Five, held in Sheffield, UK, 18-23 June, 2005

Xp Two Thousand And Six, held in Oulu, Finland, June 17 - 22, 2006,

Xp Days Benulux Two Thousand And Five, held in Rotterdam, Netherlands 17-18 November, 2005

Xp Days Germany, held in Karlsruhle, Germany 21-22 November, 2005

Xp Universe Two Thousand One, held in Raleigh, NC, 23-25 July, 2001

Xp Universe Two Thousand Two, held in Chicago, IL, 4-7 August, 2002

Xp Agile Universe Two Thousand Three, held in New Orleans, LA, 10-13 August, 2003

Agile Development Conference Two Thousand Four, held in Salt Lake City, UT, June, 2004

Xp Agile Universe Oh Four, held in Calgary, CA, 15-18 August, 2004

Agile Developers Conference - September 9-10, 2002:
Wellington, NZ. Some XP topics

Agile Development Conference Two Thousand Three, Salt Lake City, UT, June, 2003

Agile Development Conference Two Thousand Four, Salt Lake City, UT, June, 2004

Wiki Webs on XP:

www.xpsd.org - XP in Southern California

www.xpwdc.org - XP in Washington DC

Other XP sites:

Xp Mailing List -- The mailing list that gave news:comp.object a much-needed break from all the XP threads

www.extremeprogramming.dk -- Danish XP site hosted by Jorgen Larsen

www.xp-france.net (french language)

www.xpexchange.net hosted by Manfred Lange, Information on XP in English and German

www.hxp.it XP in Italian (Hacking eXtreme Programming)

www.tatvasoft.com Information on XP and programming in C++ and .net

www.ChaosEngineers.co.nz papers and presentations on XP in New Zealand

www.xplabs.com labs, papers, experiences, education, services and projects at Xp Labs

www.extremeprogramming.it Extreme Programming in Italian

www.xprogramming.com.ua Extreme Programming in Ukraine

www.ime.usp.br Extreme Programming Laboratory Course at the University of São Paulo

agilcoop.incubadora.fapesp.br Agile Software Development Cooperative

www.bettersoftwaredevelopment.org - companion site for the Will Stott and James Newkirk book about using XP with Visual Studio Team System

Extreme Programming in the News: Xp In The News

www.methodsandtools.com Free newsletter with articles on Extreme Programming

Communities and User Groups:

Category Xp Users Group XP user groups in the US and around the world

Xp Community in different countries

groups.yahoo.com Probably India's first Extreme Programming group

timestream.net A small side-project in Portland, Oregon doing XP in VB/VBA and MS Access

groups.yahoo.com Turkey Extreme Programming Group

Companies and People


Specific practices that are *NOT* part of XP (some of which are not necessarily bad things):


Site title search: [Search]


See original on c2.com