Hi, I’m Jasmin Iordanidis, product marketing manager here at Easy Agile and today we’re going to walk through the key features of Easy Agile Programs.
If you’re struggling to effectively manage programs or agile release trains, or are part of the team whose work is scheduled, Easy Agile Programs streamlines visibility and visualises dependencies in the PI for all involved.
Remote, distributed or face-to-face teams are easily aligned when you have a single, transparent and digital view of your Program - right inside Jira.
Easy Agile is also a proud Scaled Agile partner. If your organisation is using the SAFe to implement agile at scale, Easy Agile Programs is a powerful digital tool to support PI Planning.
Let’s take a closer look.
Easy Agile Programs has three key layers to orientate yourself with, each representing a different level of focus and detail.
The Program Roadmap is the top layer and ensures all teams are aligned on committed features for a Program Increment or PI. It is a timeline overview of all scheduled increments for a Program. It’s from this view that you can create milestones, or view dependencies at a feature level.
The Program Board is the middle layer of the tool, and much like the ‘on the wall’ Program Board - it’s a single view of the work scheduled within the Program Increment and its sprints, as well as the work that has dependencies between teams. The Shared Team Features swimlane is a clear indication of all the features shared by the team for the Program Increment in question. The Program Board is a key output of SAFe PI Planning, but the ability to toggle detail on and off means this digital Program Board can focus conversations for effective ART syncs, Scrum of Scrums or PO Syncs for remote, distributed or collocated teams.
To see what your team has committed to or to create and schedule work into your Program Increment Sprints from your team backlog, visit your Team Planning Board. Here you can also create and view dependencies of work with other teams through simple drag and drop, or dependencies between stories within your own team. The Team Planning Board is useful for team breakout sessions during PI Planning, but also for Sprint Planning and daily stand ups during the PI.
Once installed, you can access Easy Agile Programs from your Jira board by clicking on the Programs icon in the project sidebar.
For Release Train Engineers, or users who have Manage Programs permissions, you can also access Easy Agile Programs from the drop down in the Jira Global Navigation menu.
Click on view all Programs to view the Programs List. From here you can view all Programs and their current increments, as well as create a new Program.
In this example, we’re going to walk through the Space Travel Program.
To navigate to the Program Roadmap for your Program, click on the Program Name.
What we’re seeing here is a timeline view of all the Program Increments that exist within a Program. The blue boxes represent the Program Increment. The Program Roadmap represents a holistic view of our Program.
Within our Program Increment, we can easily see the Epics or Features scheduled for the Program Increment in question - representing what the collection of teams are hoping to achieve within this time box.
From the Program Roadmap Release Train Engineers can do three key things to support PI planning:
To Schedule Features or Epics onto the Roadmap, click the’Edit Roadmap' button in the top right hand corner of the blue Program Increment Box.
On the left hand side we have the Increment Roadmap, with a Shared Team Features swimlane and individual teams swimlanes. The Shared Team Features swimlane represents work shared by more than one team for this PI. At the moment, our Team Swimlanes are empty. To schedule Features or Epics into the team swimlane, we simply drag and drop an existing Feature or Epic from the backlog into the relevant swimlane or sprint. Feature or Epics can also span multiple sprints, and we can represent this by clicking the edge of the issue and dragging it over our desired number of sprints.
You can also Create a new Feature or Epic from the Increment Roadmap.
Jira Admins and team members with Manage Programs Permissions can also edit their Program from the Program Roadmap.
From this screen you can:
Please note that if you change the Program Name, this will also change the Program custom field which is added to every issue scheduled into the Program.
From the Program Roadmap you can also create milestones to clearly represent milestones to business stakeholders or the team, such as demo, release and launch dates, external events, or third-party deliverables alongside features planned in a Program Increment.
To create a new Milestone on the Program Roadmap, click the ‘plus milestone’ button in the top right hand corner. Name your milestone, set a start date and an end date if you wish. Select a milestone colour and hit ‘save’.
Your milestones are now visible on your timeline.
To Schedule Features or Epics onto the Roadmap, click the’Edit Roadmap' button in the top right hand corner of the blue Program Increment Box.
On the left hand side we have the Increment Roadmap, with a Shared Team Features swimlane and individual teams swimlanes. The Shared Team Features swimlane represents work shared by more than one team for this PI. At the moment, our Team Swimlanes are empty. To schedule Features or Epics into the team swimlane, we simply drag and drop an existing Feature or Epic from the backlog into the relevant swimlane or sprint. Feature or Epics can also span multiple sprints, and we can represent this by clicking the edge of the issue and dragging it over our desired number of sprints.
You can also Create a new Feature or Epic from the Increment Roadmap.
The Program Roadmap is where Release Train Engineers can also create new Program Increments. To create a new Program Increment, click on the blue ‘New Increment’ button. When creating a new increment, we must:
Now that we’ve navigated our way through the Program Roadmap it’s time to dig into the next layer of Easy Agile Programs - the Program Board. This layer is the connective tissue between the Program and Team layers and represents the work scheduled for the PI in question.
The Easy Agile Programs Program Board digitises the SAFe Program Board, effectively taking the Program Board ‘off the wall’ and integrating it within your workflow right inside Jira.
The Program Board provides a holistic overview of all the teams within a Program, indicated by individual swimlanes highlighting the work each team has scheduled into sprints.
Importantly, this view also shows the cross-team dependencies, and the health of those dependencies.
The Feature or Epics you see in the Program Board are the same as those you see within the blue Increment box on the Program Roadmap view.
Our digital Program Board allows us to toggle detail on or off depending on the agile ceremony or level of detail needed according to the focus of a conversation. This includes toggling dependencies and team level issues.
You can also apply filters to the Program Board. Quick filters are available for Programs configured using a dedicated Roadmap board.
Let’s take a closer look at the key elements.
From the Program Board, we can schedule Features or Epics onto our Roadmap by clicking the ‘Edit Roadmap' button in the top right hand navigation. This takes us to the Increment Roadmap view, where we can create, schedule, reprioritise, edit or delete features.
On the left hand side we have the Increment Roadmap, with a Shared Team Features swimlane and individual teams swimlanes. The Shared Team Features swimlane represents work shared by more than one team for this Program Increment. To schedule Features or Epics into the team swimlane, we simply drag and drop the existing Feature or Epic from the backlog into the relevant swimlane or sprint. These will be reflected on the Program Roadmap and the relevant team Planning Board.
Feature or Epics can also span multiple sprints, and we can represent this by clicking the edge of the issue and dragging it over our desired number of sprints.
If you wish to schedule an issue into multiple Program Increments, this is also done from the Increment Roadmap screen by dragging and dropping an issue from the Roadmap backlog onto the Increment Roadmap. Provided the issue is not set to done, you will find it in the backlog.
Just as you can on the Program Roadmap, you are also able to create and edit a milestone from the Program Board to see relevant release dates, events and deliverables in the context of the work scheduled. You can opt to have milestones visible or to hide them from view, with an indication of how many milestones are hidden at all times.
The Shared Team Features swimlane runs along the top of our PI, visualising when the work for these Features or Epics is expected to start and when it is due for completion.
Above the Shared Team Features swimlane, we can see the number of Sprints that make up our PI, aligning our teams on a synchronised cadence.
Release Train Engineers can toggle a feature from the Shared Team Features swimlane to see which teams are working on that particular feature or epic as part of this PI, and whether any work has been scheduled outside the scope of the Feature or Epics schedule.
The Shared Team Features Swimlane is also collapsable.
Down the left hand side of our Program Board, are the Teams in our Program. In Easy Agile Programs, a Team is equal to an Agile Board in Jira, so this means these are the names of the agile boards we’ve chosen to include in our Program.
Beneath each Team, we’re able to see the work they’ve got planned under each of the PI sprints for this Increment, including the issues related to the Epics in the Shared Team Features Swimlane. Clicking on an epic displays the related issues.
To focus the view of the Program Board to just features or epics, you can opt to hide team level issues from the view settings menu.
Team swimlanes can also be reordered from the elipsis menu in the row which lists the Team name. Simply opt to move a team’s swimlane up or down to your desired placement. This order will be reflected across all all screens of the app.
You’ll also notice the coloured dependency lines running between stories on different Team boards or within a single Team’s board. The colour of these lines represent the health of the dependency between two issues.
A green dependency line, indicates the dependent issue is scheduled in a sprint before its dependency and is therefore healthy.
An orange dependency indicates that the dependent and dependency are scheduled in the same sprint.
A red dependency line, indicates the dependent issue is scheduled in a sprint after the dependency and is therefore a blocker, or unhealthy.
Under the view settings menu, a Release Train Engineer or Product Manager can toggle on or off which dependencies they’d like to see, allowing you to quickly and easily identify any blockers or at risk dependencies.
Feature level dependencies will be visible on the Program Board, as well as issue level dependencies provided team level issues are also toggled on.
While we can see the dependencies on the Increment Overview, it’s on the Team Planning Board where we create those dependencies and this is what we’ll look at next.
We’re now looking at the Team Planning Board for the Space Travel program.
This is the third layer that makes up Easy Agile Programs.
This is where each Team in a Program would come for their team breakouts during PI Planning, as well as during Sprint Planning and daily stand ups. Each team has their own Team planning Board where they have access to their own backlog, can create and schedule existing issues into their PI sprints, and most importantly, where teams can come to create dependencies.
Let’s walk through the key elements we’re seeing.
Along the top, we have the PI broken up into the sprint names that have been mapped to this PI. If the PI is configured to use global or shared sprints, these sprint names will be the same for each of the team boards on the program. We can also see the date range for each sprint.
If your team uses a Kanban board, your Team Planning Board will automatically be divided into columns which represent the sprints or iterations in your Program.
Beneath the sprint names and dates, we are able to set the capacity of each of our team’s sprints. Estimating the work scheduled in our sprints will roll up to this section so we can keep track of whether we’re in scope or overcommitting.
We can see all of the Team’s work has already been scheduled beneath each Sprint on our Team Planning Board.
Teams can access issues to schedule onto their Agile Boards by clicking on the backlog button in the top right corner.
To filter the work scheduled into the PI, we can click on the Features or Epics along the top. You’ll notice this also filters the issues related to the selected epic on the backlog. Additionally, we can use use quick filters to filter issues in the backlog and on the team planning board. This helps teams to prioritise work during their team break outs.
Scheduling an issue from the backlog is easily done through a simple drag and drop into the relevant sprint column.
We can also create new issues directly on the Team Planning Board. First, click on the Feature the story relates to, then click on an empty space under the Sprint column.
This will create a new issue on the team’s board, schedule it into it’s assigned sprint, and link the issue to the selected Feature on the Roadmap. The issue will also include the programs custom fields.
The Team Planning Board is where teams can come for their team breakouts during PI Planning as well as planning work scheduled in the sprint. Teams can estimate effort required directly on the issue card. The total number of story points committed for the sprint is tallied in the pill beneath the Sprint name and date. This is a useful indicator to understand if a team has over-committed for a given sprint. A team’s capacity for a sprint can also be directly edited from the Team Planning Board. Simply click on the pill and adjust the capacity.
From the Team Planning Board, we can identify and create dependencies with work scheduled in other team boards as well as within our own team.
When creating an intra-team dependency, that is a dependency between two issues within our own team, we must first select the ‘Create Dependencies’ button in the top navigation bar. This puts the Team Planning Board into dependency creating mode. From here you create a dependency between two issues by clicking on them. The colour of the line will indicate the health of your newly created dependency. Don’t forget to click the 'Create Dependencies button again, to turn off this mode.
Creating dependencies between teams can be done via the ‘create dependencies’ button, or via drag and drop.
To do this, first we need to click on the teams dropdown menu to see the list of all the Team Boards that are in our Program.
The coloured pills next to a team’s name indicate that our team has dependencies with issues in another team’s PI sprints.
The number and colour of the pill also indicate the nature of those dependencies.
Selecting a team from the dropdown will place that team and the work scheduled in their PI sprints beneath your team on the planning board. This will allow you to visualise dependencies between stories on respective team boards.
Shuffling the sequence of the work will update the health or status of the dependency, and flag to both teams when the unhealthy dependency has been addressed.
To create new dependencies, drag and drop one issue on top of another to create the dependency.
If you wish to remove a dependency, simply hover over the dependency line and hit the cross.
All changes made on the Team Planning board will be reflected on the Team’s Agile board in Jira.
The Program Board will also update so that the Release Train Engineer and stakeholders will always have an up to date view of the progress of an increment. You can navigate back to the Program Board from the breadcrumbs across the top. This is where you can also navigate back to the Program Roadmap or the Program.
Easy Agile Programs is a scalable and collaborative tool not only for remote PI planning, but also for more efficient PI planning sessions in person.
It supports your team to plan, execute and track PI progress and ensure alignment on committed features to achieve agility at scale.
If you have any questions about the tool, please feel free to reach out to the Easy Agile team at support@easyagile.com.
We look forward to hearing from you and learning about your experience with Easy Agile Programs.