with Azure DevOps Sync [ART]

Index


Attention

Before you can start with that you need to connect the piplanning app with your Azure DevOps instance: ALM Configuration

1. General Information

When creating a new PI Planning session in general information page, you can set the following fields.

NameDescription
Start date of your PI PlanningThe date when PI Planning will take place. Can be edited also after session is created. The date is then displayed in the PI planning app when selecting a session from session list.
Number of Iterationsmax. 12
Duration of one Iteration in DaysThis includes days on weekend. Based on the amount of days the dates under step 9 Iterations will be automatically filled in.

Select your ALM Tool Connection


2. Add Teams (Boards)

Team Boards / Program Board Swimmlanes

While configuring a new session, you have to decide which teams will attend this session. You can do that by selecting either an ART or a Solution-Train.

Teams can only be added to a session during the session creation. You can not remove / add a team-(board) afterwards.

Selecting ART or ST

In the example of the screenshot we selected the ART "Animals" which consists of the teams listed under the ART-Name. All these teams will get their own team-board.

On this page you can:

  • Delete or add teams out of other ARTs if needed
  • Re-order the teams. The ordering is represented on the program-board

Attending Teams (without Board / Swimmlane)

You can add teams to a session without giving them an own board and swimmlane. This is useful for scenarios where you want to provide a Solution Level Board spanning multiple Programs. A team which is attending a session (but does not have its own Team Board in that session) can then join (see and edit) that session as well.
To add a team as a an attendee to a session:

  1. Go to step two in the session creation / edit session
  2. Click on the "Teams without boards" tab
  3. Add one or more teams
     


3. Team Boards

Configure Sticky Types for Team Boards

Move/Mirror Stickies

Move

If you check the box, teams will be able to Move Stickies from one Team Board to another Team Board.

Mirror

For the Sticky Types Configured on the Program Backlog Board and the Team Board (Origin Boards) you can configure if Teams should be allowed to visualize (Mirror) the Sticky Type on another Board.

Per default, Dependencies and Program Backlog Board Sticky Types can be mirrored to the Program Board.

Sticky Functions

There are two special sticky functions in place

Dependency

A Sticky Type with function Dependency does have special attributes. Consider the standard workflow using dependencies.

  • It has mirror to Program Board configured per default.
  • It can be assigned to another team (to a team which supports to solve the dependency).
  • In the app the receiving and producing team will be shown on the sticky.

Hint

Don't sync the dependency sticky to your ALM Tool. The dependency sticky is a "meta"-sticky used to get a simpler way to collaborate on dependency and visualize them on the Program Board (less crowded as you don't need to visualize all the dependent team level stickies.

Risk

  • Sticky Types with the function Risk will have a ROAM-field available visible on all Boards
  • Risk Stickies can moved to the Program Risk Board per default


To enable the sync of workitems / stickies between ADO and the piplanning app you need to map:

  • piplanning Teams to ADO-Area paths
  • piplanning Iterations to ADO-Iteration paths

Mapping of sticky types to work-item types

  1. Create a new piplanning session
  2. Make sure that you include the teams you have previously mapped to area paths
  3. In step 3, map Work-items type of your choice to the sticky-types:
  4. If we can find numeric fields for that work-item type, we will display the story-points mapping dropdown as well:

4. Risk Board

Configure Sticky Types for the Risk Board

As Risk Sticky Types moved from the Team Boards on to the Risk Board will get the Sticky Type and color of the first Sticky Type, this might be a useful configuration

5. Backlog Board

Configure Sticky Types for the Program Backlog Board

Backlog Board Sync

When you create / edit a piplanning session which is synced with ADO, you can define which work-items out of ADO should appear on the program backlog board.
If you create a new sticky note on the backlog board, the piplanning app will then create a corresponding ADO work-item with the values defined.

You can narrow down the work-items by creating a "filter-query":

  • ADO work item type: the work-item type you want to map to this issue-type
  • ADO WSJF field: (optional) You can choose any numeric field here. This number will be displayed on the sticky-note.
  • Matching ADO fields:
    • Field: The ADO field type
    • Value: The value which this field needs to have / will be set in ADO
    • HINT: The Tags field is not supported yet. You can choose every field which is not 'read-only' and available on the work-item layout (excluding html and history field-types)

Unset area path

If you do not specify an area path at all, it will pull in all the work-items matching that work-item type over all projects.

Info about Paths (Iteration and Area)

If you select either "Area Path" or "Iteration Path", the backend will check if these values are valid (can be found in ADO).

6. Program Board

Configure Sticky Types for the Program Board

7. Collaboration Canvases

Collaboration Canvases can be provided to your teams to cover different use-cases before, during and after a PI Planning and are designed to support the whole Program Increment execution and lean-agile workshops on every level in your organization. Already in the piplanning app, check out how to Use Collaboration Canvases.

Add a new Collaboration Canvas Type

Add Canvas Type

press "Add Canvas" provide a Canvas Type Name

Choose a Canvas Background

press on the Background Preview

Choose your Background

Provide a Canvas Type Name

Your teams will see all Canvas Types you provide in the piplanning app. Provide the Collaboration Canvas Type with a meaningful name.

Define Sticky Types

For each Collaboration Canvas Type you can define what Sticky Types teams will be able to use.

Every Canvas Background comes with a pre-defined Sticky Type set adapted for the specific background.

You can add, change or delete Sticky Types.

8. Links

Links between workitems can be visualized in the piplanning app. During the session creation or while editing a existing session in the cockpit you can map the links of the app to the links in ADO.

To get an idea on how the links look like in the app, check out this page: Linking

How to interpret From and To (direction of links)

A practical example: If you want to set the Parent link between Feature and User Story, you would configure it like that:

From sticky typeLink typeTo sticky type
Feature(is) Parent (of)User Story

To define Predecessor between two User Stories (will be visualized in the app like FromSticky→ToSticky):

From sticky typeLink typeto sticky Type
User StoryPredecessorUser Story

Restrictions in combination with ADO

  • You can only have one link-type between two sticky-types. Example: Between Feature and User Story, you can only have Parent (and not Affected By as well).

9. Iterations

Map Iterations to Area Paths (Teams)

  1. Create or edit a piplanning session

  2. Make sure that you have included the teams you have previously mapped to area-paths

  3. In the last step of the piplanning-session configuration you can now map teams to iteration-paths

    1. If you have multiple area-paths for one team, you have to set the iteration-path for each area-path as well

Synchronize iterations for Backlog level work items

For your work items managed on Backlog level you can synchronize the Iteration field. Depending on the iteration in which a Backlog level sticky type is planned, the iteration is synchronized back to ADO based on the iteration paths which are defined for your teams.

To enable synchronization, check the corresponding box under the Backlog Board configuration.

Iteration path filtering

  • In case you do not specify an iteration-path for the sticky-type: It will get every feature in to the app which matches the field-filter criteria and therefore any workitem (no matter of the area-path value) will appear.

  • In case you do specify the iteration-path: Every feature which matches the iteration-path of the sticky-type OR matches any of the defined iteration-paths of any team (of the same ART) defined in the cockpit (Iteration screen) will appear. Keep in mind that the team iteration-path needs to be a subpath of the iteration-path defined on the sticky-type or it will not be included.

    • In case of a sticky-type with iteration-path = “Futurama/PI1“

    • Only team iteration-paths which are bellow “Futurama/PI1“ will be taken into account.

    • Will be included:

    • Will NOT be included:

Example

"Another nice Feature" pulled in and visualized on the Program Board for planning.

Feature planned delivery in Iteration 1

Use the Session in the piplanning app

Start the piplanning app in your browser and start planning.