虎の穴開発室ブログ

虎の穴ラボ株式会社所属のエンジニアが書く技術ブログです

MENU

Trelloを使った自動タスク管理

こんにちは。虎の穴ラボのH.Hです。

この記事は「虎の穴ラボ夏のアドベントカレンダー」22日目の記事です。
21日目はnsdさんによる「スプリントレトロスペクティブの話~ふりかえってみよう~」が投稿されました。

toranoana-lab.hatenablog.com

23日目はH.Kさんによる「チームを円滑に回せ!リモートワークでの情報開示のススメ」が投稿されます。
こちらもぜひご覧ください。

はじめに

昨日投稿されたnsdさんのブログで書かれている通り、虎の穴ラボではそれぞれのチームごとの運用に合わせた期間で区切ったスプリントを基準とした開発を行っています。
その中で日々のタスクを管理するために使用しているツールとしてTrelloを利用しています。
Trelloのデフォルトの設定の機能も優秀で、複数人での開発をおこなっていく際に各タスクについて、アサイン状況や実施状況が確認できます。
そんなTrelloについてと、Trello上で実行できる自動化の設定について紹介していこうと思います。

Trelloとは

まずはツールの紹介です。Trelloとはチームで作業する際に活用できるタスク管理のWebサービスになります。
公式ページは以下のリンクになります。

trello.com

一般的なカンバン方式のタスク管理として必要な機能が一通り揃っています。利用方法としてはプロジェクトやチームごとの大枠となるボードを作成しその中にタスクをまとめたリストを作成し、その中に個別にタスクをカードとして追加していくものです。
アイコンの表示などで視覚的にわかりやすく、また操作も簡単で初めて利用する人にも直感的でわかりやすい作りとなっています。
具体的には以下のような見た目になっています。

Trelloの問題点

ここまでTrelloの紹介と良い点を紹介してきました。
ただ使っていく上で問題となる点が無いわけではありません。
その中で一番問題となってくるのはデフォルトだと手動でさまざまなことを設定しないといけない点です。
具体的にはカードそれぞれの期限の設定や完了したかどうかのチェック、定期的に発生するカードやリストの作成、細かなところとしては複数人が関わるタスクのメンバー追加などがあります。
これらはタスク管理していく上で避けて通れない部分ですが、その反面手動でおこなっているとカードの管理できなくなり現状把握などができなくなっていくことにもなります。その結果最終的に使用をやめるということにもなりかねない事態に発展する可能性もあります。

そこで、この問題を手動から自動に変えることで解決したのでその方法を紹介していこうと思います。

Butlerとは

自動にするために使用したものはButlerというTrelloにある機能になります。
この機能はさまざまな操作や日付や時間をトリガーにして自動的に処理をおこなってくれるものになります。
トリガーとしては「特定のリストにカードを入れたら」や「毎週月曜日に」などさまざまな条件で設定することができます。
設定は画面の右上部にある、自動化のボタンからルールやボタンというメニューが表示され、リンクを押すと設定する画面を開くことができます

設定方法

設定手順は以下の通りです。今回は説明として特定の曜日にカードを追加する設定をしていこうと思います。

1.トリガーの種類を選ぶ

上の画像の左側に大まかなトリガーの分類が表示されています。
(1)Rulus・・・特定の条件を満たした場合に実行
(2)Card Button・・・カードに新しいボタンを追加して、押された場合に実行
(3)Borad Button・・・ボードに新しいボタンを追加して、押された場合に実行
(4)Calendar・・・指定した日時になった時に実行
(5)Due Date・・・カードに設定された期限が特定の条件になった時に実行

今回は曜日を指定するので、Calendarを選択します。

2.実行する細かなトリガー

1で設定したい条件を選ぶと下のような画面が表示されます。

Calendarの場合の初期状態

設定は右上の「Create Command」から実行していきます。

3.トリガーの設定

何もトリガーがない状態であれば、以下の画面が表示されるのでAdd Triggerから実行していきます。

今回は月曜日に実行するので二つ目の項目を選択します。

他にも毎日の設定や隔週、毎月1日などいくつかの条件があります。

4.実行する内容を設定

月曜日に実行する内容を決めていきます。

今回は特定のリストに新しいカードを作成していきます
設定する内容は以下の通りです。
タイトル・・・YYYY-MM-DD(実行した日付)作成のカード
作成するリスト・・・test

カードの作成する際のタイトルなどには日付などの変数が使用できます。詳しくは以下のリンクからご確認ください。

support.atlassian.com

設定が完了したら右の+ボタンを押して右上のSaveボタンを押します。
登録が成功すると下のような表示になります。

作成したものが想定通り動くかどうか試す場合は、ロケットのマークを押すと即時実行されます。

実行結果は以下の通りです。7/22に実行したので2022-07-22作成のカードが作られています。

実行結果

実際に作成した設定

ここからは個別に問題点としてあげた内容を自動化で解決していこうと思います。

(1)カードそれぞれの期限の設定や完了したかどうかのチェック
問題点

1 その日終わる予定のカードに終了日の設定をしておかないと終わらせる予定だったのかが判断できなくなる。
2 特定の日に終わらせるタスクにリストを作っても、見るタイミングによってその日終わるのか終わらずに残っているか判断できない。
3 期限を設定したカードは期限切れになると赤く表示されるが、解除するためには完了のためのチェック作業が必要になる。

問題点1および2の解決方法

特定のリストにカードが移動したらその日を期限として設定する

設定は以下の通りです。
トリガーの種類・・・Rules
トリガーの条件・・・本日終了のリストにカードが入れられた場合
実行処理・・・期限を当日で設定する

設定結果

実行した場合

問題点3の解決方法

完了したら移動させるリストを作成し、カードがリストに入ってきたら完了にする。
設定は以下の通りです。
トリガーの種類・・・Rules
トリガーの条件・・・完了のリストにカードが入れられた場合
実行処理・・・期限にチェックを入れる

設定した結果はこちらになります。

実行すると以下のようになります。

(2)定期的に発生するカードの作成
問題点

定期的行う作業のカードの作成の作業時間がかかる

解決策

定期的に実行するカートは自動生成させる。
設定は以下の通りです。
トリガーの種類・・・Calendar
トリガーの条件・・・特定に日時や曜日
実行処理・・・カードを作成

今回は「yyyy-mm-dd(実行した日付)に作成したカード」というタイトルで作業予定というリストに作成します。

設定した結果はこちらになります。

実行すると以下のようにカードが新しく作成されます。

(3)定期的に発生するリストの作成
問題点

定期的行う作業のリストの作成の作業時間がかかる

解決策

カード同様にリストを自動生成する。
設定は以下の通りです。
トリガーの種類・・・Calendar
トリガーの条件・・・特定に日時や曜日
実行処理・・・リストを作成

今回は「yyyy-mm-ddに作成したリスト」というタイトルでリストを金曜日の午前10時に作成します。
ただし、リストの場合は事前にカードを整理するために作成する可能性も考慮して実行した日の次の平日(月曜〜金曜)の日付を設定するようにします。 月曜日の場合は火曜日、金曜日の場合は次の月曜日の日付をつけると考えていただければ問題ありません。

設定した結果はこちらになります。

Trelloの変数の一部には接頭語をつけて、前日や次の日などの日付を取得できます。詳しくは前述の変数一覧のページの「Date variables」をご確認ください。
また実行する時間を午前10時にしているのはタイトルに使用しているisodateという変数が日本のタイムゾーンではなく9時間ずれた日時が取得されるため、取得できる日付が日本の日付と一致させるために午前9時以降で実行する必要があるためです。具体的な実行時間が見つけられませんでしたが、いくつか試したところカレンダーの曜日指定で実行すると午前4時前後に実行されていること確認しました。そのため、曜日指定だけで実行すると想定した日付が取得できない可能性があるため時間を指定して作成するようにしています。

(4)複数メンバーをカードに登録するなど不定期だが頻繁に発生する作業
問題点

同一作業を何度も行う必要が出てくるため、作業時間が増える。
ただし全てのカード作成時などには必要ないため、個別に実行するか判断が必要になる。

解決策

カードに作業を実行するボタンを作成する。
設定は以下の通りです。
トリガーの種類・・・Card Button
実行処理・・・メンバーを追加する

設定が完了すると、ボードのカードにメンバー追加というボタンが表示されます。
このボタンを押すことで、複数人のメンバーが関わるカードに一括でメンバー追加することができます。

まとめ

今回はタスク管理に役立つツールTrelloと自動化の機能であるButlerについて紹介しました。タスク管理する上でどうしても煩雑になりがちな部分を自動化していくことで時間の短縮が行えたり、変更の漏れなどを無くしていくことができるようになります。さまざまな設定が可能なので、一度何ができるのかを見てみるのも良いと思います。


P.S.

採用情報
虎の穴ラボではエンジニアを含めさまざまな職種の採用をおこなっております。
興味のある方はぜひ下記のリンク先の内容をご覧ください。
■募集職種
yumenosora.co.jp