Have you ever had to face problems where you have considered an epic in Jira as a portfolio or a program epic, and you are unsure of the difference between a portfolio epic and a program epic?
Do you find it difficult to plan and track your version of a portfolio epic whilst the delivery teams are using the same terminology in their execution?
It is not uncommon to be facing these problems. The root cause generally for these problems stems from not completely understanding what Portfolio Epic and Program Epic are. As well as limitations in certain tools that use the same wording. After reading this article, not only will you be aware of the clear difference between a Portfolio and a Program Epic, but you will also be learning how and why Portfolio and Program epics should be tracked.
What is a Portfolio Epic?
A Portfolio Epic in the Scaled Agile Framework (SAFe) conveys a piece of functionality that has a scope broad enough to be completed in one or multiple PI’s or value streams spanning within a year. A portfolio epic can consist of the following aspects:
- Business approval
- Strategic Themes/OKRs
- Overview of resources
- Budget
- Description
- Timeline/Roadmap
- Risks
An important aspect of a portfolio epic is that it includes estimates or monetary benefits for the epic that can be defined as:
- Customer value
- Future value
- Market value
- Commercial value
What is a Program Epic?
A Program Epic is a more detailed piece of functionality that can be broken down into elements such as user stories which can then be built and executed. A program epic can consist of the following elements:
- Description
- The outcome you aim to achieve from the epic
- Non-functional requirements
- Which scope it is part of i.e MVP or enhancement
- Functionality that is out of the scope
- Business benefit
- How the outcome will be tested
The Differences
The difference between a Portfolio Epic and a Program Epic is evident; a Portfolio epic is more concerned with the monetary value and the finances involved in working on it while a program epic is catered more to the development teams focusing much on the implementation and diving more into the user stories that would emerge from the breakdown and refinement of the program epic. A portfolio epic can contain multiple program epics.
Understanding the Need for Portfolio Epics
In an agile development environment, it is normal for a project to have its scope and priorities change over the course of its execution. It is definitely not a surprise when a project gets delayed or even abandoned during its execution.
The beauty of any agile development framework is that it focuses more on defining processes and building a mindset that makes it easy to understand what you are working towards and what will be achieved. Usually, the cause of any problem stems from an incomplete understanding of the scope of a portfolio epic and misusing naming conventions does not help.
With that being said, having an incomplete understanding of an agile framework at more than just the development level, rather it also exists at the top; the project, program, or management level. It is vital to see from their perspective as well.
It is good to focus on the delivery and the efforts of the development team but it is also crucial to take a step back and see how things are at the management level. It is important to understand the power and benefit of having Portfolio epics. SAFe does go in depth in discussing the need for having a Portfolio Backlog but it still may not be visible at any given time how much of it is being actually implemented.
Take any popular delivery tool into consideration. There is so much focus on all the aspects that contribute towards the delivery at the development level but on the portfolio level, there are not many options available for keeping track of the changes made which may of course have far-reaching effects if not tracked properly and timely.
It is important to know that a Portfolio epic plays a very significant role in setting the tone and the direction of where all the developmental efforts would go. Similar to all development efforts, there are Roadmaps, OKRs, resources, risks, and dependencies involved at the Portfolio level as well which are of complex nature and if not dealt with in time can lead to complications.
Small changes with a portfolio epic need to be transparently laid out as this can lead to huge problems when cascading down to the delivery. In large organizations, multiple portfolio epics are being implemented simultaneously, which need to be visualized properly. Hence the need for having varying views and roadmaps for products being built.
A Portfolio Epic encompasses everything that can be needed for its completion. It can have the teams or people involved, the value that will be provided, objectives, scope, strategic themes, compliance, dependencies, or risks. You need to emphasize a lot more in a portfolio epic as this will inevitably drive the efforts of what will be done at a delivery level.
The portfolio level needs to be flexible enough that it acts as an umbrella for the deliverables in order for the teams to make the changes necessary to complete the goal of their portfolio level.
Tracking Portfolio Epics
When it comes to tracking a portfolio epic and a program epic, the problem arises when you cannot track them effectively. It is essential to know the difference between a portfolio epic and a program epic as both of them require different ways of managing and tracking them.
Given a portfolio epic’s vast span, it needs a high-level overview so its tracking is going to be different than tracking a program epic, feature, or user story.
So tracking a Portfolio Epic in a tool like JIRA or Azure DevOps can make it difficult, seeing how these tools are better suited for only tracking the delivery of program epics or user stories. SAFe uses a portfolio epic almost like a project or a program, which when tracked with your choice of a software tool, takes away the essence of its definition.
It is crucial to have the ability to see a transparent picture of what a Portfolio Epic consists of, so it can become easier to track and have the flexibility to adapt to any changes that can come from the customer or stakeholders at any point in time.
Another aspect to ensure is that large organizations are usually working on multiple projects at the same time. Meaning, there are multiple portfolio epics involved which are being worked on by different teams, or locations at the same time. Given the importance of tracking a portfolio epic, it is also essential to consider that there is a need of tracking multiple portfolio epics at the same time.
Conclusion
It is not always about program epics and development but rather the aspects that need the most planning and endless discussions to make what’s possible towards working towards the program epic. It is essential to have discussions regarding elements that make it easier for program epics to be easily implemented.
When you are working on an epic in JIRA, there are a lot of things to consider. Portfolio epics need to be treated differently. It’s not just delivery you have to focus on. In fact, it should be the last thing that needs to be talked about. There is a lot of work that goes on before reaching the stage of delivery. Tracking is very very important when it comes to delivering complex amounts of work.
At the end of the day, it all comes down to striking the perfect balance between rigidity and flexibility. If done right, attaining this balance will help provide the necessary visibility and transparency that can help communicate the expectations and priorities properly. Understanding that Portfolio Epics are meant for laying the foundation for delivering Program Epics consisting of developmental efforts.