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;
Continuous Integration helps avoid Integration Hell;
Refactor Mercilessly keeps the code clean and speeds progress;
and see also Wiki Pages About Refactoring;
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...
Iterative Development - tends to be a natural result of Continuous Integration and Continuous Integration Relentless Testing and Do The Simplest Thing That Could Possibly Work at each iteration
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
Also, see Successful Xp Projects
Xp Conferences and talks:
Open Day For Managers On Extreme Programming And Agile Methods 27 Sep 2004, Milan, Italy
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
Xp Lund Sweden, held in Lund Sweden
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:
www.xprogramming.com hosted by Ron Jeffries
www.extremeprogramming.org hosted by Don Wells
www.industrialxp.org -- A site about Industrial Extreme Programming (IXP), created by Joshua Kerievsky
www.xpdeveloper.net (for Extreme Tuesday Club) hosted by Tim Mackinnon, Paul Simmons and Oli Bye
Xp Forum At Egroups Dot Com started by Frank Westphal for the German Xp Community
www.objectmentor.com Information about Xp Training Classes
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.frankwestphal.de (german) hosted by Frank Westphal
www.xp-france.net (french language)
oops.se (in Swedish) hosted by Svante Adermark, Urban Nilsson, Malte Tancred, Peter Lindberg, et al
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