What is a sprint or iteration in Agile or Scrum Software Development Projects?

Quite often we get asked by those new to agile project management what exactly an iteration or sprint is? The first thing is that a sprint and an iteration are essentially the same thing, a “sprint” is the term used by scrum, which is the most popular flavour of agile project management.  You’ll find that most agile practitioners use the terms interchangeably.

A sprint is a “time-boxed” period of work, with a closely defined and agreed output.  In the software development world, the  output is “potentially shippable” code.  At the end of the sprint, the “potentially shippable” code is presented back to the client in a playback session.

By potentially shippable, we mean that it has been built, tested, integrated, documented etc. Any task that is required to be undertaken by the team to release it, needs to be done.  It’s very rare that a team will “release” each sprint to production, however, highly agile teams may operate in this manner in certain environments.

Another common characteristic of agile development teams are that they are self-managing.  Given this trait, it’s important that the team themselves agree to what is being asked of them in the sprint and commit to delivering it.  In some ways the responsibility of delivery moves from the Project Manger, to the entire team on an agile project.

At the end of each sprint it’s important for the team to get together for a retrospective.  It’s important that everyone attends and it needs to be an open forum to discuss what did and didn’t work on the current sprint.  As a group you then then to come up with a few changes to make during the next sprint.  This regular feedback is great and really differs from the traditional “post implementation review” or “post mortem” generally done long after the project is delivered.

So in summary;

  • A sprint and an iteration are basically the same thing!
  • It’s a time boxed period of work – generally 2-4 weeks.
  • The output is “potentially” shippable software.
  • The team themselves must agree on the scope of the sprint.
  • The scope is locked-down once the sprint begins.
  • To keep improving, each sprint ends with a retrospective.
  • A release is generally made up of multiple sprints.

1 Response to "What is a sprint or iteration in Agile or Scrum Software Development Projects?"

  • marryjesse says:
Leave a Comment