ボットがプルリクエストのレビューアを決めたらチームが幸せになった話

children-win-success-video-game-play-happy

ヌーラボアカウントチームでは、プルリクエストのレビューしてもらう人をバックログのwebhookとAPIを使ってボットから自動で割り当てるようにしています。

これを始めてから、プルリクエストが楽しくなった、今までちゃんとタッチしていなかった箇所を見ることができた、長年の腰痛が治ったなどチームメンバーから喜びの声が届いています。

このレビューアの自動割り当てにチームが良い影響を受けたので、このことについて少しお話ししたいと思います。

経緯

この取り組みを始めることになったきっかけは、振り返りの際にレビューが仕様に詳しいメンバーに集中しがちでレビューに多くの時間を取られているという問題が上がった事でした。

できるだけ特定の人に集中しないようにレビューしてくれる人を指定しようと決めたのですが、いちいち状況見ながら考えながらやるのは面倒だという話になり、ボットに決めてもらうことにしました。

使い方

使い方は簡単、担当者を指定せずにプルリクエストを作成するだけです。

あとはプルリクエスト作成のwebhookを受け取ったボットが、レビューアを決めて担当者の欄を更新してくれます。

create_pr5担当者を空にしておくだけで

create_pr2ボットがレビューアを決めてくれます

また、レビューアになった人が諸事情によりレビューできなくなったといったときのために、レビューアを他の人へ割り当て直すこともできるようにしています。

create_pr3「reassign」とコメントすると…

create_pr4レビューアを別のメンバーに変えてくれます!

あえてレビューアを指定したい場合のために、プルリクエストの担当者を設定している場合はボットから割り当てしないようにするなど、できるだけ不便だと感じないようにしています。

ボットに使用しているコードはGistにまとめています。

効果

振り返りの翌日から運用を始めましたが、様々な効果を体感しています。

  • 今までタッチしてこなかった箇所も見れて、理解が深まった。
  • チームに参加して間もないメンバーの理解が深まった。
  • プルリクエストを出すのが楽しくなった(わくわくする)。
  • プルリクエストを受けるのが楽しくなった(ドキドキする)。
  • 拠点間での会話が増えた。(ヌーラボアカウントチームは福岡と東京にメンバーが分かれています)

簡単な改善でしたが、当初の目的(レビューの負担を減らす)の他にも多くの効果がありました。特に楽しくなった、会話が増えたといった開発以外の部分に影響があったことは意外でした。

今後

割り当てられた人が忙しい場合には他の誰かに再び割り当てられるようにする機能を用意するなど、無理のない運用をできるようにしていますが、今後もメンテナンスしていきこの取り組みを続けられるようにしていこうと思います。

みなさんもトライしてみてください!

 


ヌーラボではコードレビューしてみたい!というエンジニアを募集しています

Photo via Visual Hunt

より良いチームワークを生み出す

チームの創造力を高めるコラボレーションツール

製品をみる