Apology
After the original site vanished and then returned I decided to make a
local copy of this very useful page.
You'd be wise to go to the original on the WikiWikiWeb:
http://c2.com/cgi/wiki?ExtremeProgrammingRoadmap
rather than this cheap ripoff.
Dick Botting
http://xp.c2.com/html.zip -- fast download of these pages.)
Back Up Extreme Programming Roadmap
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. If you still feel lost or confused by the form this discussion takes, try the more gentle introduction called WelcomeVisitors.
Begin with some of the contextual overview pages:
-
- WhosWritingAboutXp
-
- ExtremeProgrammingInContext.
-
- ExtremeProgrammingSystem.
-
- ExtremeProcess.
-
- ExtremeRoles.
-
- ExtremeProgrammingSummary.
Before you get to the programming, you should do some ExtremePlanning.
Also, KentBeck has sort of a checklist to help you know, AreYouDoingXp?
The DrivingMetaphor and OneHandOnTheYoke set out the paradigm.
Specific ExtremeProgramming practices:
-
- DoTheSimplestThingThatCouldPossiblyWork encourages us not to over (or under)-engineer;
-
- AskTheCode because it knows; CodeSmells if it has a problem; ListenToTheCode;
-
- UnitTests ensure that we don't break one another's code;
-
- FunctionalTests tell us how we're progressing against user needs;
-
- ContinuousIntegration helps avoid IntegrationHell;
-
- ContinuousIntegrationRelentlessTesting ditto;
-
- RefactorMercilessly keeps the code clean and speeds progress;
-
- and see also WikiPagesAboutRefactoring;
-
- ProgrammingInPairs gives higher quality, great cross-training, and higher speed; (mailing list: PairProgramming);
-
- SpikeSolution helps explore the area we're working on;
-
- ModelFirst plus SpartanUserInterface helps us concentrate on real customer value.
-
- ExtremePlanning suggests quickly building a map of the whole imagined system and incrementally refining it
-
- The PlanningGame formalizes the rituals and roles of planning
-
- CountDownToRelease discusses how to use the ExtremePlanning practices when you're getting close to release.
-
- ExtremeReuse - adopting third party software and making it XP-compatible by building tests
-
- TossIt - making projects trim and keeping projects trim.
-
- SystemMetaphor - how we communicate the system to ourselves and others.
-
- XpDesign - who does the design in an XP project, and when?
-
- ExtremeDocuments - we do documentation, sometimes differently.
-
- SupportCrisis - what to do until the doctor comes.
-
- IncrementalDelivery
-
- LazyOptimization
Results in...
-
- IterativeDevelopment - tends to be a natural result of ContinuousIntegration and ContinuousIntegrationRelentlessTesting and DoTheSimplestThingThatCouldPossiblyWork at each iteration.
-
- DynamicDesign - from RefactorMercilessly and short Code-Compile-Debug cycle.
Who's Who:
-
- TheThreeExtremos
Significant discussion and reference:
-
- HistoryOfExtremeProgramming
-
- MinimalMethodologies
-
- JustInTimeProgramming
-
- EconomicsOfXp
-
- AnalyzingXpWithOptionsPricing
-
- ExtremeArticle
-
- ExtremeStoryCards
-
- ExtremeDevelopmentCycle
-
- WikiPagesAboutTransitioningToExtremeProgramming
-
- XpGlossary
Thoughtful inquiry and response:
-
- XpConceptsInAcceptedMethodologies
-
- IsExtremeProgrammingWacko
-
- XpIsaPseudoMethodology
-
- ThoughtfulReactionsToXp
-
- DoesXpDoDesign
-
- XpDoesDesign
-
- DesignToolsForXp
-
- DesignInXp
-
- ExtremeProgrammingResearch
-
- InterviewWithKent
Applicability of ExtremeProgramming:
-
- AdoptVsAdapt- What is the right metaphor for moving to XP?
-
- WhyIsXpSoHard- Is XP hard?
-
- ExtremeProgrammingBoundaryConditions
-
- LargeExtremeProgramming
-
- ExtremeProgrammingMayScaleUp
-
- HundredPersonProject
-
- ExtremeProgrammingChallenge - Explores how extreme programming might work out of its native habitat.
-
- ExtremeProgrammingForOne
-
- ExtremeAdaExperiment -- a lone programmer applies XP to Ada
-
- AtsGoesExtreme -- Running diary of a small team's experience with ExtremeProgramming
-
- ExtremeProgrammingWithVisualBasic
-
- ExtremeProgrammingWithPowerBuilder
-
- TestDrivenProgramming -- using XP with C++
-
- ExtremeUnifiedProcess -- XP + RationalUnifiedProcess
-
- ExtremeProgrammingWithAtgDynamo
-
- LargeScaleIndividualSoftwareDevelopment - Thoughts on applying the concepts of XP as the lone programmer on a large project
Get Trained in XP:
-
- ExtremeHour -- In at the deep end with the world's shortest development project.
-
- HowYouWentExtreme -- & how to get over the initial shock.
-
- XpTrainingClasses -- A place for notices about XP Training.
-
- IronGeek -- Think you're extreme? Want a bet?
Explore the limits of XP:
-
- BeyondExtremeProgramming
-
- ExtremeManagement
-
- ExtremeProgrammingBoundaryConditions
-
- WhenXpIsUnpopular
-
- WhyXpIsPopular
-
- ImprovingExtremeProgramming -- when and how elements are added to XP
-
- MegaExtremeProgramming
-
- TestsCantProveTheAbsenceOfBugs
-
- ProofsCantProveTheAbsenceOfBugs
-
- NameXp - let's call it something else
-
- ExtremeConversion - successful conversion of a running 9-gig XP database
-
- XpEvangelism
-
- XpForManagers
Curiosa:
-
- ExtremeWay
-
- ExtremeProgrammingMaster
-
- ToAyoungExtremist -- A must-read for all visionaries.
-
- ExtremeNormalForm
Themes:
-
- YouArentGonnaNeedIt
-
- TheSourceCodeIsTheDesign
-
- ExtremeValues - Simplicity, Feedback, Communication, Courage - everything we do comes from these.
-
- FourVariables - Resources, Scope, Quality, Time - describe project status.
Examples:
-
- Now take a look at ExtremeProgrammingProjects, or read about WhosWritingAboutXp.
Conferences and talks:
-
- XpTwoThousand, hold in Cagliari, Italy
-
- XpTwoThousandAndOne, to be held in Villasimius, Sardinia, Italy
Other XP sites:
-
- <http://www.xprogramming.com hosted by RonJeffries
-
- <http://www.extremeprogramming.org hosted by DonWells
-
- <http://www.xpdeveloper.com/ hosted by TimMackinnon, PaulSimmons and OliBye
-
- XpForumAtEgroupsDotCom started by FrankWestphal for the GermanXpCommunity
-
- <http://www.objectmentor.com Information about XpTrainingClasses.
-
- XpMailingList -- The mailing list that gave <news:comp.object a much-needed break from all the XP threads.
-
- <http://www.extremeprogramming.dk -- Danish XP site hosted by JorgenLarsen
Extreme Programming in the News
-
- "It's Hip To Code At The Edge" (<http://www.zdnet.com/intweek/stories/news/0,4164,2571758,00.html)
-
- "Taking Programming to the Extreme Edge" (<http://www.infoworld.com/articles/mt/xml/00/07/24/000724mtextreme.xml)
-
- "Pair Programming: Development Times Two" (<http://www.infoworld.com/articles/mt/xml/00/07/24/000724mtpair.xml)
-
- "Extreme Programming: Does it Really Work?" (<http://www.ddj.com/articles/2000/0050/0050k/0050k.htm)
Communities and User Groups:
-
- XpCommunity in Germany, London, the Netherlands, and Sweden
-
- XpUsersGroups in Hamburg, and Phoenix.
Companies and People
-
- PeopleDoingXp
-
- CompaniesDoingXp
Specific practices that are *NOT* part of XP:
-
- ExtremeReviews
-
- LiterateProgramming
-
- ExtremeCatalysis
-
- BigDesignUpFront
-
- BigBangTesting
-
- ArmCl
CategoryExtremeProgramming
EditText of this page
(last edited <November 19, 2000)
FindPage by searching (or browse <LikePages or take a <VisualTour)