An Introduction to Sprinting
What is a sprint?
A sprint is a focused development session, in which developers assemble in small groups in the same physical location and focus on a particular task. A sprint is organized with a coach leading the session. The coach sets the agenda, tracks activities, and keeps the development moving. The developers often work in pairs using XP's pair programming approach.
The sprint approach works best when the first few hours are spent getting oriented -- presenting a tutorial for the development material, laying out the stories to tackle for the day, getting everyone a CVS or SVN checkout to work with.
[http://www.zopemag.com/Guides/miniGuide_ZopeSprinting.html ZopeMag's miniGuide to Zope Sprinting] is a good introductory article; just mentally remove every "Zope" from the article to make it generic.
Sprints are intended to benefit a projects by getting people working in the same room and making decisions quickly. They're also a good opportunity to spend 4 or 8 hours concentrating on a task, and to encourage more people to take part in development. They will also be a good place to see ExtremeProgramming or other AgileMethods in action, and to work closely with experienced project developers.
If you wish to participate in a sprint, please contact the sprint organizers in advance, or add your name to the list of participants for a given sprint. It's important for organizers to have an idea of how many people will be participating.
What equipment/supplies sprints need?
The minimum requirements are:
- A room to work.
- Power for laptops.
- Wireless networking. It's not necessary to have wireless, but it makes the sprinters much more productive because it's easier to share work and to coordinate via IRC or e-mail.
- Whiteboards or pen/paper for sketching out ideas.