This feature is available in all editions.
A sprint/Iteration is the period of time (typically 1 to 6 weeks) that development team commits to delivering a releasable set of functionality. During this time, their ultimate goal is to deliver a set of releasable functionality carved from the backlog. In essence, each sprint is a mini project unto itself.
This allows the team to develop a rhythm as it builds the backlog and allows for velocity to be measured to predict future capacity.