Themes, epics, stories, and tasks
Structured adaptability. That might sound like an oxymoron — especially when thinking about your approach to product development. Is it possible to be highly-organized yet flexible?
In the world of agile development, the answer is yes. Agile development teams work in short increments to deliver value fast while incorporating customer and cross-functional feedback. This means adjusting plans whenever necessary to provide the best product experience. Pretty much the epitome of being adaptable.
That said, agile methodologies do define processes and principles to follow — giving teams a solid foundation on which to pivot. When presented with new information during development, you are not meant to scramble, backtrack, or overhaul work in progress. Rather, the iterative nature of agile means that teams are always in the practice of incorporating change.
Streamline dev work using Aha! Develop — free for 30 days.
Some agile methods, like scrum, get incredibly specific with these practices. This is part of what makes scrum so popular. For some agile teams, the more structure the better — there is less chance of uncertainty. Scrum provides practical guidelines for structuring your sprints, backlogs, teams, meetings, and even different bodies or items of work.
In scrum, these work items are referred to as themes, epics, user stories, and tasks. Together they make up a framework for planning agile development — from the strategic level right down to the smallest technical details. The benefit is stability — steady progress towards your goals and a reliable structure that withstands incremental change.
Like many scrum guidelines, this approach to structuring work is effective no matter which agile method you practice. If you are curious about themes, epics, user stories, tasks, and what they all mean, this guide offers definitions for each and pointers for using them together in support of your goals.
Explore the following sections:
How to structure development work
Before diving into each term, let's look at how these terms relate to each other. Themes, epics, stories and tasks form a hierarchy. At the top are themes, which are broken up into epics, then user stories, and finally tasks. Because each item rolls up to the one above it (e.g. tasks belong to user stories, user stories to epics, and epics to a theme), you should approach the process of structuring your work from the top-down.
Product goals must come first. A goal-first approach ensures that all agile development work can be linked back to the overarching product strategy. This gives your work a greater purpose and promotes alignment across product teams. Themes or initiatives dictate the larger bodies of work that will help you accomplish your goals.
Imagine that one of your product goals is to increase the number of active users on your app by a certain percentage over the next twelve months. You will identify themes of work to increase users in key areas and then break that work down into epics, user stories, and tasks — with everything traceable back to the top-level goal. In the visual below, you can see how all of these pieces fit together with examples.
With this framework in mind, let's take an even closer look at what each term means.
What are agile themes?
Themes establish the connection between your strategy and the work — helping you prioritize and deliver the most value to customers and the organization. Because themes represent major areas of investment across business and product goals, agile themes often align with strategic planning periods (like quarters or years).
Agile themes are strategic initiatives. They describe the high-level direction for the development work that will help you realize your goals.
A theme is the largest unit of work in agile development — all related epics, stories, and tasks fall underneath this umbrella.
How to use
Agile theme example
Introduce tracking enhancements to our cycling app.
What are agile epics?
Epics provide a level of organization between broader themes and individual user stories. You can think of them as categories or parents for user stories. Epics help you carry your strategic ideas forward while you begin to define more tactical work.
Agile epics are large bodies of work often encompassing several user stories. They describe major product requirements or areas of functionality that define a user experience.
Epics are typically delivered across multiple releases.
How to use
Agile epic example
Enhance the cycling app's GPS tracking functionality.
What are agile user stories?
As you move down the hierarchy, there is a shift from strategic and organizational items of work to tactical ones, like user stories. User stories help you translate your goals, themes, and epics into actual day-to-day development work.
In most cases, multiple user stories will be categorized into epics.
Agile user stories define a discrete product function or benefit that creates new value for customers. Ideally, you should be able to complete a user story within a single sprint.
User stories are essentially the same as product features — but rewritten from the user's perspective. The intent is to convey how users will experience the new functionality and how it will benefit them.
How to use
Agile user story example
User stories usually follow a set format:
Let's say you plan to introduce Google Maps integration as a new feature in your cycling app. To rephrase this as a user story you might say:
As you define user stories, your team might participate in user story mapping. This exercise helps you visualize the flow of your customer's interactions with your product. User story maps help agile teams think about the user experience with every part of the product. They also provide a satisfying way to organize and prioritize work — instead of using one flat backlog.
An example of how to create a user story map in Aha! Roadmaps.
What are agile tasks?
Tasks are the last piece of the hierarchy and the smallest unit of work. Not all scrum teams use tasks — sometimes user stories are detailed enough on their own. But for more complex features, tasks come in handy.
Tasks are specific pieces of technical work for an agile team. They represent items of development work that must be done to complete a user story.
How to use
Agile task example
Create pop-up message in app to alert customers of new Google Maps integration.
Remember — as you structure your agile work, consider the "why" behind it. Your product goals should be a thread of continuity throughout your themes, epics, stories, and even tasks. This mindset will help you plan and accomplish the work that matters most.
See how you can customize agile workflows for your team and build your way — try Aha! Develop for free for 30 days.
- What is agile software development?
- What is an agile roadmap?
- Common agile development methodologies
- Agile vs. lean
- Agile vs. waterfall
- What is the Scaled Agile Framework®?
- Best practices of agile development teams
- What is unit testing?
- What is DevOps?
- What are some DevOps best practices?
- DevOps and "continuous everything"
- What is an agile retrospective?
- Introduction to agile metrics
- What is a burndown chart?
- What is agile transformation?
- What is issue tracking?
- What is the role of a software engineer?
- Agile glossary