Page tree

You are viewing documentation for Structure Server and Data Center version 5.4 and patch releases. For other versions, see Version Index or Structure Cloud.

Skip to end of metadata
Go to start of metadata
JIRA Agile (GreenHopper) Synchronizer lets you synchronize the position of issues in the structure and on an Agile board (such as a Scrum or Kanban board) using Rank synchronization, and synchronize an Epic field with the position of stories under epics in the structure.
JIRA Agile Synchronizer Parameters
Synchronize

Choose mode of operation (GreenHopper/JIRA Agile 6.1+ only):

  • Use Agile Board configuration (this feature is available only with JIRA Agile/Greenhopper 6.1+)
  • Use custom projects and fields configuration
 Agile Board mode (GreenHopper/JIRA Agile 6.1+ only) parameters:
Agile BoardJIRA Agile board to synchronize with. The issues matching Board query will be synchronized. The structure may contain other issues, they will not be affected. If Ranking is turned on by ORDER BY clause in the query, it can be used for synchronization.
Synchronize EpicsIf checked, epics will be synchronized with JIRA Agile epics.
Synchronize RankIf checked, and Ranking is enabled for Agile Board, it will be synchronized with Structure.
 Custom issue set mode and GreenHopper 6.0 and earlier parameters:

Project

A project that JIRA Agile is used in. The structure may contain issues from other projects, they will not be affected.
GreenHopper 5.8 or later: Multiple projects may be selected. The issues from all selected projects will be synchronized using the same Global Rank field.

Rank Field

The field of type "Rank" (managed by JIRA Agile) that holds the rank (backlog order) for the selected Project. If you do not wish to synchronize rank, select Don't synchronize.

Epic Field

The field holding the Epic that the story belongs to.

  • If you use epics on the Scrum boards in GreenHopper 6.1 and up, select "Scrum Board Epics" as the Epic field to synchronize them.
  • If you use the Classic Planning Board, pick the appropriate custom field of type "Labels", which is typically named "Epic/Theme".

    The synchronizer allows to select an Epic/Theme field even if it is applicable only to some of the available issue types. When the synchronizer should set a value to an Epic/Theme field, it will not make a change if the field is not applicable to the issue type of the changed issue.

  • If you do not wish to synchronize Epics content, select Don't synchronize.

Epic Type

Relevant only if an Epic Field is selected. Defines an issue type that is treated as Epic - typically named "Epic". All issues placed under an issue of this type in the structure will be updated to have Epic Field point to that issue.

Auto-add Subtasks

When turned on, sub-tasks will be automatically added to the structure and forced to stay under their respective parent issues. This works similarly to Sub-Tasks Synchronizer.

This synchronizer supports both Import and Export / Resync into/from Structure (more about resync). Incremental synchronization watches both structure changes and JIRA Agile's changes and applies the change to the other side.

CAREFUL! Please be careful when using this synchronizer, especially when you add multiple issues to the Structure, as this may lead to massive updates in the Agile ranks without undo.

On Fix Versions

Earlier GreenHopper versions relied on values in the Fix in Version/s field - if a version has been released, the issues assigned to that version won't appear on the Classic GreenHopper boards. GreenHopper synchronizer in Structure reflected that behavior and ignored such issues.

With the introduction of new Boards (known initially as Rapid Boards, then as Agile Boards), this dependency on Fix Version field has become optional. In some cases, Fix Version field is completely disabled and the teams use Agile Sprints. To address that, the JIRA Agile synchronizer no longer filters issues by Fix Version, unless you're using an old GreenHopper version.

JIRA Agile Synchronizer Rules

Common Rules:

  • Issues that do not belong to the synchronized project(s) are not affected. If you've got GreenHopper earlier than 5.8 and not using Global Rank field, then issues that are assigned to Fix Versions that have been released are also not affected.
  • This synchronizer does not add issues to the structure (with two exceptions, explained below). You can use Saved Filter synchronizer together with JIRA Agile synchronizer to automatically add and position issues.

Sub-Tasks Synchronization:

  • With Auto-Add Subtasks mode on, sub-tasks are added to the structure if their parent is there in the structure.
  • The sub-tasks are forced to stay under their parent, so if you move a subtask somewhere else, it will jump back under the parent again. You can rearrange the order of the sub-tasks, which will be sync'ed to the Agile Rank if the Rank Field is configured.

Rank Synchronization:

  • Repositioning issues in the structure causes Rank change and the repositioning issues on the Planning Board.
  • Rearranging issues on the GreenHopper's Planning Board causes the issues to be rearranged in the structure.
  • When issues are repositioned in the structure according to Rank, they are never moved under a different parent issue.

    This restricts the possible rank changes in JIRA Agile - you can only move an issue to the position of another issue that is under the same parent issue in the structure, otherwise the issue will "jump back" later.

Epic Synchronization:

  • Placing an issue under an Epic in the structure will cause its Epic field to change to that Epic.
    • It does not matter at what level of depth is the sub-issue. A sub-sub-sub-issue of an Epic issue will also have its Epic field updated.
  • If you move an issue in the structure so that it's not under any epic, its Epic field will be cleared.
  • If you manually change Epic field (using JIRA Agile UI or otherwise) to point to a different Epic, the issue will be repositioned under that Epic in the structure.
    • An issue that has the Epic field pointing to an Epic in the structure will be automatically added to the structure.
  • If you clear Epic field or change it to point to an epic that is not in the structure, the issue will be moved up in the structure until it is no longer under any epic.
How to Add Issues to Structure Sync'ed with JIRA Agile

When JIRA Agile synchronizer is enabled, it automatically updates Agile order in background when any Structure change happens. So if you carelessly add issues from the sync'ed project to the structure in some random order, their ranks will be updated according to that order.

To add issues to the structure without breaking the existing backlog order:

  • If adding manually on the Structure Widget, use JQL search and add order by Rank clause at the end of the query. Use the rank field that is used by the synchronizer. 
  • Select the position of the added issues carefully (best with drag-and-drop or copy/paste) - the order is likely to change unless you place issues under another issue without any other sub-issues (see Syncing Partial Orders below).
  • If using Saved Filter synchronizer to add issues, add order by Rank clause to the Saved Filter's query. However, the new issues that are added with the Saved Filter synchronizer will appear at the end of the structure and so will have the latemost ranking.
Syncing Partial Orders

JIRA Agile's Board is flat (except for sub-tasks), and the Structure is hierarchical - so it is not possible to precisely rearrange Structure to have all issues come in the same order as they do on the Planning Board, without changing issue parents or making the Structure also flat. 

Henceforth, the Structure syncs subsets of the issues in the hierarchy with Agile Rank. For example, consider the following Structure:

A

 

 

B

 

C

D

 

 

E

 

F

It is not possible to rearrange the sub-issues so that they come in the following order: B, E, C, F - although this is possible on the Planning Board. Instead, the structure will synchronize sub-sets of the issues in the Structure with JIRA Agile. The following sub-sets will be synchronized separately:

  • A, D - top-level issues: A must come before D on the Planning Board
  • B, C - sub-issues of A are sync'ed separately, so B must come before C on the Planning Board
  • E, F - ditto for the sub-issues of D

In JIRA Agile version 6.1 and later, the Epics are treated by JIRA Agile as a separate set of issues, different from Stories and other non-Epics. To accommodate this change, Structure updates the rank of issues also using "partial order" approach, syncing Epics and non-Epics separately. This means that, starting with JIRA Agile 6.1, if an Epic comes before a Story on the Structure Board, it is not required that they come in the same order on the Scrum Board.