The Scrum framework is driven by the goal of delivering maximum business value in the least time. To achieve this practically, Scrum believes in Iterative Development of Deliverables.
In most complex projects, where the customer may not be able to define very concrete requirements or is not confident of what the end product may look like, the iterative model is more flexible in ensuring that any change requested by the customer can be included as part of the project. User Stories may have to be written constantly throughout the duration of the project. In the initial stages of writing, most User Stories are high-level functionalities. These User Stories are known as Epic(s). Epic(s) are usually too large for teams to complete in a single Sprint. Therefore, they are broken down into smaller User Stories.
Some of the benefits of Iterative Development are: