KINTO Tech Blog
Development

Try Jira and You Will See How Impressive It Is!

T. Koyama
T. Koyama
Cover Image for Try Jira and You Will See How Impressive It Is!

Outline in 3 Lines

  • I am a Scrum Master
  • We use Atlassian products, including Jira in our company
  • Here are some useful features of Jira

Introduction

Hello, everyone. This is Koyama from KINTO Technologies. I am an iOS (Swift) engineer. I've also been doing a bit of Scrum Master work lately.

This time, I would like to introduce some recommended Jira practices.

Scrum and Jira?

As stated in the 2020 Scrum Guide, a Scrum Master has a key role to “help the Scrum team by coaching them self-management and cross-functionality”. I anticipate the creation of various mechanisms to fulfill this, but at this time, it's important to have a system that operates with minimal human (Scrum Master) intervention.

…No, I don't mean I just want to make things easier.

…Okay, maybe a bit (We all want to work with less effort, though.)

So, What Was Jira Again?

Jira is a SaaS product developed by Atlassian primarily used for project management. For more information, please visit the official website. It has a very versatile task management function and is highly compatible with Confluence, a document management tool also made by Atlassian.

Our company provides both Jira and Confluence, which are available to all employees. I wonder how widespread it is.

Getting to the Point (Finally)

Creating fields and setting required fields

"The person in charge didn't write down the issue in detail!"

"I thought I'd add the deadline later, but I forgot..."

We hear voices like these.

The amount of information that remains on each issue in project management using Jira will help you and the person in charge around you understand quickly, preventing the need to explain the same information over and over again. In addition to the fields provided in the template, Jira allows you to add and customize any field and even make it mandatory at will. I think this can be used to structure and resolve the above comments.

"The person in charge didn't write down the issue in detail!"

Let's include additional fields to provide more detailed information.

"I thought I'd add the deadline later, but I forgot..."

Let’s make sure that the deadline field is a mandatory requirement.

Use cases

Our team makes it mandatory to enter labels to clarify which team is responsible; such as "iOS", "Android", "Backend", etc. While simply incorporating suitable labels would meet the need for the required field, it would be adequate to prevent the person in charge from unintentionally omitting it during the ticket creation process

We made the "label" field mandatory.We made the "label" field mandatory.

To set up, simply click the "Required" checkbox. It's that simple. However, if you make all of them mandatory, creating an issue will be troublesome, so please set the usage guidelines after discussing with your team.

Automation

"It's frustrating to enter the same values every time I create an issue."

"I want to regularly check that the issue is operating correctly."

Next, let's address this kind of feedback.

Jira has a function called Automation, which I avoided when I first started using it because I didn't know what it was. However, I found it to be really convenient when I gave it a try. This can solve most of the problems that can be done in Jira. Let's take a look at how to set them up in order.

"It's frustrating to enter the same values every time I create an issue."

Create an action with the trigger set to "Issue Created."

In our project, we automatically flag "Issue Created" after determining whether there are any related issues. Here are the settings for your reference.

Set "Issue Created" as the trigger for the rule.Set "Issue Created" as the trigger for the rule.
Determine if there are "story" or "bug" in linked issuesDetermine if there are "story" or "bug" in linked issues

Jira allows you to narrow down not only whether there are linked issues, but also the type of issues to which they are linked. We use these to support issue operation in line with the team's approach.

"I want to regularly check that the issue is operating correctly."

For this, how about setting the trigger to "every day at midnight" or "every Monday at 13:00"?

In our project, a system has been created for regular checks to ensure no oversight of time-limited issues. Here are some examples.

Set "9:00 a.m. on weekday morning" as a trigger for ruleSet "9:00 a.m. on weekday morning" as a trigger for rule
Check that the limit is expired.Check that the limit is expired.
Send a message using Slack WebhookSend a message using Slack Webhook

Since Jira can also send Slack notifications, we can leave it up to our now familiar Slack to notify us about important messages. "I didn't notice the Jira comment!" You can also avoid situations where you might miss comments.

JQL?

The term "JQL", which frequently appears in automation settings, is unfamiliar, right? If you are only using Jira as a task management tool, you may never use JQL, but from a management perspective, it allows detailed configuration.

"JQL" stands for "Jira Query Language" and is a unique language for searching for specific issues in Jira. I myself had difficulty finding the information I needed on the web, so here I would like to introduce JQL and how I use it myself for automation.

Narrow down projects and issue statuses

All Jira projects are in scope by default in regular executions. If you set up an automation workflow without any scope, you may unintentionally manipulate the issues of other teams. It can happen.

Our project has the following conditions for automation to be performed on a schedule.

  • The project must be yours
  • The status must be "Done" or "DROP"
project = PP20 AND status not in (Done, "DROP")

Note: In the PP20 part, enter the key set for the project.

Insert the content of the issue into the message you send to Slack

As mentioned in Automation, it is possible to connect to Slack, but without information on the issue, the person in charge who is contacted on Slack will be confused.

In our project, we create Slack messages with the following settings.

*There are overdue tickets. Please review the contents asap. * @channel
> 【<https://hogehoge.atlassian.net/browse/{{issue.key}}|{{issue.key}}>】{{issue.summary}} 

The message changes to something like this.

Actual Slack messageActual Slack message

Conclusion

This was the introduction of Jira's useful settings. I hope this provides a bit of help for both current Jira users and those considering Jira as their management tool. In order to make Agile development easier and more progressive, I look forward to leveraging the useful features of Jira.

Facebook

関連記事 | Related Posts

We are hiring!

【部長・部長候補】/プラットフォーム開発部/東京

プラットフォーム開発部 について共通サービス開発GWebサービスやモバイルアプリの開発において、必要となる共通機能=会員プラットフォームや決済プラットフォームの開発を手がけるグループです。KINTOの名前が付くサービスやTFS関連のサービスをひとつのアカウントで利用できるよう、様々な共通機能を構築することを目的としています。

【スクラッチ開発エンジニア】プラットフォームG/東京・大阪

プラットフォームグループについてAWS を中心とするインフラ設計、構築、運用などを担当しています。