Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Default principle sets can be defined per team type via Settings / Org Structure type config. Select a team type, then choose a preferred principle set for that team type.

...

JSON parameters for Principles:

Member Count

parameter maxMembers(optional), minMembers(optional)

title Should consist of no more than ${maxMembers} direct members.

...

Note

Note that the default principle set is applied to teams that are updated after the default is set. All existing teams will not be automatically updated when the default is changed.

One way to ensure all teams are updated is to import teams with the principle set ID updated. For example, the Teams CSV import can be used to assign a principle set ID to each team in the system.

...

JSON parameters for Principles:

Member Count

parameter maxMembers(optional), minMembers(optional)

title Should consist of no more than ${maxMembers} direct members.

Should consist of between at least ${minMembers} direct members.

Should consist of between ${minMembers} and ${maxMembers} direct members.

...

Code Block
languagejson
    {
        "type": "ROLE_SPREAD",
        "args": {
            "role": "(.*product.*owner)",
            "roleDisplayName": "Product Owner",
            "limit": 1,
            "teamTypeDisplayName": "Agile Team",
            "teamType": "(group|team)"
        }
    }

Also supports signal overrides.

See Role Tag Parameters for details on the roleTagType and roleTagAttribute parameters.

...

Code Block
languagejson
    {
        "type": "ROLE_COUNT",
        "args": {
            "role": "(.*product.*owner)",
            "roleDisplayName": "Product Owner",
            "min": 1,
            "max": 10,
            "teamTypeDisplayName": "Agile Team",
            "teamType": "(group|team)"
        }
    }

Also supports signal overrides.

See Role Tag Parameters for details on the roleTagType and roleTagAttribute parameters.

...

Code Block
languagejson
    {
        "type": "OWNERSHIP",
        "args": {
            "ownershipRoleDisplayName": "Product Owner",
            "limit": 1,
            "ownershipRole": "(.*product.*owner)"
            "limit": 1,}
    }

Locality

parameter maxLocations

title Where teams are distributed it will be across no more than ${maxLocations} premises

Code Block
languagejson
      {
          "type": "LOCALITY",
          "args": {
              "maxLocations": 1
          }
      }

Field Match

parameters field,metric,min,max,roleTagType,roleTagAttribute

title Count of people that have matching values for a specified field by number or by ratio

Code Block
      {
        "type": "FIELD_MATCH",
        "args": {
          "field": "country",
          "min": 80,
          "max": 100,
          "metric": "ratio"
        }
      }

In the above, if there are any values for the country field where less than 80% of people have a matching value the principle evaluation fails.

Code Block
      {
        "type": "FIELD_MATCH",
        "args": {
          "field": "country",
          "min": 8,
          "max": 10,
          "metric": "count"
        }
      }

In the above, if there are any values for the country field where less than 8 or more than 10 people have a matching value the principle evaluation fails.

Also supports signal overrides.

See Role Tag Parameters for details on the roleTagType and roleTagAttribute parameters.

Demand Allocation Ratio

parameter minAllocationRatio,maxAllocationRatio,includedTags,excludedTags,fteThreshold,includeVacancies,useFteRatio

title <%- actualAllocationRatio %>%</strong> members are allocated to demand structure.

Code Block
{
             "ownershipRole"type: "(.*product.*owner)"
  DEMAND_ALLOCATION_RATIO",
     }     }

Locality

parameter maxLocations

title Where teams are distributed it will be across no more than ${maxLocations} premises

Code Block
languagejson
     args: {
          "type": "LOCALITY",   fteThreshold: 0,
      "args": {       includeVacancies: false,
      "maxLocations": 1       includedTags: [],
  }       }

Field Match

parameters field,metric,min,max,roleTagType,roleTagAttribute

title Count of people that have matching values for a specifid field by number or by ratio

Code Block
     excludedTags: {
                "type": "FIELD_MATCH",NON_PACE_ALLOCATION: [],
           "args"     RESOURCEAVAILABILITY: {[],
           "field": "country",    NON_PACE_ALLOCATION_DEFAULT: []
     "min": 80,        },
  "max": 100,           "metric": "ratio"includedTeamTypes: [],
         }     excludedTeamTypes:  }

In the above, if there are any values for the country field where less than 80% of people have a matching value the principle evaluation fails.

Code Block
[
      {         "type": "FIELD_MATCH",Working With Agile"
      "args": {        ],
  "field": "country",           "min"maxAllocationRatio: 8100,
          "max": 10,   minAllocationRatio: 90
      "metric": "count"     }
   }       }

In the above, if there are any values for the country field where less than 8 or more than 10 people have a matching value the principle evaluation fails.

Also supports signal overrides.

...

Notes:

  • useFteRatio - default is false. When set to true the ratio is calculated from the sum of allocated FTE (with over allocation ignored) as a percentage of total available FTE. When set to false the ratio is the number of members that have any demand allocation at all as a percentage of the total number of members.

Line Manager Count

parameter maxManagers

...

Note: needs verifying by a dev (update this is only used by 1 customer so might not be something we use more broadly with a common set of needs()

Code Block
languagejson
      {
          "type": "ROLE_CONFORMITY",
          "args": {
              "requiredTags": [
                  "tag", "tag", "tag"
                ]
          }
      }

...

Code Block
languagejson
    { 
          "type": "TIMEZONE_OVERLAP",
          "args": {
                "goodOverlap": 3
          }
    }

Signal Overrides

By defaults default the are three signals for principles they are:

...

For principles that support the roleTagType parameter this can be a string with a specific tag type (e.g. SPEICALIST SPECIALIST) or it can be a list of tag types like:

...