The agile methodology is a project management system that focuses on reactivity, adjustability, frequent repetition, and autonomy.
Agile was developed by a group of 17 individuals who set out to seek methods to improve developer productivity. In this article, we focus on one component called an Epic in agile circles. We will look at what is an epic in agile and its role in a much larger system.
What is an Epic in Agile?
In Agile project management methodologies, an Epic is a very large task/requirement that must be broken down into smaller and more manageable user stories.
Using the Fibonacci Series method of sizing tasks, an epic is anything that is 21 or above on the Fibonacci scale.
Furthermore, because epics are so large, they can be broken down into smaller sizes and distributed across sprints.
Breaking down epics makes them more digestible and less intimidating. Imagine you have a full cake that you have to eat. Eating the whole cake in a single sitting is impossible. However, if you cut the cake into smaller pieces and slowly but surely eat the cake piece by piece, it will eventually be finished. You can even invite your friends to help eat the cake.
In essence, this is what happens when tackling epics, you divide the epic into smaller pieces that a development team can complete across several sprints and you can even distribute the pieces of an epic to different development teams so that finishing the epic becomes a collaborative effort.
Generally speaking, an Epic is a high-level user requirement. Therefore, it is subject to change as new feedback and data become available to the production team.
Above all, epics give developers a method to structure their work and build hierarchies so that the project is more ordered and easier to navigate.
Epics in an Agile Framework
When several epics share a common objective they are bundled together into a theme. A theme is much higher on the hierarchy than epics. It is much larger than an epic since it is made up of several common epics that have been combined.
Themes are long-term objectives and they cannot be completed in only a couple of sprints as you do with epics.
As previously said, an epic is a big chunk of work that is impossible to complete within a single sprint. It is usually an overall requirement/objective that a client. Epics can be spread across sprints and development teams.
To make them more palatable, epics are sliced into smaller tasks called user stories.
User Stories is a brief description of a product feature or issue from the end-user’s perspective. User stories are usually the smallest unit of work in an Agile Methodology.
How to Breakdown an Epic in Agile?
Breaking down epics into smaller pieces helps developers organize a relatively large job into understandable steps/processes. A broken-down epic must have user stories that once completed, bring the epic closer to completion.
Here are some methods used to break down epics within an Agile Methodology:
A workflow breakdown of an epic is done by dividing the epic by the tasks. Imagine you are planning a birthday party, a workflow breakdown would separate the epic, “Plan a birthday party,” into smaller tasks like ‘buy a cake’, ‘rent a venue’, ‘send invitations’, etc.
This separation is task-based and therefore it’s easier to prioritize more important user stories.
A role-based breakdown divides the epic into smaller pieces by the roles of team members as partitioning criteria. Taking our party planning example a step further, the role-based division will divide the epic based on the abilities and requirements of each team member.
Breaking down an epic based on the timeline depends on three things
- The size/weight of each task
- The time needed for each task
- The interdependency of the epic
Timeline partitioning prioritizes how much time and effort each task will need and then sort the user stories according to that criteria.
Epic In Agile Example
As a customer, I want to be able to wishlists so that I can return later to buy shortlisted products.
User Story 1
As a customer, I want to be able to save a product in my wishlist so that I view it again later
User Story 2
As a customer, I want to be able to view my wishlist so that I can buy items from it.
This epic and user story example was adopted from this image.
As a customer, I want the ability to add items to my cart page.
User Story 1
A user can add his/hers chosen items to the cart.
User Story 2
Users can remove unwanted items from their cart.
This epic and user story sample was adopted from this image.
Measuring an Epic in Agile
A Burndown Chart is a good way to track an epic’s progress towards completion. To the uninitiated, a burndown chart is a graph used to visually represent the amount of work that is waiting to be done compared to the time left. Burndown charts help product teams predict when they will finish and if they are on schedule.
A burndown chart has the ideal work rate and the actual work rate. Therefore teams can easily check if they are on/behind schedule.
Conclusion –What is an Epic in Agile
What is an Epic in Agile? This question might have blocked your journey towards becoming an agile expert. But now you are one step closer to mastering Agile project management methodology.
For more info on Agile Methodology, feel free to research the following article!
If you want to learn about sprints in Agile, click here!