Hi All,
(
Note: This thread was started last week, before the "Planning XP" book giveaway was announced. jlacar 4-4-01)
Hoping to stir up some of the dust that's been settling pretty thick in this forum...
It looks like Martin Fowler is going to be hanging around here a bit in April to promote his book "Planning XP". The book is available online on one of the XP sites (I'm sure a quick search on Google will turn up something). I haven't read it yet but I have already read the original white book and skimmed through the pink one (XP Installed).
Anyway, I recently read the article
"Extreme Programming Episode" in which Bob Martin and Bob Koss take the reader through a pair-programming session. Although the authors say that the article is a faithful re-enactment of a programming episode, I couldn't help get the feeling that it was skewed a little to show how even a simple UML diagram can lead you astray. Hopefully, that was not their intention. Personally, I would not have gone down the road they did in that article. In fact, I tried my hand at writing a program with the same functionality and came out with something that I thought, in all modesty, was cleaner. (More on this in subsequent posts)
So anyway, I was wondering if anybody here would be interested in actually trying to expand on the work the Bobs presented in that article. What I would like to see happen is this:
- Somebody acts as the USER. This person (or persons) will provide the user stories. In this case, the stories would be for the bowling league application. This is the initial description from the article:
"...an application that keeps track of a bowling league. It needs to record all the games, determine the ranks of the teams, determine the winners and losers of each weekly match, and accurately score each game."
Ideally, the volunteer user would know something about how bowling leagues are run. I like to bowl myself but I have never participated in a league. So hopefully, we could have somebody who knows how to answer questions like "What about handicaps? How are those handled/scored?" and "How many people can there be on a team?" and "How do we get the team scores and determine who won?"
The USER will also be the one who decides which stories will be included in the iteration and will be responsible for writing functional tests to validate the delivered product.
- Everybody else who cares to join in will act as developers. We will try to go through a two-week XP iteration, get the stories, do the planning game, and maybe do online pair/group programming, etc. Obviously, we won't be fully XP since we'll be doing everything through this forum but I'm hoping the exercise will give us all a better idea of what happens on an XP project.
Other things that participants might get from this exercise: a look at how refactoring is done, at how
unit testing with
JUnit is done and how it helps improve quality, a look at how test-first design is done.
At the very least, this should stir up some good discussion and maybe we'll actually have something interesting to talk to Martin about when he swings by our part of town.
So, is anybody here game for this? Who wants to be the USER?
J.Lacar
[This message has been edited by JUNILU LACAR (edited April 03, 2001).]