Can epics, features, and user stories, span multiple releases or iterations?
As the question stands, it's way too broad to have a single answer. Considering this is a point of recurrent debate, I'd like to share my takes on it too.
As Thomas said, the answer is context-dependent. Agile frameworks are intentionally not prescriptive so that teams can experiment pros and cons of having Stories, Features and Epics to be delivered within an iteration or a release.
... and, there's SAFe (Scaled Agile Framework).
SAFe is highly prescriptive here (and a lot of people says it's not agile, but I won't enter this debate). A prescriptive methodology helps in the case where there's only chaos. From SAFe glossary:
- A Story is expected to fit an iteration
- A Feature is expected to fit an increment
- An Epic is (implicitly) allowed to span several increments
Worth to highlight the definitions of two more keywords here for consistency:
- An iteration is ~ 2 weeks long
- A (program) increment is ~ 8 to 12 weeks long
Regardless of how much heat SAFe has from the agile community, I believe that they are fairly on spot on some of these definitions.
A note of warning: The underlying problem one needs to be aware of is how each of these terms are used within a closed system (a company, in this case).
Some companies uses different terminologies for the same thing, so what some companies call a feature, some may call an Epic, what some call an Epic may be an initiative and so on. This becomes even more complex when we have the combo methodology + tool (Jira is allegedly one of the biggest culprits why the concept of Epic is so debatable).
It depends on how you define "feature", "epic", and "user story".
The only one of these terms with anything close to an agreed upon definition, and even that isn't necessarily widely agreed upon or close to being a standard, is user story. The current thinking is that a story should, more often than not, represent something that is achievable in a few days of effort. If you're using iterations, they probably last more than a few days, so a story would probably not span multiple iterations unless it was started at the end of one iteration and finished in the next.