チームの開発プロセスを改善するために最近活用した Jira 周りの技術

## はじめに

最近、Webアプリケーションを開発しているチームの開発プロセスを改善しています。

活動をしていく中で、「最初から知っていればもっと効果的にプロセスを良くできたじゃん、、、」と思った機能やツールがありました。

忘れないとは思いますが、あまりまとまっている記事もそこまでなかった（見つけられてないだけかもです :pray:  ）ので、誰かの役に立てばと思い、まとめます。

## Jiraの機能

### Jiraレポート + ダッシュボード

チームのベロシティやバーンダウンチャートなどを確認するには、Jiraレポートが有効です。

Jiraダッシュボードは、複数のレポートやカスタムウィジェットを組み合わせたカスタマイズ可能な画面です。ダッシュボードは、プロジェクトの主要なメトリクスや情報を一元化して表示し、チームやステークホルダーがプロジェクトの全体像を把握できるようにします。

https://www.atlassian.com/ja/software/jira/guides/reports-dashboards/overview#what-are-reports

この辺りの機能は、

- チームは予定通りタスクを進めることはできているか
- できていないとしたらボトルネックはどこか
- バグの作成数はどのように推移しているか

など、を開発プロセスを改善していく活動がどう影響しているか、を確認するために活用しています。

### Jira Automation

開発プロセスを考え直す上で個人的に重要視していたのは、

- ステークホルダーの考え事を減らすこと
- 作業を極力0にすること

の2点です。そのうち、後者に大きく寄与するのが、Jira Automationです。

https://www.atlassian.com/ja/software/jira/features/automation

以下のような連携ツールを使い、GitHub などのGit Providerと連携することで、ブランチ作成、PR作成、などのイベントをトリガーにした作業を自動化できたり、

https://marketplace.atlassian.com/apps/1219592/github-for-jira?hosting=cloud&tab=overview

そのトリガーをきっかけにSlackへメッセージを投稿できたりもします。

https://ja.confluence.atlassian.com/automation073/how-to-use-slack-messages-with-automation-for-jira-1093013488.html

テンプレートライブラリなど参考にできるドキュメントから、着想を得て、作業を自動化できると、チームを楽にできると考えています。

https://www.atlassian.com/ja/software/jira/automation-template-library#/rule-list?systemLabelId=global&customLabelId=21568&page=1&pageSize=20&sortKey=name&sortOrder=ASC

## Jiraと相性のいいツール

主に、Jiraのデータを可視化するために利用したツールについて紹介します。

### Jira Cloud for Sheet

Jira Cloud for Sheetは、

- お気に入りの保存済みフィルターなどを使用する
- JQL クエリを書く

などを行い、課題を簡単にGoogle スプレッドシート（以下、GSS）へインポートできます。Jira上にだけデータが存在していると、上述したJiraレポートで表現できる手段でしか可視化ができません。しかし、GSSへインポートすることで、カスタムなレポートが作成できるようになります。

本来、Jiraの運用が正しければ、このようなカスタムなレポートを作成する必要がない場合もありますが、Jiraの運用方法はチームによってまちまちで、可視化をできる形になっていないこともしばしばあるかなと思います。そんな時にこのJira Cloud for Sheetはおすすめです。

https://support.atlassian.com/ja/jira-work-management/docs/use-jira-cloud-for-sheets/

### Looker Studio

データの可視化には、Looker Studioが現状だとベストだと考えています。

https://cloud.google.com/looker-studio?hl=ja

いくつかのチュートリアルをこなすことで、基礎的な部分は抑えられます。計算フィールドの使い方などは僕はここで学び、活用できています。

https://support.google.com/looker-studio/topic/9170843?hl=ja&ref_topic=12398462&sjid=1559970991724620460-AP

### Google Apps Script

Jiraのデータを可視化する上で、Google Apps Script（以下、GAS）は非常に役立ちます。Jira Cloud for SheetのデータをそのままLooker Studioに連携する前に、データを加工したい時に役立ちます。

そのままでは表現したいグラフが表現できない時は、GASで一度データを整形してから、Looker Studioに渡します。

また、正直僕自身はLooker Studioに慣れていなくて、Looker Studioで表現したいグラフが表現できないこともあったりします。そんな時も、Looker Studioを調べつつも時間のかからないGASでデータを整形して、まずは作成したいグラフを完成させます。

今述べたのは、ポジティブな理由、ネガティブな理由、それぞれあり、全てがGASに頼ればいいわけではありませんが、それでもデータを可視化する前の処理として活用することは大いに作業を楽にしてくれると思います。

https://workspace.google.co.jp/intl/ja/products/apps-script/

上述した3つのツールの関係性を以下に図示しておきます。

```mermaid
stateDiagram-v2
	direction TB
	Jira --> Sheet: Jira Cloud for Sheets
	Sheet --> LookerStudio: 可視化
	state GSS {
		direction TB
		Sheet --> GAS: データ受け渡し	
		GAS --> Sheet: 変換
	}
	
	

```

## まとめ

Jira Automationはプロジェクト管理者しか使えないなど、制限がありました。そもそも管理者ではなかったのでJira Automationの存在に気づいてませんでしたが、隣に座っていた先輩に教えてもらい、初めて活用することができました。

こういった改善を行う人は、まず強い権限をもらうことで、取り得る手段が増えると思います。一方で、取り得る手段が増えたことによって気をつけたいのは、手段から改善方法を考えてしまうことです。手段から考えるのではなく理想を描いてから手段を決定していくことを忘れずに、便利機能を活用していきます。

他にも便利な機能、ツールを見つけたら随時更新していきます。