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
projects. For example, the PyPy
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
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
. 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
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.
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.