Sprint (software development)
Encyclopedia
A sprint is a get-together of people involved in a project to give a focused development on the project. Sprints are typically two to seven days long. Sprints have become popular events among some Open Source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

 projects. For example, the PyPy
PyPy
PyPy is a Python interpreter and JIT compiler. PyPy focuses on speed, efficiency and 100% compatibility with the original CPython interpreter.- Details and motivation :...

 project is mostly developed during regularly held sprints where most of the international developer team gathers.

The sprints are often held near conferences which most of the project team attend, but they can also be hosted by some involved party at their premises or some interesting location.

Sprints are organized around the ideas of the Extreme Programming
Extreme Programming
Extreme programming is a software development methodology which is intended to improve software quality and responsiveness to changing customer requirements...

 discipline of software development. The sprint is directed by the coach, who suggests tasks, tracks their progress and makes sure that no one is stuck. Most of the development happens in pairs
Pair programming
Pair programming is an agile software development technique in which two programmers work together at one workstation. One, the driver, types in code while the other, the observer , reviews each line of code as it is typed in...

. A large open space is often chosen as a venue for efficient communication.

Sprints can vary in focus. During some sprints people new to the project are welcomed and get an intensive hands-on introduction pairing with an experienced project member. The first part of such sprints is usually spent getting ready, presenting the tutorials, getting the network setup and CVS
Concurrent Versions System
The Concurrent Versions System , also known as the Concurrent Versioning System, is a client-server free software revision control system in the field of software development. Version control system software keeps track of all work and all changes in a set of files, and allows several developers ...

 or Subversion checkouts working on everyone's computers. A different kind of sprint is where only the core team gathers and gets some important work done in a concentrated manner.

A significant benefit of sprinting is that the project members meet in person, socialize, and start to communicate more effectively than when working together remotely.

In open source

The practice of using sprints for open source software development was pioneered by the Zope Corporation in the early days of the Zope 3 project. Between January 2002 and January 2006, more than 30 Zope 3 sprints had taken place.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK