Chapter 12. Planning the First Iteration


As the second day of our XP test drive trip dawns (what a lovely sunrise!) we're ready to begin the first iteration of the project. During the release planning on our first day, we pored over the system functions with the customer in the form of high-level user stories, asked a lot of questions, flushed out as many hidden assumptions as possible, and sketched the basic set of acceptance tests. We calculated the risks and technical difficulties and made estimates of the time required for each, including the time for acceptance testing.

Most of what we did in release planning was widening activity: we cast our net as widely as possible to make sure we caught all the requirements. We weren't concerned with which stories would be completed during the course of the project. Now, in iteration planning, we'll start narrowing things down. We'll tell the customer how much work our team can complete in the first iteration: our velocity. The customer will choose the stories, whose total estimates can't exceed our velocity, for us to complete in the first iteration. On the first day we enjoyed a smooth, speedy, open four-lane interstate. Today, our guidebook says the road is level and straight. But truck traffic is heavy, and we've heard the highway is under construction. Things could get a bit bumpy.

If you're used to traditional software development artifacts such as requirements, master test plans, and functional specifications, you'll naturally feel some trepidation here. You may be asking yourself how your team can possibly deliver a tested and production-ready software package in about two weeks, the end of the iteration.

The lack of heavyweight artifacts and the speed at which we'll be moving are related. The user stories and high-level acceptance-test definitions we do have are simple, so we won't have to spend time formatting, updating, reviewing, distributing, and/or approving them. We'll just get on with it. We have the best possible, always up-to-date reference: our customer.



Testing Extreme Programming
Testing Extreme Programming
ISBN: 0321113551
EAN: 2147483647
Year: 2005
Pages: 238

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net