見出し画像

Jira改造計画第二章—Automationで簡単自動化Part2

この記事はこんな人にオススメ
○ Jira上で決まって行う作業がストレスになっている
○ Jiraを操作する中で発生するロスを減らしたい
○ Jira Automationの存在は認知したが、具体的にどのように使うのかがわからない
○ Jiraを利用した業務効率化や社内改善に関心がある
この記事で解決されること

○ 異なる職種間の連携の一部を自動化することで、プロジェクト管理をより円滑にする

こんにちは!株式会社RITインターン生兼DXツール調査隊の大平朱莉です。

今回の記事では、Jira改造計画第二章Part2ということで前回に引き続き、Jira操作の自動化を行っていきます!

使用するのは、Jiraの中でも知る人ぞ知る(?)「Automationという機能です。プログラミングの知識は必要なく、ドラッグアンドドロップでできるので、エンジニアでない方も簡単に実装できますよ

二部構成になっており、今回のPart2では実際に弊社が抱えていた課題をAutomationを用いて解決していきます◎

「そもそもAutomationって何ぞや」という方は、始め方から基本的な実装例までご紹介しているJira改造計画第二章Part1の記事からご覧ください!

それでは、早速内容に入っていきましょう!!

画像30

今回解決したい弊社の課題

今回取り扱うのは、社内のある課題を解決するための実装です。
その課題とはズバリ、

人が絡むことによる無駄をなくし、円滑にエンジニア・デザイナー間の連携を行うこと。

まずは現状と目指す像の整理をしていきます。

<現状>

弊社ではソフトウェア等の何らかの機能を実装する際、エンジニアがある程度実装し終えた後に、エンジニアからデザイナーに通知し、デザイナーに実装してもらう、という工程を挟んでいます。

その際、現状だとJira上で5段階の操作が必要でした

①エンジニアがチケット課題1を作成する
②デザイナーがチケット【スタイリング】課題1を作成する
③エンジニアが課題1のステータスを完了にする
④エンジニアからデザイナーに通知する
⑤デザイナーが【スタイリング】課題1のステータスを進行中にする

画像15

この状態だと、細かい作業に時間を取られるだけでなく、「チケットの作成漏れ」や「職種間の通知漏れ」が発生していました。

<目指す像>

目指す像としては、なるべく人が絡むことによる「漏れ・ダブり」やタイムロスをなくし、円滑に両職種間の連携を行うことでした。

具体的には、先程の5段階の操作を、以下の二段階に減らそうと考えていました。

①エンジニアがチケット課題1を作成する
(自動化)デザイナーがチケット【スタイリング】課題1を作成する
②エンジニアが課題1のステータスを完了にする
(自動化)エンジニアからデザイナーに通知する
(自動化)デザイナーが【スタイリング】課題1のステータスを進行中にする

画像14

今回は、この<目指す像>の通りに実装することを目標にします!!

画像31

作戦会議

<目指す像>に向けて、Jira上のどんな操作が必要か、Jira Automationのどんな機能が使えそうか、作戦会議していきましょう!

<目指す像>とは、以下のようなものでした。

①エンジニアがチケット課題1を作成する
(自動化)デザイナーがチケット【スタイリング】課題1を作成する
②エンジニアが課題1のステータスを完了にする
(自動化)エンジニアからデザイナーに通知する
(自動化)デザイナーが【スタイリング】課題1のステータスを進行中にする

○ まず、「課題のクローン」というルールを利用すれば、「エンジニアがチケット課題1を作成する」と、「デザイナーがチケット【スタイリング】課題1を作成する」は同時に実行できそうだ、と考えます。

第一段階 エンジニア用チケットが作成されたら、同時にデザイナー用チケットを作成できるようにする

○ つぎに、「課題のトランジション」というルールを用いれば、課題ステータスが変更したのを認識して、何かしらアクションを起こすことができます。

今回は「エンジニアが課題1のステータスを完了に」し次第、「デザイナーが【スタイリング】課題1のステータスを進行中にする」、を実行すると決め、「エンジニアからデザイナーに通知する」ようにします。

第二段階 エンジニア用チケットが「完了」になったら、同時にデザイナー用チケットを「進行中」にする

第三段階 ステータスが「進行中」に変わったら、担当者であるデザイナーにメール通知する

何となく雰囲気はつかめましたでしょうか?これからこの三段階に分けて、少しずつAutomationしていきますよ!!

画像21

第一段階

まずは実装手順を確認しましょう!

1-1 いつ新しいアクションを実行するか決める。
 ⇒「課題の作成時」
1-2 どの課題タイプのとき実行するか決める。
 ⇒「ストーリー」
1-3 現在の課題を、タイトルに加筆した上で複製する。
 ⇒【スタイリング】+課題名
1-4 新しいアクションの対象となる課題を決める。
 ⇒「最も最近に作成された課題」
1-5 課題をどの状態にするかを決める。
 ⇒複製課題と元課題を「is cloned by」で結びつける

大まかな流れが確認出来たところで、具体的な実装に入っていきましょう!!

1-1 いつ新しいアクションを実行するか決める。

ある課題が作成されたときに一連のルールを開始します。

「新しいトリガー」にて、「課題の作成時」を選択します。

スクリーンショット (1360)

1-2  どの課題タイプのとき実行するか決める。

課題タイプが「ストーリー」だった場合、課題を複製すると決めます。

「新しい条件」にて、「課題フィールドの条件」を選択し、「フィールド」を「課題タイプ」、「条件」を「等しい」、「値」を「ストーリー」とします。

スクリーンショット (1361)

1-3  現在の課題を、タイトルに加筆した上で複製する

作成された課題のクローンを、エンジニア用とデザイナー用で区別できるよう、タイトルの文頭を工夫した上で作成します。

「新しいアクション」にて、「課題のクローン」を選択し、「プロジェクト」を「同じプロジェクト」とし、「課題タイプ」を「同じ課題タイプ」とします。「要約」は【スタイリング】{{issue.summary}}とします。

スクリーンショット (1362)

1-4  新しいアクションの対象となる課題を決める。

「ルール/関連する課題を分割する」にて、「関連課題のタイプ」を「最も最近に作成された課題」とします。

今回の場合、最も最近に作成された課題は1-3で作成した課題になります。

スクリーンショット (1363)

1-5 課題をどの状態にするかを決める。

エンジニア用チケットとデザイナー用チケットを連携させるため、「最も最近に作成された課題」と、クローン元(is cloned by)の課題を紐づけます。

「新しいアクション」にて、「課題をリンク」を選択し、「この課題」を「is cloned by」、「課題」を「課題をトリガー」とします。

スクリーンショット (1364)

ここまでの操作をまとめると以下の通りになります!

スクリーンショット (1388)

ここまでできましたか?これで、エンジニア用チケットが作成されたら、同時にデザイナー用チケットを作成できるようになりました。

実装はまだまだ続きます!どんどん行きましょう~

画像20

第二段階 

まずは実装手順を確認します。

2-1 課題がどの状態に遷移したとき実行するか決める。
 ⇒「完了」
2-2 どの課題タイプのとき実行するか決める。
 ⇒「ストーリー」
2-3 課題がどの状態のとき実行するか決める。
 ⇒「進行中でない」
2-4 課題をどの状態に遷移するかを決める。
 ⇒「進行中」

大まかな流れが確認出来たところで、具体的な実装に入っていきましょう!!

2-1 いつ新しいアクションを実行するか決める。

エンジニア用チケットのステータスが「完了」になったとき、一連のルールを開始します。

「新しいトリガー」にて、「課題のトランジション時」を選択し、「ターゲットステータス」を「完了」とします。

スクリーンショット (1371)

2-2 どの課題タイプのとき実行するか決める。

ここにて第一段階で課題を紐づけしたことが活きてきます。2-1で遷移した課題が複製した課題、つまりデザイナー用チケットを対象にします。

「ルール/関連する課題を分割する」にて、「関連課題のタイプ」を「リンクされた課題」、「リンクタイプ」を「clones」とします。

スクリーンショット (1372)

2-3 課題がどの状態のとき実行するか決める。 

ステータスが「進行中」ではない課題に対してアクションを実行すると決めます。

「新しい条件」にて、「課題フィールドの条件」を選択し、「フィールド」を「ステータス」、「条件」を「等しくない」、「値」を「進行中」とします。

スクリーンショット (1373)

2-4 課題をどの状態に遷移するかを決める。

課題のステータスを「進行中」に移します。

「新しいアクション」にて、「課題のトランジション」を選択し、「ターゲットステータス」を「進行中」とします。

スクリーンショット (1380)

ここまでの流れをまとめましょう!

画像19

これで、エンジニア用チケットが「完了」になったら、同時にデザイナー用チケットを「進行中」にできるようになりました。

ここまででJira上の操作を実装し終えました!最後にメール通知の実装をしていきましょう。

画像19

第三段階

まず、実装手順を確認します。

3-1 いつ新しいアクションを実行するか決める。
 ⇒課題ステータスの変更時
3-2 課題がどの状態のとき実行するか決める。 
 ⇒プロジェクト名「Sandbox」、タイトル「【スタイリング】」を含む、ステータス「進行中」
3-3 どんなアクションを実行するか決める。
 ⇒「メールを送信」

大まかな流れが確認出来たところで、具体的な実装に入っていきましょう!!

3-1 いつ新しいアクションを実行するか決める。

今回は課題が「To Do」から「進行中」へと変更になった場合に実行したいので、まずはステータスが変更になった場合をトリガーに設定します。

「新しいトリガー」にて、「変更されたフィールド値」を選択し、「変化を監視するためのフィールド」を「ステータス」、「対象」を「課題のトランジション」とします。

スクリーンショット (1397)

3-2  課題がどの状態のとき実行するか決める。

今回はルールを適用するプロジェクトを固定し、ステータスが「進行中」のデザイナーチケットをターゲットとします。

「新しい条件」にて「JQL条件」を選択し、「JQL」に、(project in (Sandbox) AND summary ~ "【スタイリング】" AND status = "In Progress")を入力します。

スクリーンショット (1391)

3-3  どんなアクションを実行するか決める。

デザイナー課題のステータスが「進行中」になったら、課題の担当者であるデザイナーにメールで通知します。

「新しいアクション」にて、「メールを送信」を選択し、「ターゲットステータス」を「担当者」とします。今回は「件名」を「{{issue.key}}のステータスが「進行中」に更新されました」、「コンテンツ」を「この通知は、エンジニアが該当する作業の状態を「完了」させたため、デザイナーが該当する作業の状態を「進行中」に自動的に更新したことを、デザイナー担当者に知らせるためのものです。」としました。

スクリーンショット (1398)

ここまでの実装をまとめると、以下のようになります!

スクリーンショット (1393)

じゃん!

これで全ての段階のルール実装が完了しました!やったー!!

画像22

いざ、実行!

忘れてはならないのがこの実行タイム

チケットを作成すると…

スクリーンショット (1406)

タイトルが加筆されたチケット(デザイナー用チケット)が自動で出現!
担当者を配属しておきます。

スクリーンショット (1408)

元のチケット(エンジニア用チケット)のステータスを「完了」にすると…

スクリーンショット (1409)

デザイナー用チケットのステータスが自動で「進行中」に!

スクリーンショット (1410)

数秒経って、チケットのステータスが変更されたことが担当者宛てに通知されました。

スクリーンショット (1412)_LI

正常に実行されたことが確認できました!

これにて、エンジニアとデザイナーの自動連携、実装完了です!

画像24

DXツール調査依頼、募集中です!

画像23

DXツール調査隊では、読者の皆さんからいただいたご質問に、note記事にて回答させていただきたいと思っています!

「タスク管理がうまくいかない」「今最もアツいRPAを教えてほしい」等、漠然とした質問で大丈夫!DX初心者の調査隊員が皆さんに代わって調査いたします☆

以下の手段のどちらかから、お気軽にお問い合わせください!
①件名を「DXツール調査依頼」、本文に具体的な調査事項を記載いただき、virtual-dx@rit-inc.co.jp宛にご連絡いただく。
②DX調査隊シリーズのnote記事にコメントいただく。

DXツール調査隊についてもっと知りたい方は、こちらをご覧ください!

皆さんのご依頼、お待ちしています!!

この記事を書いたのは?

画像15

#Jira #Automation #プロジェクト管理 #PJ管理 #Backlog #Atlassian #DX #DXコンサル #業務改善 #業務効率化 #ITコンサルティング #DXツール #DX調査隊 #DXツール調査隊 #おすすめツール #RPA #自動化






この記事が気に入ったらサポートをしてみませんか?