I am new to project management and I have been reading about sprints whenever Scrum/Agile is mentioned.
Can someone explain to me what a Sprint is, or at least suggest a good reference on how to understand and execute one?
The Scrum Guide is the definitive source for this and any question regarding the Scrum framework. It's only 16 pages as a PDF and is your best source for building a primary understanding of Scrum.
According to the Scrum Guide, the Sprint is:
...a time-box of one month or less during which a “Done”, useable, and potentially releasable product Increment is created
If a Scrum team is at a beginner's level in their Scrum practice, I typically recommend a schedule like this:
This assumes a 2-week sprint and a repeating backlog refinement meeting on Fridays following the Daily Scrum.
It's important to note that, except for the Daily Scrum's timebox of 15 min, all the other event lengths are discretionary and fall within the Scrum Guides requirement for each. Backlog refinement is not an "event" in the Scrum guide, just a very helpful and wise practice that shouldn't consume more than 10% of the Development's capacity for a Sprint. Refinement is
the act of adding detail, estimates, and order to items in the Product Backlog.
This is typically things like:
In general, the bulk of the Development team's time is still just the work of developing software. A trainer friend of mine is fond of saying, "Scrum doesn't care what you do the other 7:45 minutes of the day."
Another key part of that Sprint definition is the phrase "potentially releasable." This means the work completed in the Sprint is fit for its purpose and is ready to be given to the customer with no further work needed. In this way, each Sprint may be thought of as it's own project and is key to an organization building agility into it's software development.
Does that help?
The Sprint is the workflow cycle of Scrum. Scrum is the most popular of the many different Agile frameworks.
Scrum workflow as described on the Wikipedia:
A sprint (or iteration) is the basic unit of development in scrum. The sprint is a timeboxed effort; that is, it is restricted to a specific duration. The duration is fixed in advance for each sprint and is normally between one week and one month, with two weeks being the most common.
Each sprint starts with a sprint planning event that aims to define a sprint backlog, identify the work for the sprint, and make an estimated commitment for the sprint goal. Each sprint ends with a sprint review and sprint retrospective, that reviews progress to show to stakeholders and identify lessons and improvements for the next sprints.
Scrum emphasizes working product at the end of the sprint that is really done. In the case of software, this likely includes that the software has been integrated, fully tested, end-user documented, and is potentially shippable
In the simplest terms possible, a sprint is a period of time. Typically, sprints last somewhere between one and four weeks with two being a very popular duration.
During that period of time, a team has a predefined amount of work ("stories") to do, based on their own estimation of what they think they can finish. At the end of that time the team will look at what they set out to accomplish and what they actually accomplished, and use that information to do better in the next sprint.