Key result Behavior and Progress calculation (Manual/Automated)

Behaviour (applicable only for Metric and To do KRs)

There are three types of behaviors for Metric and To do KRs. This behavior will decide the way one tracks numbers. As there are no set units for KR, one can track numbers in units with respect to listed behaviors.

Increase/Decrease

These are the two behaviors that can be used alternately. The behavior will work based on the way current value and target value are defined. For example, if the current value is 1 and the target value is 10, system uses the increase behaviour. Increase behavior works the other way around, where current value is bigger than the target value. For example, current value is 10 and target value is 1, this means the decreasing numbers are being tracked.

Maintain

As the name suggests, this behaviour is used when a certain number needs to be maintained in an ideal range of numbers. UpRaise asks for three values here, i.e. Current value, Target value (minimum), and Target value (maximum).

For example, if the current value is 2 Target value (minimum) is 5 and Target value (maximum) is 7. Until the current value remains below 5, KR progress is 0%, if the current value is updated as 5 or anything between 5-7, progress is 100% and if the progress goes beyond seven, KR progress is again considered as 0%. Since the ideal min-max range is defined, system will always look for that range to keep the progress at 100%. When that current value is below or above the given min-max range it is always considered as 0%.

The expectation here is to stick to the defined range and adhere to a certain range to maintain the number.

Progress calculation

As the Key results work as milestones for its Objective, updating the KR progress consistently is one of the keys to successful OKR process. Considering the fact, UpRaise provides complete flexibility in setting up the way one wants to update progress of their KRs.

UpRaise allows to update progress in two ways -

  • Manual progress calculation

  • Automated progress calculation

Since, Jira issue and Jira issues (via JQL) KR’s progress is dependent on the updates within Jira, these progress calculations are not applicable for them.

Manual progress updates

As simple as that, when the progress calculation is set to Manual. KR user has to manually punch in KR progress. This option is typically used while tracking numbers to some KRs that are independent of Jira issues or other KRs progress.

Metric

In case of Metric KRs, based on the selected behavior user has to update the current value consistently as n when any progress is made on that KR.

To do

Being a binary type of KR, it is either incomplete or complete in terms of progress. The to do KR also has a status called in progress. This appears when user has not marked the KR as completed, instead, they have added a comment and confidence score with respect to relevant steps taken toward completion. These updates will happen manually if manual progress calculation is selected.

Automated progress calculation

Automation is pivotal in modern work settings. It streamlines check-ins, keeping teams aligned with progress. It also helps track progress through system aspects. Many organizations, like those using custom fields in Jira, rely on this for effective task execution. UpRaise leverages these elements for progress automation, simplifying goal tracking.

On add or Edit metric/to do pop-up, under progress calculation there are two options for Automated progress calculation.

  • Jira issues

  • Other key results

Above two options allows to calculation of Metric/To do KRs progress based on either Jira issue/s or other KRs in the system. As a when the configured field’s value is updated in configured Jira issues/KRs, the progress of the metric or to do will be auto updated.

Jira issues

For Jira issues, there three aggregate functions to calculate the Jira issue progress automatically.

  • Count

  • Sum

  • Average

Count

Example - 20 stories to be published in Q1 from project ABC.

In this case, the number of Live stories is being tracked. With the Count function user can set up a JQL to tracks all the live stories from that project from the releases/sprint in that quarter.

Once the KR is created, it takes a few minutes for the system to fetch the number of issues matching the JQL. Once that is done, system updates the current value of your KR that is equal to the number of issues matching the JQL. See example in below images. 

Sum

Example - 50 story points completed across all sprints in the quarter

In this case the number of story points are tracked from a sprint. Remember that it considers only numeric fields. So in Sum aggregate function, when you save a JQL and select a field, system updates the sum of all values in custom fields of issues that are retrieved from to the saved JQL.

Once the function is saved, system updates the current value of your KR that is equal to the sum of values in custom fields of issues retrieved by JQL. 

Average

Example - Avrage time spent on low-priority bugs should not exceed 10hrs in a month

When selected Average as an aggregate function, pop-up displays two more fields, i.e. Field & JQL. Field is for Jira issue fields (custom & default both).

Remember that it considers only numeric fields. So in the Average aggregate function, when you save a JQL and select a field, system updates the average of all values in custom fields of the issues that are retrieved from to the saved JQL.

Once the function is saved, system updates the current value of your KR that is equal to the average of values in custom fields of issues retrieved by JQL. 

Other key results

In this case, the metric’s progress can depend on other KRs in the system. With this function, any type of KR can be linked with metric to automate the progress.

There are two aggregate function for this -

  • Sum of current value

  • Average of current value.

As the names suggest, whatever KRs are linked, their sum or average of the current values will be considered as the main metric’s progress and accordingly, it’s current value will be updated. Progress will work based on the metric’s behavior i.e. increase/decrease r maintain.

Any progress updates and Jira issue updates like Summary, Assignee, etc. are prevented based on settings under Kr confirguations. Read https://amoeboids.atlassian.net/wiki/spaces/UPFJ/pages/1377370151/Key+result+configurations#Prevent-Jira-issue-updates-once-the-corresponding-objective-is-Closed%2C-Abandoned%2C-Carried-forward%2C-Archived for more details.