エンジニアHubPowered by エン転職

若手Webエンジニアのための情報メディア

エンジニアのためのTrello徹底活用術! Pairsのエウレカが、プロジェクトの透明性を確立できた理由

ソフトウェア開発では、手法やフェーズに応じて適切にツールを使い分けることが重要です。株式会社エウレカが、主力サービスのPairs開発チームで実践しているTrelloを活用したタスク管理のノウハウや考え方を紹介します。

Trello of Pairs

初めまして。株式会社エウレカのCTO Office責任者、梶原成親@kajinariです。
エウレカが目指すのは自立・自律した組織。全社でスクラム(Scrum)開発を推進し、強いチーム作りをするのが私のミッションです。

管理ツールもさまざまに使い分けていますが、スクラムに合っていると感じるのは、タスク管理ツールのTrelloです。私はもともとアトラシアンのユーザーグループで、東京代表のオーガナイザーを務めていました。Trelloは、アトラシアンが買収したのを機に使いはじめ、2017年1月から自身の開発チームにも導入しています。

本稿では、エウレカの開発現場でのTrello活用法や、Trelloを導入するチームが気を付けたいポイントを紹介します。

Pairs開発チームでのタスク管理

恋愛・婚活マッチングサービス「Pairs」では、ユーザーが理想のお相手をより自然かつスムーズに見付けられるよう、常に機能の追加や改善を続けています。

そのため開発チームでは、プロダクトバックログスプリントバックログオポチュニティバックログという3種類のバックログを使い分けています。Pairsとして実装したい機能をひとつのプロダクトバックログとして管理し、各スクラムチーム単位ではプロダクトバックログから切り出したスプリントバックログを管理しています(オポチュニティバックログについては後述します)

これは、例えば次のスライドで紹介されているものと同様です(27枚目参照)

外部委託から内製化アジャイルへの切替支援を通してわかったこと #augj

開発のフェーズに応じて管理ツールを使い分ける

ツールは基本的に、開発のフェーズに応じて使い分けています。例えば、Pairs全体(日本版)のプロダクトバックログ(案件のリスト)の管理には、アトラシアンのプロジェクト管理ツールJIRAを使用しています。

JIRAには、バーンダウンチャート生成やレポーティングなど優れた機能が数多くあり、チームを横断的に管理することにも向いています。必要なフィールドを定義することでレポートの自動化もできるため、プロダクトバックログのように大きな単位を扱うには、最適です。

ただし、機能が多い反面、複数のフィールドにさまざな情報を入れたりカスタマイズしたりしないと使いづらいことがデメリットです。一度に表示されるタイトル文字数が少なくて、ファーストビューの情報量が少ないため、クリックする手間もあります。

Trelloはスプリントバックログの管理に適している

一方、各チーム単位でのタスク管理には、カンバンを用いています。これはプロダクトバックログを、実現するためのタスクとして分解したもの(スプリントバックログ)です。

カンバンはチーム単位で、チーム内で合意できる最も使いやすいツールを使用していますが、ポストイット(ふせん)とホワイトボードを用いたリアル(物理的)なカンバンで管理しているチームと、Trelloで管理しているチームがあります。

ふせんは制約が少なく、簡単に扱うことができるものの、変更履歴が残りません。また、気を付けて保存しないと剥がれてなくなったり、汚れてしまったりすることも。リモートでは閲覧できないという課題もあります。

Trelloは、JIRAよりも簡単にカードを立てることができ、なおかつ“ふせん”のように気軽に運用できます。リアルなふせんとJIRAのちょうど中間に位置しているツールではないでしょうか。スクラム開発におけるスプリントバックログのタスク管理に最も向いているように思います。

現在、社内でTrelloを使っているのは5チームほどで、1つのチームには5~13人ほどのメンバーがいます。Trelloは、エンジニア以外のメンバーでもカードを登録・更新しやすいのも嬉しいところです。

Trelloを開発現場で生かすTips ―― 拡張機能は必須

開発現場で使っている主な拡張機能やショートカットを紹介します。

まずはチームでよく使っている拡張機能です。

Scrum for Trello

Scrum for Trello - the free Trello Scrum extension for Chrome, Firefox, and Safari

カードにストーリーポイントを与えられる拡張機能です。ポイントを見積もることで、スプリントバックログとして利用でき、バーンダウンチャートを表示させることができます(GoldまたはBusinessプランが必要)

Scrum for Trello

Card Color Titles for Trello

Card Color Titles for Trello - Chrome ウェブストア

Chromeの拡張機能です。Trelloのラベルは、デフォルトの機能では色を付けることができるだけですが、この拡張を入れることで設定した文言をラベルに表示してくれるので、可読性が段違いにアップします。

便利なショートカット

Trelloを使いこなすにはショートカットキーも欠かせません。

カードをアーカイブするC、Due Dateコマンドが起動するD、メンバーの追加アクションを行う場合のMなど、ショートカットコマンドは日常的に使っています。

ほかにも次のようなショートカットが利用できます。

ショートカット 説明
, . < > カードを違う列(Line)に移動させる
S カードを購読(Subscribe)する
W ボードメニューを開く
X すべてのフィルターを解除する

メイン画面でボタンを押すとショートカットキーが出現します。一度では全部覚えられないと思うので、暇なときなどにヘルプを見てみると良いでしょう。

小技を使いこなす

ショートカットキー以外の小技も使っています。

カードのVoteは合意形成に良く使っていますし、ラベルをフィルタリングできる機能は、打ち合わせで仕様の一覧を出すときに効率的に話し合いができます。

また、ボードに3行ほど入力すると、一度に3つのカードを作成できます。トップボタンを押すと、4つぐらい並んでいるものをトップに上げたりすることができます。

3つのカードタイトルを1つの新規カードに入力

3つのカードタイトルを1つの新規カードに入力した状態
ここで「Create 3 Cards」をクリックすると、一度に3つのカードが作成できる

Trelloを使う上で3つの注意点

会社としてTrelloを使っていく上で気を付けているのは以下の3点です。

1. ボードをオープンにし、開発チーム同士の成果を見える化する

特に気を付けていることは透明性の維持です。ボードをクローズドにするのは厳禁。良い組織を作る上で、他のチームの成果が見えない状況は健全とは言えません。

Trelloボードをプリントして可視化

Trelloボードをプリントして可視化。「ここに行けば情報が分かる」場をリアルに作ることで、開発の透明性が確保される
(Developer Summit 2017夏 発表資料「エウレカ版 強いチーム作りで実践した学びについて」より)

Slackとのインテグレーションは、チームの動きを可視化して透明性を確保するのに有効です。チャンネルは全員が通知を見られる場所に置き、新しくボードが立ったときも通知して誰でもログインできるようにするほか、管理者自身がユーザを追加する作業を割愛。Trelloのボットを使って、入りたい人が自らジョインできるようにするなど工夫しています。

また、業務では複数のボードにまたがってタスクが発生することもあります。「このボードは見られるけど、このボードは見られない」という事態が発生しないように、各ボードをチームに紐付かせて、チームにジョインしたメンバーが各自必要なボードにアクセスできるようにしています。

2. 個人vs.チームではなく、問題vs.チームという構図を作る

透明性という意味では、妨害リストもTrelloボードを利用してオープンにしています。「妨害リスト」ボードでは、仕事を進める上で妨げになっていることをカード化し、優先順位をつけて解決の方法を検討しています。

チーム全体で問題を見える化

チーム全体で問題を見えるようにし、自分事化する
(Developer Summit 2017夏 発表資料「エウレカ版 強いチーム作りで実践した学びについて」より)

チームがうまくいかないときは、何らかの問題を見過ごしているもの。まずはカードを立てて抱えている問題を可視化することが大切です。個人の課題と組織の問題を切り分け、「個人vs.チーム」ではなく「問題vs.チーム」という構図を作っています。

妨害リストを透明化して以来、メンバーのマインドセットが「個人プレーよりもチームとしての生産性を高めよう」「全体最適しよう」と良い方向に変化しました。

3. 運用ルールを細かく決めない

エウレカのチームビルディングで重要視しているのが「自己組織化」。自己組織化とは、チームメンバー自身がチームの問題を可視化して課題解決し、チーム内で意志決定ができる状態のことです。

自己組織化できているチームに、細かな運用ルールは必要ありません。「自分がチームのカードを動かす際は、レビューを終えた段階でDoneする」など、複数人で運用するための最低限のルールだけ決めてもらっています。このルールはカードに記し、ボードの左端に「このボードの使い方」という列を作ってまとめます。

タイトルを一目見れば分かるように「何のためのボードか」「カードを追加するときに何をするか」を明記。さらにボードに紐付くSlackのチャンネル名も記し、Slackチャンネルにはインビテーション用のURLを貼って、TrelloとSlackを相互を行き来できるようにしています。同様にチームで使っているアトラシアンの情報共有ツールConfluenceにもリンクを貼っています。

Trelloを有効活用したオフィス移転プロジェクト〜起案者とプロダクトオーナーが直接議論する

開発現場とは少し離れますが、Trelloをうまく使って計画を進められたのがオフィス移転プロジェクトです。

当初、Googleフォームを使ってアンケート形式で進めようとしました。しかしフォームに入力した後に確認作業が必要になることや、担当者間の情報のやり取りが増えて著しく透明性が損なわれることを懸念し、Trelloでタスク管理を行うことにしました。

オフィス移転はメンバー全員がステークホルダーになる一大プロジェクト。「休憩スペースが欲しい」など、それぞれが実現したいことをカードに追加してもらいました。そして、起案者が「どんな人が」「誰に対して」「どういう価値を提供したいか」を整理した上で、プロダクトオーナーであるCEOとともにそれらの優先順位を決めます。

「自分の出した要望のプライオリティが低い」というようなクレームが出る前に、「なぜプライオリティが高くないか?」を話し合えれば、問題は起こりません。

たとえば、「ビーコンを配置し、何階に誰がいるかを一目でわかるようにしたい」という案があり、これに対して「ビーコンの配布がネックになっているため、今回は難しい」と伝える場面がありました。そのときも、起案した人とプロダクトオーナーがTrello上で直接やり取りを行い、決定の理由や過程を可視化。起案した人にも納得してもらうことができました。

社員として、卓球台がほしい

また、コミュニケーションの問題として「誰に対して」「どういう価値を提供したいのか」を伝える際に、プロダクトオーナーの意向が開発チームに伝わらないケースも多々あります。そうした問題を解決するためにTrelloなどのツールを活用し、プロダクトオーナーと開発者が直接コミュニケーションをとれる場を作ることが有効だと考えています。

オポチュニティバックログも今後はTrelloで管理

社内では現在「こういう機能があったらいいな」という気付き(オポチュニティバックログ)を、Workplace by Facebookという企業内SNSで共有しており、アイデアを思いついた段階で登録することにしています。気軽に記録できるため、優れたアイデアを残しやすい反面、責任者や検討タイミング、実装の優先度を検討できないという問題点もありました。

これを戦略的に活用するため、Trelloに移行したいと考えています。カンバンを使って管理することで優先度が検討され、さらにどのチームが担当するかなども把握できるようになり、アイデアをプロダクトバックログ化し、実際にリリースするまでのサイクルに繋げることができます。

メンバーの頭の中にだけあるアイデアをきちんと見える化し、仮説検証を行うことで、Pairs会員のみなさまに新たな価値を提供し続けていきたいです。

執筆者プロフィール

梶原成親(かじはら・なりちか/@kajinari

kajinari
楽天株式会社にて、開発環境および生産性を向上させるプロダクトのプロダクトオーナーを経験。スクラムでの開発および運用体制を確立する。2014年、株式会社リクルートライフスタイルに入社。HOT PEPPER Beautyの開発責任者として参画。SIer主導のレガシーな開発チームから自立させ、持続的に成長できるチームへ変革させる。
2016年、株式会社エウレカに入社。Webサービス開発で培ったメソッド・考え方を使って、モダンな社内ITをディレクションしたら面白いことができるんじゃないかと参画。 現在は、開発チームのチームビルディングを担当し、チーム支援を行っている。 その他には、モダンな情報システム担当、エンジニア採用、技術広報などエウレカ全社員を陰ながら支える仕事を実施している。主な登壇歴に、デブサミ2017、デブサミ2017夏、Rakuten Technology Conference 2012など。