The goal of this was to create a ''simple'' command-line calculator CodeUnitTestFirst. We ended up getting a bonus dose of PlanningGame. IainLowe wrote some UserStory cards to create a calculator. VincentTence, Pascal Roy and YoucefBouayad brought in their laptops so we could write real code. Rodrigue Cloutier, IainLowe and JeanMarcHeneman acted as customers on site and sometimes as coaches. '''Stories:''' ''Any "support" stories imply that the support is backported to previously completed stories'' * Add two single-digit positive numbers. * Subtract two single-digit positive numbers. * Multiply two single-digit positive numbers. * Divide (integer division) two single-digit positive numbers. * Modulo divide two single-digit positive numbers. * Support negative numbers. * Support floating point numbers. * Support scientific notation for large numbers (1.23456e4). * Support factorials (!n). * Support roots ("9r2" produces "3"). * Support exponentiation/powers ("2^3" produces "8"). * Support parenthesized sub-expressions. * Support operator precedence rules (standard). We were almost 15 people. We created three groups of 3 to 5 people with one laptop for each team. Three clients work with the 3 teams to just do some XP style development. Each team estimated the stories briefly (15-20 minutes) and was then asked to implement a list of stories in order. We dispensed with the notion of iterations because we didn't have a lot of time. The teams were able to implement in JavaLanguage one or two UserStory cards in 1 hour and a 15 minutes: Add and Sub with a command line interface. Some teams decided (or were asked by the client) to read input from files, others from keyboard. It was very interesting to see the different questions each team asked during the planning phase. Each had different concerns and plans for how to deal with issues. Acceptance tests were done manually by the customers. It was a highly interactive session ! See also ExtremeHourWithActualProgramming for AlistairCockburn's account of a similar session he ran. ---- MontrealXpUsersGroup