Automation For Jira - How to create a rule that calculate ICE score and prioritize tickets based on it
プラットフォームについて: Data Center - この記事は、Data Center プラットフォームのアトラシアン製品に適用されます。
このナレッジベース記事は製品の Data Center バージョン用に作成されています。Data Center 固有ではない機能の Data Center ナレッジベースは、製品のサーバー バージョンでも動作する可能性はありますが、テストは行われていません。サーバー*製品のサポートは 2024 年 2 月 15 日に終了しました。サーバー製品を利用している場合は、アトラシアンのサーバー製品のサポート終了のお知らせページにて移行オプションをご確認ください。
*Fisheye および Crucible は除く
要約
Development Teams might prioritise new feature in their backlog using ICE technique.
This article describes how to configure an Automation Rule using the Create Variable action available in Automation for Jira 9.0.1, which will perform the following actions:
Calculate the ICE score based on the Impact, Confidence and Ease values, and using the equation below:
ICE = Impact x Confidence x Ease
- Prioritize the Jira issue based on the ICE score
環境
- Jira Data Center Only (This article does not apply to Jira Server licenses)
- Applicable Jira / A4J (Automation for Jira) versions:
- Jira 9.11.0 and any higher version (this Jira version ships with A4J 9.0.1)
- OR Jira 8.20.0 and any higher version, in combination with A4J 9.0.1
最初のステップ
- Go to ⚙ > Issues > Custom fields, and create 4 number fields with the following names:
- 影響
- Confidence
- Ease
- ICE
- 以下を確認してください。
- the context configuration of these fields include the project(s) where you are planning to calculate the ICE score
- these fields are added to all the screens (Create/View/Edit Issue screens) associated to these project(s)
Rule suggestion
The rule will need to be configured as follows:
- Add the Field value changed trigger with the following settings
- Fields to monitor:
- 影響
- Confidence
- Ease
- For: All issue operations
- Fields to monitor:
Add the Create variable action, using the Smart Value below:
{{#=}}{{issue.Impact}} * {{issue.Confidence}} * {{issue.Ease}}{{/}}
- Add an Edit Issue action with the parameters below:
- Choose field to set: ICE
- Value: {{ICE}}
- Add an IF/ELSE block
- In the IF block:
- Add an Edit Issue action
- Field to set: Property
- Value: Highest
- Add an Advanced compare condition with the parameters below:
- First value: {{ICE}}
- Condition: Greater than
- Second value: 300
- Add an Edit Issue action
- If the first IF/ELSE block:
- Add an Edit Issue action
- Field to set: Property
- Value: High
- Add an Advanced compare condition with the parameters below:
- First value: {{ICE}}
- Condition: Greater than
- Second value: 200
- Add an Edit Issue action
- If the next IF/ELSE block:
- Add an Edit Issue action
- Field to set: Property
- Value: Medium
- Add an Advanced compare condition with the parameters below:
- First value: {{ICE}}
- Condition: Greater than
- Second value: 100
- Add an Edit Issue action
- If the next ELSE block
- Add an Edit Issue action
- Field to set: Property
- Value: Low
- Add an Edit Issue action
- In the IF block:
Screenshot showing the rule
Alternative solution and drawback of this solution
An alternative solution to this use case which does not involve the usage of the Create Variable action is to:
- Directly store the result of the formula Impact x Confidence x Ease = 360 in the ICE Custom Field
- Add the Re-fetch Data action before the IF/ELSE block, to ensure that the automation rule fetches the updated value of the ICE Custom Field
- Use the content of the ICE custom field via the smart value {{issue.ICE}} in the IF/ELSE blocks as illustrated in the screenshot below:
The drawback of using such solution is the fact that the re-fetch data action can be an expensive action, since the rule is reloading all the fields from the Jira issue from the Jira Database, which can take some time and make the rule less efficient. That's the reason why using the Create Variable action available from Automation For Jira 9.0.0 (and Jira 9.11.0) is the most efficient way to implement such use case.