Source: GitLab Blog | Author: Suri Patel
How planning with epics provides insight
Epics group themed items to work at different levels, depending on the individual working on the project. Product managers, engineers, and leadership all require different information from projects, and epics enable teams to stay connected without getting lost in a sea of issues.
“Epics are collections of work that move teams towards a goal and can be business or engineer focused. Operations teams might need to take a closer look at meeting customer needs, solving a problem, or rolling out a feature. An engineer might care about the very specific pieces of work they need to do to accomplish something, to release the next segment, or to put up the next MVC. Epics allow you to organize work, providing visibility at the right level. Different teams are all connected and related with each other, so we’re able to stay lockstep in our proper zones.” – Keanon O’Keefe, Senior Product Manager
Epics break down information silos, since team members can quickly access information across a project. Without epics, teams may have to trudge through thousands of issues to identify relevant data. Cleanly sorting issues into epics results in an increase in visibility and a reduction in cycle time.
When we released GitLab Epics in 11.3, our MVC offered simple functionality and a roadmap. In recent months, we’ve started to iterate on those original MVCs to provide real value versus function. We’re working on three significant iterations on epics to help teams enhance their workflow.
1. Create issues from epics
Users can now create issues directly from epics, removing the step of navigating to a new tab before switching back to relate the issue to the epic.
This improvement allows users to create a new issue directly from an epic.
With this improvement, users can create issues that correspond to a given epic, enabling them to break down a project into more digestible vertical feature slices.
A quality of life improvement
The Plan:Portfolio team received user feedback that it was frustrating to manually create and relate issues in separate tabs. These additional steps disrupted workflow and didn’t meet expectations on how to efficiently iterate on a roadmap. With this quality of life improvement, users can now quickly iterate on the issues that comprise the larger epic.
By automatically relating issues to epics, users will no longer “lose” issues if they forget to manually relate them. This feature saves teams time and simplifies organization and planning.
2. Weight and progress on roadmaps
When viewing a roadmap, users can quickly understand the completion progress of each item. This information helps teams determine whether an epic is on track to be completed by the assigned end date.
If issues aren’t groomed regularly, especially when it comes to issue weights, it can be difficult to trust any progress completion data on a roadmap, because it may not consider the historical velocity of the team implementing it. With this improvement, teams can quickly retrieve accurate, reliable data.
An increase in visibility
This feature gives teams the ability to look at the roadmap and immediately recognize whether a project is behind or ahead of schedule. Previously, users had to manually calculate progress and estimate whether goals were attainable. This new view helps teams report progress outwards, allocate additional support to lagging items, and gain better visibility into the progression towards goals.
The new view will allow users to see quickly whether a project is on track.
“Team members can self-serve information. And from a product manager’s perspective, especially when you look at a company like ours in which we’re all remote, if I need an update that’s not documented in an issue, I might have to wait until one of my engineers in APAC comes online to answer the question. If everything is demonstrated on a roadmap from a progress complete perspective, that can help me answer questions to customers or upper management on where things are at, without having to wait for a response from somebody else.” – Keanon O’Keefe
The idea is that it saves time, because a manager, director, or executive who looks at this roadmap has instant insight into progress. They don’t have to ping the engineering manager who may then need to ping the developers. We’ve reduced the necessary steps in communicating progress and the ability to share information.
Tip: This feature depends on leveraging the weight option. Keanon recommends weighting every issue assigned to an epic to provide the most accurate representation of the amount of work associated and your progress.
3. Expand epics on roadmaps to view hierarchy
Child epics are now displayed under their parent epics on the roadmap, enabling users to view the hierarchy of work. With this feature, users can get a detailed view of the work involved over a timeline. Because users can view hierarchy, they’re able to quickly see related work to track progress and determine whether an overall project will meet a goal.
This feature gives users a detailed view of work involved over the project timeline.
“What this change will do is allow you to look at a parent epic and actually click on it so that it expands kind of like a drawer. It will show the parent epic, which might be something that someone at an executive or director level cares about, while individual teams or engineering managers can view more granular details with child epics.” – Keanon O’Keefe
This improvement complements weights and progress on roadmaps, since it provides even more ways to view data and details.
An ordered approach
From an organizational standpoint, this iteration enables teams to properly sequence their plans. For example, teams that need to build a section of the backend before starting work on the frontend can quickly determine whether they’re on track to meet timelines or how much more work needs to be completed before another team can begin their work. This is our first step in empowering teams to sequence their work, and it’s an opportunity to allow teams to tailor the view of the roadmap to the audience.
“We have a great set of designers, engineering managers, developers, and product people in Plan. I’m very impressed at how quickly everybody rallied together to move things forward. Many of these iterations are difficult from a design perspective, and I’m impressed with how the team approaches challenges and determines how to get the right data and visual at the right level, while allowing teams to drill down or drill up easily.” – Keanon O’Keefe
Tip: It’s important to assign start and due dates to epics, whether you leverage the dates that are inherited or ones you set manually, so that child epics are properly displayed on the roadmap in relation to their parent.
What’s next for GitLab Epics?
The team is just getting started with its improvements to GitLab Epics. This is an area that we’re committed to accelerating, and we want to offer the most effective tools for product and portfolio management. “We’ve built out a strong team, and we’re hitting our stride and reaching our potential for releasing functionality,” says Keanon.
One of the next opportunities the Plan:Portfolio Management team will undertake is collaborating with Plan:Certify on dependency mapping, which will enable teams to surface dependencies on the roadmap. With dependency mapping, development and operations teams can view a sequence of work, identify blockers, and understand whether they’ll meet target deadlines. This feature will help larger organizations plan multiple projects simultaneously, see dependencies, and identify a critical path of work.
“We are just getting started with delivering tools that offer functionality between different groups. We have some exciting features coming soon.” – Keanon O’Keefe
If you’re interested in learning more about the team’s direction, please read more about the vision for Epics.
Thank you to Keanon O’Keefe, Senior Product Manager, Plan:Portfolio Management, for contributing to this post.