Spotlight on Spira 7.7 - Scaled Agile Program Capabilities & Milestones

6-Jun-2023 by Adam Sandman Product News

We are excited to announce the upcoming release of SpiraPlan v7.7 at the end of the month. This new version of our Enterprise Agile Planning platform includes the first major component of our Scaled Agile roadmap - the ability to plan and manage a program-level backlog, with program capabilities and milestones. These 

SpiraPlan (only) features add functionality to Programs to help users manage the delivery of features and releases across multiple products at once. Brand new program-level artifacts let you scale your agile practices beyond products like never before.

inflectra-spotlight-on-spira-scaled-agile-program-capabilities-and-milestones-blog-image

Read on to learn more about what is coming in Spira v7.7.

Scaled Agile Overview

As described in our Guide to Scaled Agile & SAFe Methodologies, one of the limitations of standard agile methodologies such as Scrum or Kanban is that they are designed to operate primarily at a team or product level. Therefore, scaled agile methods have seen a recent boom in popularity as companies realize they need to be able to manage larger solutions (called programs) and collections of different related products (called portfolios).

Our roadmap for SpiraPlan is for it to be the premier platform for allowing organizations to meet the challenges of scaling agile, both now, and in the future. Therefore, SpiraPlan has been designed to support many different frameworks allowing organizations to adopt them into methodologies that address their challenges. Consequently, we will be using the term “scaling agile” more than “Scaled Agile” since the latter has become associated with a specific framework (SAFe).

As part of the first component of this wider roadmap, Spira v7.7 includes the following new functionality:

Program navigation with new options

  • Manage a backlog of program capabilities (similar to requirements at the product level)
  • Define key program milestones (similar to releases and sprints at the product level)
  • Plan the backlog of capabilities against specific program milestones
  • Associate product requirements with program capabilities to track execution of the capabilities
  • Associate product releases with program milestones to track progress and completion to date

Program Capabilities

With the new program capabilities module, you can create and manage a hierarchical list of program capabilities. In this fictitious example, we are planning the key capabilities for improving the overall customer experience of a commercial retail bank:

List of program capabilities

These capabilities can be categorized into different types, such as improvements, innovations, integrations, as well as non-functional capabilities such as enablers. For some methodologies (e.g. SAFe) they might be called Solution Epics and Features. In addition, the capabilities have a priority and status associated with them. In this example, we have a new improvement to allow payment transfers to third parties:

Capability details page

The progress of the capabilities is also displayed as a colored indicator bar that denotes how many of the associated product requirements have been completed.

These types, statuses, and priorities are managed at the system-level, and can be fully customized:

Admin page where you can edit capability types

You can also define custom properties for the capabilities, including all of the standard property types (rich text, plain text, dropdown list, multi-select list, etc.):

Capability custom properties

Finally, you can associate the capabilities with the product requirements (epics, user stories, etc.). In this example, we have features from both the mobile banking and web banking products that are needed to realize this new payment capability, so until all four product features are completed, this overall capability is incomplete:

Capability page showing the associated product requirements

The status of the individual requirements will be used to calculate the overall progress of the overarching capability. For example, in the screenshot, there are four requirements, two are in the completed status, and two are still in progress (developed counts as in progress). Therefore the overall progress indicator shows that 50% of the capability is complete. The relationship between capabilities and requirements is "many to many" for maximum flexibility.

The capability is targeted to be completed by a specific program milestone - interbank connectivity - as illustrated below:

Capability details page showing milestone link

Now we can discuss how SpiraPlan will let you manage the program milestones themselves.

Program Milestones

In SpiraPlan, the primary way of time-boxing the solution backlog is through program milestones. They are the program equivalent of product releases and sprints, although they are meant to much higher-level, often aligned with fiscal quarters or representing an organizational deadline by which series of capabilities need to be delivered. Unlike product releases they are a simple flat, sortable list rather than being hierarchical. They can be categorized by type and status, and are displayed along with their planned start date, end date, completion progress and any custom properties defined by the administrators.

Program milestone list

The program milestones grid can be configured to show/hide different columns, similar to the program capabilities grid and the equivalent grids at the product-level.

Show/Hide milestone columns

SpiraPlan lets you view the details of each milestones in a standard Spira artifact details page, complete with standard fields, custom properties, status, rich text description and tabs for the associated artifacts. One key unique feature is the ability to set the planned start date and end date for the milestone and compare that to the actual minimum and maximum start/end dates for the product releases that are associated. These are called the child start date and child end date.

This lets program managers set the high-level deadlines, with the individual product teams free to manage their own schedules, yet still allow the program managers to have visibility if there is a projected breach of the deadline.

Milestone vs. Release dates

The overall completion progress bar of the milestone is determined by the status of the associated capabilities. In this example, one of the capabilities is completed, while the other one is still in-progress. Hence the overall progress bar shows 50% complete. However since the end date of the milestone is in the past, the color of the progress bar is shown in red (vs. green). You can see the individual program capabilities by clicking on the Capabilities tab of the milestone:

Program milestone details - showing associated capabilities

If you click on the Releases tab of the milestone, you can see at a glance all of the product releases (and sprints) that are associated with this program milestone. This is association is used to calculate the minimum child start date and the maximum child end date. The relationship between milestones and releases is "many to many" for maximum flexibility.

Program milestone page - showing linked releases

As mentioned above, the program milestones are highly customizable by administrators. You can edit the list of milestones statuses and types:

Where you can edit milestone statuses

In addition, you can define custom properties on program milestones, similar to those for program capabilities.

Admin options

The image above shows the complete range of customization available for these new program artifacts.

What's Next?

Now that we have finished the core program capabilities and milestones functionality, the following functionality will be part of future releases:

  • Redesigning the Program Planning Board to use the new board user interface we introduced last year and be based on capabilities and milestones not just product requirements and releases
  • Implementing a set of program-level capability/release dashboard widgets, reporting dashboards and standard reports
  • Extending the Spira API to allow access to these new program artifacts (capabilities, milestones and related standard fields)

Beyond these enhancements at the program-level, we also have planned in 2024 to implement a similar set of features at the portfolio-level, allowing you to define/manage portfolio-level backlogs as well.

What About SpiraTest and SpiraTeam Users?

These new scaled agile artifacts are only available in SpiraPlan, so if you are a current SpiraTest or SpiraTeam user, please contact your account manager or our sales team to get a quote for upgrading.