This is how we got into ExtremeProgramming. First, our team just wanted to get an 'out of control' project under control. To do this, we had to discover:
Having completed UseCaseScenario document, we created the requirements using Rational RequisitePro. This gave us the ability to give the Management team an rough estimated completion date. The did NOT like the dates. So they told us the dates they wanted and we had to meet those dates (notice that the management team reacted to the rough estimated dates without letting us even complete the true detailed design so we could give actual educated estimated dates of completion). I suggested that we break things down into 'groups of functionality', complete design and then give them dates based on a priority list of what the users thought was important. My manager didn't believe this would help but I finally asked him in a whining kid-like voice Would you just let us do our job and we will give you what you need!. He reluctantly agreed.
We used Rational Rose to model the requirements using UML. We just created the UseCases and SequenceDiagrams?. This was enough for us to go off and create a group of functionality estimate and a pretty good look at the system.
So when we calculated the time to complete the new code plus add in the time to refactor the old stuff, we where still off by 30 days. We needed 3.5 months but where only given 1.5 months. So, we had to chop off some features. The user agreed with it and we got the schedule to task all programmers at 100%. At least it wasn't 110% or 150%.
The next hurdle was to prevent the new code from adding additional bugs into the system that would case UAT to on forever. This is when the ExtremeProgramming book '... Explained' was discovered. Since we already had a story like environment, and a small group we tried to implement the mind set and the unit testing in the current release. Due to this happening, we were able to scrap the schedule for refactoring all together.
The plan:
Last updated 2000/10/01 - any more news? This looks really interesting and exciting.