103
99

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Slack + hubot + Trelloでチームのタスクを見える化しよう

Last updated at Posted at 2015-04-16

ついにTrelloが公式にSlackとLinkするようになったので、Hubotを使わなくてもTrelloにチケットが作成できるようになりました。ボードの切り替えなどはHubotを使ったほうが簡単にできるなど、いくつかメリットは残っています。
http://help.trello.com/article/1049-slack-app

現在CafeSnapというアプリをプロデューサー2人 + エンジニア2人で開発しています。
去年の4月にスタートしてからはSlack + GoogleDocs + Redmineなどでコミュニケーション・タスク管理をしていましたが、お互いのタスクの漏れを防ぐためにこれらのツールを試験的に使っています。

これらのツールでタスク管理を行うメリット

Slack上でタスクを作成することができるため、簡単にタスクが作成できる 

今までチャット上でやりとりしていて、そのまま流れて忘れてしまっていたタスクも下記のように気軽にストックできます。
例えば、チャット上で下記のように打つとタスクが作成されます。
スクリーンショット 2015-04-16 18.27.58.png

Trelloの見た目がわかりやすい

担当者のアイコンが表示されたり、操作方法がシンプルです。エンジニア以外の人も気軽に利用できます。

スクリーンショット 2015-04-16 18.15.29.png

リマインドも自動化することによって、相手に催促したりするストレスから開放される

hubotでリマインドし、それに対して一言返すとかルールを作るより良いかもしれません。それによって、「あれってやった?」「いや、まだ。。」みたいなやりとりを無くすことができます。

hubotの準備

下記を参考にheroku上でhubotを動かせるようにします。
slackにHubotを導入(Heroku経由)

Trelloのトークンなどを取得(ここが若干面倒くさい)

Trelloはアカウントを作成し、ログインした状態で進めます。

1. 下記にアクセスし、Keyをコピーしておきます

https://trello.com/app-key
スクリーンショット 2015-04-16 18.43.24.png

2. 下記にアクセスしてAllowを押します。

https://trello.com/1/authorize?key=[取得したkey]&name=&expiration=never&response_type=token&scope=read,write
スクリーンショット 2015-04-16 18.57.21.png

3. tokenが発行されるので、メモっておく

スクリーンショット 2015-04-16 18.58.32.png

4. 下記にアクセスし、ボードのIDをメモします

ボードのIDを取得
[
    {
        name: "ボード名",
        id: "ボードのID"
    }
]

5. 下記にアクセスし、リストのIDをメモします

リストのIDを取得
[
    {
        name: "リスト名",
        id: "リストのID"
    }
]

6. Herokuに上記でメモした値を設定します

herokuコマンドが使えない場合は「heroku toolbelt」などでググって下さい。

$ heroku config:set HUBOT_TRELLO_KEY=xxxxxxxx
$ heroku config:set HUBOT_TRELLO_TOKEN=xxxxxxxx
$ heroku config:set HUBOT_TRELLO_TODO=xxxxxxxxxxx
$ heroku config

hubot/herokuの準備

1. Trelloのモジュールをインストール

インストールコマンド
$ npm install node-trello --save

2. slackに反応するscriptを追加

trello.cofee
Trello = require("node-trello")

module.exports = (robot) ->
    robot.hear /^todo (.*)/i, (msg) ->
        title = "#{msg.match[1]}"
        trello = new Trello(process.env.HUBOT_TRELLO_KEY, process.env.HUBOT_TRELLO_TOKEN)
        trello.post "/1/cards", {name: title, idList: process.env.HUBOT_TRELLO_TODO}, (err, data) ->
          if err 
            msg.send "保存に失敗しました"
            return
          msg.send "「#{title}」 をTrelloのToDoボードに保存しました"

3. herokuにpush

$ git push heroku master

まとめ

プロジェクトを進めていると、どうしても職種によってそれぞれのタスクがあり、優先度も違います。しかし、エンジニアやプロデューサーがお互いの仕事を理解しあって同じ方向に進んでいくためにも、 これらのツールを駆使しながら日々改善をしていくことが大事かなと思います。
ツールは補助的な役割ではあるものの、人が気を使う部分をbotに任せるなど上手く活用していきたいですね〜

TrelloのAPI一覧(追記中)

リストに紐づくカード一覧を取得

103
99
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
103
99

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?