SAFe Release Management Azure DevOps
Configuring SAFe Hierarchies
Structuring SAFe in Azure Boards
To implement the Scaled Agile Framework (SAFe) in Azure DevOps, you need to translate its hierarchical structure onto the platform. SAFe organizes work across three main levels: Portfolio, Program, and Team. In Azure Boards, we use two key settings to mirror this structure: Area Paths and Iteration Paths.
Area Paths represent ownership and organization. Think of them as the "who" and "what"—which team owns this feature, or which product area does this work belong to? Iteration Paths represent time. They define the "when"—which Program Increment or Sprint is this work scheduled for?
Properly configuring these two hierarchies is the foundation for managing work flow, ensuring visibility, and aligning multiple teams toward common goals.
Area Paths for Teams and ARTs
Area Paths allow you to create a hierarchy that represents your organization's structure. For SAFe, this means setting up a structure that mirrors your (ARTs) and the individual teams within them. The top level is your project, and each subsequent level drills down into a more specific area of ownership.
A common practice is to create a top-level area for each ART and then child areas for each Agile team. You can also create separate areas for shared services or platform teams that support multiple ARTs.
For example, a project named "MyProject" might have an Area Path structure that looks like this:
MyProject\
MobileApp-ART\
Team-Alpha
Team-Bravo
Team-Charlie
WebPlatform-ART\
Team-Delta
Team-Echo
SharedServices\
UX-UI
Security
With this structure, you can assign work items (like Features or User Stories) to the appropriate team or ART. This allows you to create team-specific backlogs and boards while also enabling a higher-level view for Program and Portfolio management. For example, the "MobileApp-ART" team can see all work across Alpha, Bravo, and Charlie, while Team Alpha only sees its own backlog.
Iteration Paths for Cadence
Iteration Paths, also known as Sprints, define the timeboxes for your project. In SAFe, the primary timebox at the Program level is the (PI), which typically spans 8-12 weeks. Each PI is composed of several smaller iterations, usually two weeks long, called Sprints.
To align everyone on an ART, all teams must operate on the same schedule. This means they start and end their PIs and Sprints at the same time. We configure this synchronized cadence in Azure Boards by creating a parent Iteration Path for each PI, with child paths for each Sprint within that PI.
Here's how you might structure Iteration Paths for a year:
MyProject\
PI-2024.1
Sprint 1
Sprint 2
Sprint 3
Sprint 4
IP Sprint
PI-2024.2
Sprint 1
Sprint 2
Sprint 3
Sprint 4
IP Sprint
The "IP Sprint" is the Innovation and Planning sprint, a common practice in SAFe that provides a buffer for PI planning, innovation, and infrastructure work.
Once the project's Iteration Paths are defined, you configure each team to use them. The program-level team (e.g., "MobileApp-ART") would subscribe to the parent PI iterations, while the individual Agile teams (e.g., "Team-Alpha") would subscribe to the child Sprints within that PI. This setup ensures every team's sprint board is automatically populated with the correct dates, keeping the entire ART in sync.
What are the two primary settings in Azure Boards used to translate the hierarchical structure of the Scaled Agile Framework (SAFe)?
An Agile Release Train (ART) is setting up its schedule in Azure DevOps. The plan is for a 10-week Program Increment (PI) that includes four 2-week Sprints and one final 2-week "IP Sprint" for Innovation and Planning. How should this be configured using Iteration Paths?