「Jira Workflow Toolbox」でJiraのワークフローをパワーアップ!

こんにちは!Team Designer のGenです。

Jiraの管理者やユーザーさん、「ワークフローの事後操作のバリエーションが少ない。。」なんて思っていませんか?例えば、ステータス変更に伴って、カスタムフィールドの値を変更したり、参照できるようにカスタマイズしたい、とか。

そんなJiraのワークフローのカスタマイズを強化したい方に、今回は『Jira Workflow Toolbox』というアドオンをご紹介したいと思います。

【目次/ラインナップ】
①Jiraのワークフローにおける「高度設定」?
②このアドオンでどんなことができるようになるのか?
③JWT:分かる人には分かる、地味だけど個人的におすすめの使い方!
④Automation for Jira との違いは?

Jiraはワークフロー機能に高度な設定があり、このアドオンは高度な設定のバリエーションを広げるアプリです。まずはJiraの基本知識からいきましょう!

Jiraのワークフローにおける「高度設定」?

Jiraのワークフローにはステータス(To Do, In Progressなど)があり、そのステータス間には通り道があります。それが「トランジション」です。トランジションには主に4つの機能があります。

条件
トランジション(ステータス変更)が操作者によって実行されるべきかどうかを制御します。例えば、報告者のみ、特定の権限を持つユーザだけ、などの条件でステータス変更ができる・できないを指定することができます。これで、関係ない人や権限が無い人が課題ステータスを変更してしまうといったことを防げるわけです。

バリデータ(検証)
トランジション前に入力情報が有効であることを確認します。入力情報が有効でなく検証が失敗した場合、課題は目的のステータスに進みません。「条件」との違いとしては、トランジション後に「エラーメッセージ」が出せるという点です。

事後操作
ステータス変更後に担当者やフィールドの変更、Webhookのトリガーなどを実行します。

トリガー
Jira と連携した開発ツール(Bitbucket など)での操作で課題のステータス変更を実行します。

このアドオンでどんなことができるようになるのか?

Jira Workflow Toolbox』では、条件・バリデータ・事後操作のカスタマイズのバリエーションを広げます。

例えば、以下のようなカスタマイズが可能です。

条件
⇨ステータスを「完了」にする際に、その課題が「レビュー」のステータスにないとトランジションできないようにする。

バリデータ
⇨完了していないサブタスクがある親課題を完了しようとすると実行ができず、エラーメッセージ「未完了のサブタスクがあります」が出るようにする。

事後操作
⇨ある「ストーリー」課題が承認(ステータスを「承認済み」にトランジション)された際、「開発」と「QA」のサブタスクが作成される。

Cloud版では、標準での各ワークフロー機能でもバリエーションが増えていますが、さらに高度な設定をすることで自動化をすることができます。そして、実はデータセンター版は標準でのワークフロー機能があまり多くありません。なのでこのアドオンでかなり運用で苦しかったところが楽になると思います。

JWT:分かる人には分かる、地味だけど個人的におすすめの使い方!

JWT(Jira Workflow Toolbox)の僕個人のおすすめな活用方法があります。それは、Epic Statusの事後操作による変更です。←いやこれマニアックかも

Epicという課題タイプには、ワークフローのステータスと別に「Epic Status」というデータがあります。スクラムタイプのプロジェクトで、バックログに「エピックパネル」がありますよね。エピックが完了しても、パネルが残り続けてたり、タスクをエピックにリンクする際に完了したエピックも候補に表示されてしまいます。これは、Epic Statusが完了になっていないからです。これはワークフローのステータスと別で操作する必要があるのです。これが地味に手間なわけなんです。。

ここで、JWTの出番です!エピックのワークフローの完了時のトランジションで事後操作に「Epic Status」の更新で「完了(Done)」に設定することで、自動的にパネルやリンク候補から消すことができるようになります。

実際のJira運用者やユーザーさん、これ便利ですよね。

Automation for Jira との違いは?

違いとして、JWTはワークフロー上で実行されるものです。つまり、ステータス変更に伴って発動されるということです。一方でAutomation for Jiraでは、ステータス変更しなくてもフィールドの更新時や指定された時間等、様々な発動条件を設定することが可能です。

これは僕の見解ですが、JWTを使う意義としてAutomation for Jira による自動化ルールの煩雑化による管理・運用の複雑化の解消にあると考えています。つまり、ワークフロー機能として作れるところはJWTで設定することで、自動化ルールの乱立による予想外の発動や不具合の予防に役立つということです。そして、ワークフローでカバーできないような自動化や複数のワークフローやプロジェクトで自動化したいといったときにAutomation for Jiraを活用するといいのではないかなと思います。

いかがでしたでしょうか?
今回はJiraのワークフローをパワーアップさせるアドオン「Jira Workflow Toolbox」の紹介でした。

今日はこんな感じで!

それでは!

【参考】

https://marketplace.atlassian.com/apps/29496/jira-workflow-toolbox?hosting=cloud&tab=overview