As SAFe® consultants usually recommend, your Program Board should present dependencies between both scrum and kanban (although the latter don't work in sprints) so that all teams in the ART are aligned. It is suggested that selected work items assigned to kanban teams during the planning session should be placed in the column of some iteration according to the "due date" established (even though kanban teams don't work in iterations).
How can you manage that in BigPicture?
Option 1 - Shared sync mode (new Board)
In case all the scrum teams can use technically the same sprints in Jira, we suggest using "Shared" sync mode in Board 2.0 module. The team assignment is based on (and propagated to) the value of "Team field" in that mode (it can be configured in Jira Administration (Global configuration - Resources configuration)). Value of a Sprint determines to which iteration a task is planned for in BigPicture Board.
As a result:
all Iteration backlogs for scrum teams would be synchronized with respective Jira sprints according to the configuration of Board module (you could then take advantage of the bi-directional synchronization between our app and Jira),
when it comes to the Kanban teams, even though they don't work in Sprints, you would still be able to plan the tasks for them on the board in BigPicture. You can do it by manually dropping tasks onto the respective iteration (column) on the board based on the e.g. due date established during the planning and create cross-team dependencies that you identified. Once such a task is planned on the board, BigPicture will update Sprint field value for this particular Jira issue based on synchronization settings, even though a Sprint field is not added to the screen scheme for this issue. Thanks to that, Kanban teams could still work within their Kanban boards in Jira and would not even be aware that Sprint was set for the issue so that the task can be presented BigPicture Board correctly. At the same time, a Release Train Engineer can see all dependencies between scrum and kanban teams on the Program Board in BigPicture.
There could be also some room for automation of the process by applying a script (e.g. with ScriptRunner) on the Jira side. For instance, after a user updates due date of the issue that is assigned to the Kanban team, a script could set the respective Sprint for the issue based on the date (I suppose your kanban teams set sometimes due date for their stories, especially when the story is dependent on the other team). Consequently, once the Sprint is set, such an issue would be automatically planned for a right iteration on the Board in BigPicture Program automatically (without the necessity to do it manually by dragging it from the backlog and dropping onto the right cell on the board). Since BigPicture Board can be updated based on the value of Sprint field, it could be a good workaround allowing you to automatically visualize in the Board module only some scope of work assigned to Kanban teams e.g. only the issues with due date set.
You can choose any business rule according to your customer needs by setting a Sprint value with the script (relying on a due date field is just one option) - for BigPicture it's only crucial to get the synchronized value of a Sprint according to the configuration of the scope synchronization and then, your Program Board can always display you up-to-date plan.
Option 2 - Team specific sync mode
In case, for some reason, scrum teams need to have separate Sprints in Jira instance, you need to use "Team specific" sync mode by configuring scope synchronization of new Board module. At the moment, you need to fulfill configuration for all teams in your Program in that mode so that you would be allowed to save settings. But the good news is that we are currently developing a functionality that would allow synchronizing iterations on the BigPicture Board with Jira sprints for selected teams only and to leave scope not synchronized (empty configuration) for the other teams (e.g. for Kanban teams).
You can create a new Program in BigPicture with Board 2.0 module activated and set up scope synchronization of that module this way so that iteration backlogs of the scrum teams will be synchronized with their own Sprints but Kanban teams can have an empty configuration. As a result:
Kanban teams on the Board can work as if there is no sync between BigPicture Board and Jira (which means that planning a task for Kanban team on the Board will not update Sprint field in Jira)
you will be able to plan the selected tasks for Kanban team on the Board in BigPicture and visualize their dependencies between scrum teams during PI planning (and execution of the increment as well).
Detailed guide on the configuration:
Configure the app (requires Jira Administrator permissions)
Start with the Global configuration - Task configuration section where you can define the mapping of your Jira issues to fields wich will determine the start and end dates of your work items. As you will be planning your work in sprints, there is no need to use dates at the task (Jira issue) level and you can select the '– Not synchronized --' options for Start date and end date fields.
- In case, you are have already defined the dependencies between issues using your custom links or native Jira dependencies you can map the dependency link as a soft link in Global configuration - Link configuration. The agile dedicated modules do not use traditional end-start, end-end types of links, only the 'soft links'.
- In order to use the agile modules, you are required to create Teams so make sure to select a way to identify the assigned Team in Global configuration - Resources configuration. Using labels is more convenient as they can be generated automatically and you will not be required to predefine the select options.
- Another important sections is the Global configuration - Security (obsolete) to grant permissions to users.
- Last step is to check if your Risk matrix matches your organization - change the field mapping or update the select options if required in Global configuration - Risk configuration. Select options can be changed in Jira Administration > Issues > Custom fields. The dimensions of the matrix can be changed by narrowing the select options.
Administration (requires app's admin permissions)
- Before you create your schedule there are a couple of more items which need to be configured summarised in Administration - Interface overview.
- Your Teams' capacity is derived from individual workload and holiday plans and the default values can be edited in Administration - Workload plans and Administration - Holiday plans. Please note, that you do not have to use those plans to calculate the capacity as you can always overwrite the defaults using the Board (at the iteration level only).
- If you are using Tempo apps, the above data should be already available - all you need to do is to synchronize with Tempo using BigPicture Enterprise (Integration with Tempo is not available on Jira Cloud).
- You are now ready to create your Program!
Create a Program
- Go to the Program manager and click the '+Add new Program' button. The Program Wizard will facilitate the process. Concept of a Program Box section explains how Program can be used with your Jira, long story short, a Program can be used to represent a your Products' and sprints' backlogs and all work already planned in sprints.
- If your project data is stored in Jira use the Program Wizard - Creating a new Program and a very important step is to define the agile schedule and WBS presets. Don't worry, you can do that later in Program Configuration - General - Agile schedule.
- Last step is to create your program.
Working with a Program
- There are different modules which you can use depending on the methodology. You can change which modules are available in Program's configuration at any time.
- Here is an example of how to manage your program starting with the Scope, Roadmap and Board modules. The most important settings to make your life easier and to automate your work include:
- The already mentioned Program Configuration - General - Agile schedule - to define the iterations and Program Increments.
- Program Configuration - General - Task structure - generate the WBS of your Epics, Stories, and Tasks automatically (you can also use the presets .
- Board - Capacity planning - define the capacity of your Teams.
- Set the main goals for each sprint using the Roadmap module - Objective types and lifecycle.
Now, using the Board module you can plan your sprints and inline edit your estimates if necessary - Board - Working with the Board. Customize your backlog - Board - Backlog - Tasks in Backlog to see the relevant information about your work items (e.g. Story points estimate, WSJB). Check the conflict indicated by red Board - Dependencies (Soft-links).
- Next step would be to identify and assess the risks using the Risks module.
- Use the Board - Reports to monitor the sprint execution and the work planned vs capacity.
- Use different modules to monitor program and to communicate with stakeholders. The following modules will help you to achieve that goal: