Assignment 2: Extreme Programming Reading and Reflection


Due: Friday, September 9, 11:30am (hardcopy at beginning of class)
50 points

The goal of this reading assignment is for you to familiarize yourself with the practices of Extreme Programming, which will be used in this course.  Start by reading the short article What is Extreme Programming?

Next, read about key XP Practices.  Extreme Programming is documented on the c2.com wiki web, among other places.  The starting point is the Extreme Programming Roadmap.

A wiki web is like a publically editable blackboard space (note: be polite and don't make any edits unless you know a bit more about XP).  The c2 pages have a lot of good information, but the further you go down the page the more disorganized it is.  Don't read all of every page; read the summary at the top, a few related links that seems relevant, and stop reading when you stop getting valuable content.  Don't read all the links either; use your judgment to find out which things are valuable to you.

The most important technical pages to read are the 12 links from the Extreme Programming Core Practices page.  Read the pages on the 12 core practices, as well as the key links from each of those pages.  Some other important links to follow include UnitTest, FunctionalTest, YouArentGonnaNeedIt, OnceAndOnlyOnce, ReleasePlan, SpikeSolution, CodeUnitTestFirst, UserStory, PairPromiscuously, ContinuousIntegration, RefactorMercilessly, DoTheSimplestThingThatCouldPossiblyWork.

As you read, keep in mind that you will be following these practices in your development, and use the pages to answer questions about how to do XP right.

Reflection Assignment

After or while you're reading about XP, write a 1-page (minimum 500 word) reaction: