Skip to main content

Overview

The SAFe Program Increments in Solution (SAFE_SOLUTION) plans mode loads Program Increment plans at the solution level — that is, from the portfolio project that sits above individual ART program projects in the Polarion SAFe project hierarchy. Columns represent coordinated PIs spanning all ARTs; swimlanes can be configured to show either Programs (ARTs) or Teams within the solution portfolio.
SAFe Solution Train board layout: columns PI-2401, PI-2402, and PI-2403 as coordinated PI plans, with swimlane rows for Program A, Program B, and Program C each showing their cards per PI column
SAFe Program Increments in Solution (SAFE_SOLUTION) mode requires the Siemens Polarion SAFe Solution to be enabled and a valid SAFe portfolio hierarchy to be configured in Polarion. Without it, the mode cannot discover portfolio, program, or team projects.

Plans Mode Value

Set the widget parameter plansMode to SAFE_SOLUTION to activate this mode.

How Plans Are Loaded

In SAFe Program Increments in Solution (SAFE_SOLUTION) mode, Planningboard identifies the portfolio project from the current Polarion project’s SAFe hierarchy and loads PI-level plans from that portfolio. The data service (PlanningBoardDataService) uses the SAFE_SOLUTION planning model to:
  1. Detect the SAFe portfolio root for the current project via portfolio detection logic.
  2. Retrieve all program-level project IDs within the portfolio.
  3. Load PI plans from the portfolio scope, filtered to the plan count window defined by lastPlans and nextPlans.
  4. Assign work items to swimlanes based on the configured SAFe assignment mode.
SAFe naming conventions commonly produce plan names such as PI-2401 or PI-2401-1 (containing dashes). A parsing bug affecting these names was partially addressed in version 23.8.0 and fully resolved in version 25.3.0. On earlier versions, dash-containing plan names cause incorrect column spans, zero capacity display, and missing plan shortcuts. Upgrade to 25.3.0 or later before deploying solution-train boards with standard SAFe naming conventions.

Compatible Swimlane Assignment Modes

SAFe Program Increments in Solution (SAFE_SOLUTION) mode is designed for use with the following assignment modes. Other assignment modes (such as Users (Assignee) (ASSIGNEE) or Parent Item (PARENT)) are available but are not the primary intent of solution-train boards.

SAFe Programs Assignment Mode

When assignmentMode is set to SAFE_PROGRAMS, each swimlane represents one SAFe program (ART) in the solution. Planningboard reads the program assignment from the field identified by safeProgramField on each work item.

SAFe Team Assignment Modes

When assignmentMode is SAFE_TEAM or SAFE_TRAIN_TEAM, each swimlane represents a team. The team assignment is read from safeTeamField on each work item. For SAFE_TRAIN_TEAM specifically, an ART ID parameter must be supplied to filter teams to a single ART. Refer to SAFe Train Team Mode for the ART ID field details.

Widget Parameters

The following widget parameters are relevant when configuring a solution-train board. See SAFe Parameters for the complete SAFe parameter reference and Plans (Columns) Parameters for all plan-column parameters.

Plans (Columns) Parameters

Swimlane (Rows) Parameters

Work Items Parameters

Capacity Parameters

The capacity bar in SAFe Program Increments in Solution (SAFE_SOLUTION) mode reflects aggregate effort across the swimlane and PI column. Multi-assignee effort distribution (splitting effort across several users) is not currently supported. Parallel PI capacity calculation may also differ from Nextedy GANTT behavior. See Capacity Parameters for full details.

SAFe Project Hierarchy Detection

Planningboard uses internal SAFe hierarchy detection (via SAFeImpl) to identify the portfolio context and enumerate programs and teams. The detection logic works as follows:
SAFe portfolio hierarchy tree: Portfolio Project at the root, branching into Program A and Program B (ARTs), each branching into their team projects (Team A1/A2 and Team B1/B2)
The board’s scope is determined by the project in which the Planningboard widget is embedded:
  • When embedded in the portfolio project: all programs and their PI plans are in scope.
  • When embedded in a program project: the portfolio is detected upward; PI plans from the portfolio are loaded, and team filtering can be applied.
Portfolio-level Lucene queries are built as project.id:(portfolioId). Program IDs and team IDs are retrieved as space-separated strings and used internally for work item filtering.

Configuration Example

The following example configures a solution-train board at the portfolio level, with SAFe Programs as swimlanes, showing the last 1 and next 3 PIs, with capacity tracking enabled.
In some SAFe configurations, the widget requires a Page Parameter to pass the current Program Increment ID dynamically (for example, when a page hosts boards for multiple PIs). Create a Page Parameter in the widget’s page settings and reference it via the Program Increment Parameter ID field. Without this, the board may default to the wrong PI range. See SAFe Parameters for the relevant parameter field.


Limitations

  • No multi-assignee effort distribution. Capacity bars reflect total effort per swimlane; effort is not split across multiple assignees within a single card.
  • Parallel PI capacity. Capacity calculations across overlapping PIs may differ from Nextedy GANTT behavior. If your ARTs run concurrent PIs, validate capacity results against GANTT before relying on the numbers.
  • Plan names with dashes. Fully supported from version 25.3.0 onward. Earlier versions have rendering issues with plan names matching SAFe naming patterns (e.g., PI-2401).
  • SAFe Solution requires Polarion SAFe. The SAFe Program Increments in Solution (SAFE_SOLUTION), Programs (SAFe) (SAFE_PROGRAMS), Program / Solution Teams (SAFe) (SAFE_TEAM), and Agile Release Train Teams (SAFe) (SAFE_TRAIN_TEAM) modes require the Polarion SAFe Solution license and a valid SAFe project hierarchy. They cannot be used with standard Polarion project structures.
  • Configuration UI changes by plans mode. When switching between Project Plans (PROJECT_PLANS) and SAFe modes in the widget parameter panel, some fields appear or disappear (e.g., plan stemming and sync-to-parent are only shown in Project Plans (PROJECT_PLANS) mode; the SAFe PI increment field appears only in SAFe Sprints in Program (SAFE_SPRINTS) / SAFe Sprints in Portfolio (SAFE_PFL_SPRINTS) modes). This is expected widget behavior, not an error.

KB Articles
  • Swimlane Assignment Types
Support TicketsSource Code
  • PlanningBoardWidgetRenderer.java
  • PlansMode.java
  • PlanningBoardDataService.java
  • Config.java
  • PlanningBoardWidgetDependenciesProcessor.java
Last modified on July 10, 2026