api
Trello
スクラム

TrelloのAPIを活用してプロダクトバックログを管理しやすくしようと調べてみました。

Trello、便利ですよね!

タスク管理ツール、Trello。
アジャイル開発におけるカンバンとして、あるいはチームのタスクと状況の見える化ツールとして、活用されている方も多いと思います。
私自身も、仕事において複数のボードを使いつつ、さらには個人タスクの管理にも利用しています。
拡張機能も色々とあり、カスタマイズしてより便利に活用できますよね!

Trelloをスクラム開発で使う場合に困ったこと

スクラム開発において、プロダクトバックログを定義し、それをTrelloボードにおけるカードとして登録し、開発を進めています。
ただし、そこで迷うことがありました。定義したプロダクトバックログとカードの行き来の仕方です。

  • プロダクトバックログ ⇒ カード
    • ユーザーストーリーマッピングなどの手法で洗い出したプロダクトバックログをカードに1つ1つ登録するのは大変。かつ、バックログの粒度や優先順位について、リスト上では構造的に把握しずらい。
  • カード ⇒ プロダクトバックログ
    • ボード毎にjsonやExcelファイルでエクスポートすることはできます。ですが、特定の項目のみとなり、カスタム項目については相互変換することができません。

実現したいカタチ

プロダクトバックログ ⇔ Trello にて、それぞれの役割で担う要素、項目について
相互で取得できる状態であること。かつ、相互のマージに人力の手間が極力かからないこと。

もう少し細かく書くと、

  • Trelloだけでプロダクトバックログの管理はつらい
  • 外部で作成したものを取り出して、自動でカード登録できないか?
    • ただし、外部の方が正本でメンテナンスをそこでするだけ、であればTrelloを使う意味がない
  • 初回は外部からカードに登録が楽にできて、その後カードをメンテしつつ開発を進め、状況・結果をきちんと外部に反映できる形で取得できる、というのがしあわせになれそう

APIでどこまでできるのか、調べてみた。

実現したいことがどのように実現できるかを調べてみたところ、
APIが公開されていたので、試してみました。

API実行用のキーとトークンを発行

https://trello.com/app-key にて apikey / token を発行する。

色々試してみる。

https://developers.trello.com/reference/
ここに丁寧なリファレンスがあり、実際に試すこともできます。
ユーザーIDをスタートとして、ボードID、リストID、カードIDを取得して
色々な処理要求が行えます。

ここまでのまとめ

  • APIを使うことで簡単にカードの登録や更新ができる
  • Pythonなどでツールを作成することで
    • 外部で作成したもの(例:CSVファイルなどの構造体)より、ボードへの一括登録が可能。
    • 項目のマージも可能(作りこめば)
  • ただし、API実行には、先にボードやリストを作成し、そのIDに対して実行が必要

ということで、管理項目や運用フローが定まっていれば、
Import / Export ツールを作ることで実現したいカタチに近づけられそうです。